diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000..e69de29bb diff --git a/404.html b/404.html new file mode 100644 index 000000000..6e2f042fb --- /dev/null +++ b/404.html @@ -0,0 +1,3560 @@ + + + + + + + + + + + + + + + + + + OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ +

404 - Not found

+ +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 000000000..1cf13b9f9 Binary files /dev/null and b/assets/images/favicon.png differ diff --git a/assets/javascripts/bundle.51d95adb.min.js b/assets/javascripts/bundle.51d95adb.min.js new file mode 100644 index 000000000..b20ec6835 --- /dev/null +++ b/assets/javascripts/bundle.51d95adb.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var Hi=Object.create;var xr=Object.defineProperty;var Pi=Object.getOwnPropertyDescriptor;var $i=Object.getOwnPropertyNames,kt=Object.getOwnPropertySymbols,Ii=Object.getPrototypeOf,Er=Object.prototype.hasOwnProperty,an=Object.prototype.propertyIsEnumerable;var on=(e,t,r)=>t in e?xr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))Er.call(t,r)&&on(e,r,t[r]);if(kt)for(var r of kt(t))an.call(t,r)&&on(e,r,t[r]);return e};var sn=(e,t)=>{var r={};for(var n in e)Er.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&kt)for(var n of kt(e))t.indexOf(n)<0&&an.call(e,n)&&(r[n]=e[n]);return r};var Ht=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Fi=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of $i(t))!Er.call(e,o)&&o!==r&&xr(e,o,{get:()=>t[o],enumerable:!(n=Pi(t,o))||n.enumerable});return e};var yt=(e,t,r)=>(r=e!=null?Hi(Ii(e)):{},Fi(t||!e||!e.__esModule?xr(r,"default",{value:e,enumerable:!0}):r,e));var fn=Ht((wr,cn)=>{(function(e,t){typeof wr=="object"&&typeof cn!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(wr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,a={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function s(T){return!!(T&&T!==document&&T.nodeName!=="HTML"&&T.nodeName!=="BODY"&&"classList"in T&&"contains"in T.classList)}function f(T){var Ke=T.type,We=T.tagName;return!!(We==="INPUT"&&a[Ke]&&!T.readOnly||We==="TEXTAREA"&&!T.readOnly||T.isContentEditable)}function c(T){T.classList.contains("focus-visible")||(T.classList.add("focus-visible"),T.setAttribute("data-focus-visible-added",""))}function u(T){T.hasAttribute("data-focus-visible-added")&&(T.classList.remove("focus-visible"),T.removeAttribute("data-focus-visible-added"))}function p(T){T.metaKey||T.altKey||T.ctrlKey||(s(r.activeElement)&&c(r.activeElement),n=!0)}function m(T){n=!1}function d(T){s(T.target)&&(n||f(T.target))&&c(T.target)}function h(T){s(T.target)&&(T.target.classList.contains("focus-visible")||T.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),u(T.target))}function v(T){document.visibilityState==="hidden"&&(o&&(n=!0),B())}function B(){document.addEventListener("mousemove",z),document.addEventListener("mousedown",z),document.addEventListener("mouseup",z),document.addEventListener("pointermove",z),document.addEventListener("pointerdown",z),document.addEventListener("pointerup",z),document.addEventListener("touchmove",z),document.addEventListener("touchstart",z),document.addEventListener("touchend",z)}function re(){document.removeEventListener("mousemove",z),document.removeEventListener("mousedown",z),document.removeEventListener("mouseup",z),document.removeEventListener("pointermove",z),document.removeEventListener("pointerdown",z),document.removeEventListener("pointerup",z),document.removeEventListener("touchmove",z),document.removeEventListener("touchstart",z),document.removeEventListener("touchend",z)}function z(T){T.target.nodeName&&T.target.nodeName.toLowerCase()==="html"||(n=!1,re())}document.addEventListener("keydown",p,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),B(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var un=Ht(Sr=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(c){return!1}},r=t(),n=function(c){var u={next:function(){var p=c.shift();return{done:p===void 0,value:p}}};return r&&(u[Symbol.iterator]=function(){return u}),u},o=function(c){return encodeURIComponent(c).replace(/%20/g,"+")},i=function(c){return decodeURIComponent(String(c).replace(/\+/g," "))},a=function(){var c=function(p){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof p;if(m!=="undefined")if(m==="string")p!==""&&this._fromString(p);else if(p instanceof c){var d=this;p.forEach(function(re,z){d.append(z,re)})}else if(p!==null&&m==="object")if(Object.prototype.toString.call(p)==="[object Array]")for(var h=0;hd[0]?1:0}),c._entries&&(c._entries={});for(var p=0;p1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Sr);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(f,c){typeof f!="string"&&(f=String(f)),c&&typeof c!="string"&&(c=String(c));var u=document,p;if(c&&(e.location===void 0||c!==e.location.href)){c=c.toLowerCase(),u=document.implementation.createHTMLDocument(""),p=u.createElement("base"),p.href=c,u.head.appendChild(p);try{if(p.href.indexOf(c)!==0)throw new Error(p.href)}catch(T){throw new Error("URL unable to set base "+c+" due to "+T)}}var m=u.createElement("a");m.href=f,p&&(u.body.appendChild(m),m.href=m.href);var d=u.createElement("input");if(d.type="url",d.value=f,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!c)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,B=!0,re=this;["append","delete","set"].forEach(function(T){var Ke=h[T];h[T]=function(){Ke.apply(h,arguments),v&&(B=!1,re.search=h.toString(),B=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var z=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==z&&(z=this.search,B&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},a=i.prototype,s=function(f){Object.defineProperty(a,f,{get:function(){return this._anchorElement[f]},set:function(c){this._anchorElement[f]=c},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(f){s(f)}),Object.defineProperty(a,"search",{get:function(){return this._anchorElement.search},set:function(f){this._anchorElement.search=f,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(a,{toString:{get:function(){var f=this;return function(){return f.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(f){this._anchorElement.href=f,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(f){this._anchorElement.pathname=f},enumerable:!0},origin:{get:function(){var f={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],c=this._anchorElement.port!=f&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(c?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(f){},enumerable:!0},username:{get:function(){return""},set:function(f){},enumerable:!0}}),i.createObjectURL=function(f){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(f){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Sr)});var Qr=Ht((Lt,Kr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Lt=="object"&&typeof Kr=="object"?Kr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Lt=="object"?Lt.ClipboardJS=r():t.ClipboardJS=r()})(Lt,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return ki}});var a=i(279),s=i.n(a),f=i(370),c=i.n(f),u=i(817),p=i.n(u);function m(j){try{return document.execCommand(j)}catch(O){return!1}}var d=function(O){var w=p()(O);return m("cut"),w},h=d;function v(j){var O=document.documentElement.getAttribute("dir")==="rtl",w=document.createElement("textarea");w.style.fontSize="12pt",w.style.border="0",w.style.padding="0",w.style.margin="0",w.style.position="absolute",w.style[O?"right":"left"]="-9999px";var k=window.pageYOffset||document.documentElement.scrollTop;return w.style.top="".concat(k,"px"),w.setAttribute("readonly",""),w.value=j,w}var B=function(O,w){var k=v(O);w.container.appendChild(k);var F=p()(k);return m("copy"),k.remove(),F},re=function(O){var w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},k="";return typeof O=="string"?k=B(O,w):O instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(O==null?void 0:O.type)?k=B(O.value,w):(k=p()(O),m("copy")),k},z=re;function T(j){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?T=function(w){return typeof w}:T=function(w){return w&&typeof Symbol=="function"&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":typeof w},T(j)}var Ke=function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},w=O.action,k=w===void 0?"copy":w,F=O.container,q=O.target,Le=O.text;if(k!=="copy"&&k!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&T(q)==="object"&&q.nodeType===1){if(k==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(k==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Le)return z(Le,{container:F});if(q)return k==="cut"?h(q):z(q,{container:F})},We=Ke;function Ie(j){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Ie=function(w){return typeof w}:Ie=function(w){return w&&typeof Symbol=="function"&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":typeof w},Ie(j)}function Ti(j,O){if(!(j instanceof O))throw new TypeError("Cannot call a class as a function")}function nn(j,O){for(var w=0;w0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof F.action=="function"?F.action:this.defaultAction,this.target=typeof F.target=="function"?F.target:this.defaultTarget,this.text=typeof F.text=="function"?F.text:this.defaultText,this.container=Ie(F.container)==="object"?F.container:document.body}},{key:"listenClick",value:function(F){var q=this;this.listener=c()(F,"click",function(Le){return q.onClick(Le)})}},{key:"onClick",value:function(F){var q=F.delegateTarget||F.currentTarget,Le=this.action(q)||"copy",Rt=We({action:Le,container:this.container,target:this.target(q),text:this.text(q)});this.emit(Rt?"success":"error",{action:Le,text:Rt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(F){return yr("action",F)}},{key:"defaultTarget",value:function(F){var q=yr("target",F);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(F){return yr("text",F)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(F){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return z(F,q)}},{key:"cut",value:function(F){return h(F)}},{key:"isSupported",value:function(){var F=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof F=="string"?[F]:F,Le=!!document.queryCommandSupported;return q.forEach(function(Rt){Le=Le&&!!document.queryCommandSupported(Rt)}),Le}}]),w}(s()),ki=Ri},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function a(s,f){for(;s&&s.nodeType!==o;){if(typeof s.matches=="function"&&s.matches(f))return s;s=s.parentNode}}n.exports=a},438:function(n,o,i){var a=i(828);function s(u,p,m,d,h){var v=c.apply(this,arguments);return u.addEventListener(m,v,h),{destroy:function(){u.removeEventListener(m,v,h)}}}function f(u,p,m,d,h){return typeof u.addEventListener=="function"?s.apply(null,arguments):typeof m=="function"?s.bind(null,document).apply(null,arguments):(typeof u=="string"&&(u=document.querySelectorAll(u)),Array.prototype.map.call(u,function(v){return s(v,p,m,d,h)}))}function c(u,p,m,d){return function(h){h.delegateTarget=a(h.target,p),h.delegateTarget&&d.call(u,h)}}n.exports=f},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var a=Object.prototype.toString.call(i);return i!==void 0&&(a==="[object NodeList]"||a==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var a=Object.prototype.toString.call(i);return a==="[object Function]"}},370:function(n,o,i){var a=i(879),s=i(438);function f(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!a.string(d))throw new TypeError("Second argument must be a String");if(!a.fn(h))throw new TypeError("Third argument must be a Function");if(a.node(m))return c(m,d,h);if(a.nodeList(m))return u(m,d,h);if(a.string(m))return p(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function u(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function p(m,d,h){return s(document.body,m,d,h)}n.exports=f},817:function(n){function o(i){var a;if(i.nodeName==="SELECT")i.focus(),a=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var s=i.hasAttribute("readonly");s||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),s||i.removeAttribute("readonly"),a=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var f=window.getSelection(),c=document.createRange();c.selectNodeContents(i),f.removeAllRanges(),f.addRange(c),a=f.toString()}return a}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,a,s){var f=this.e||(this.e={});return(f[i]||(f[i]=[])).push({fn:a,ctx:s}),this},once:function(i,a,s){var f=this;function c(){f.off(i,c),a.apply(s,arguments)}return c._=a,this.on(i,c,s)},emit:function(i){var a=[].slice.call(arguments,1),s=((this.e||(this.e={}))[i]||[]).slice(),f=0,c=s.length;for(f;f{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var is=/["'&<>]/;Jo.exports=as;function as(e){var t=""+e,r=is.exec(t);if(!r)return t;var n,o="",i=0,a=0;for(i=r.index;i0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],a;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(s){a={error:s}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(a)throw a.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n1||s(m,d)})})}function s(m,d){try{f(n[m](d))}catch(h){p(i[0][3],h)}}function f(m){m.value instanceof Xe?Promise.resolve(m.value.v).then(c,u):p(i[0][2],m)}function c(m){s("next",m)}function u(m){s("throw",m)}function p(m,d){m(d),i.shift(),i.length&&s(i[0][0],i[0][1])}}function mn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof xe=="function"?xe(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(a){return new Promise(function(s,f){a=e[i](a),o(s,f,a.done,a.value)})}}function o(i,a,s,f){Promise.resolve(f).then(function(c){i({value:c,done:s})},a)}}function A(e){return typeof e=="function"}function at(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var $t=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(n,o){return o+1+") "+n.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function De(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Fe=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=xe(a),f=s.next();!f.done;f=s.next()){var c=f.value;c.remove(this)}}catch(v){t={error:v}}finally{try{f&&!f.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}else a.remove(this);var u=this.initialTeardown;if(A(u))try{u()}catch(v){i=v instanceof $t?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var m=xe(p),d=m.next();!d.done;d=m.next()){var h=d.value;try{dn(h)}catch(v){i=i!=null?i:[],v instanceof $t?i=D(D([],W(i)),W(v.errors)):i.push(v)}}}catch(v){n={error:v}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new $t(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)dn(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&De(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&De(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Or=Fe.EMPTY;function It(e){return e instanceof Fe||e&&"closed"in e&&A(e.remove)&&A(e.add)&&A(e.unsubscribe)}function dn(e){A(e)?e():e.unsubscribe()}var Ae={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,o=this,i=o.hasError,a=o.isStopped,s=o.observers;return i||a?Or:(this.currentObservers=null,s.push(r),new Fe(function(){n.currentObservers=null,De(s,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,o=n.hasError,i=n.thrownError,a=n.isStopped;o?r.error(i):a&&r.complete()},t.prototype.asObservable=function(){var r=new U;return r.source=this,r},t.create=function(r,n){return new wn(r,n)},t}(U);var wn=function(e){ne(t,e);function t(r,n){var o=e.call(this)||this;return o.destination=r,o.source=n,o}return t.prototype.next=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,r)},t.prototype.error=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&o!==void 0?o:Or},t}(E);var Et={now:function(){return(Et.delegate||Date).now()},delegate:void 0};var wt=function(e){ne(t,e);function t(r,n,o){r===void 0&&(r=1/0),n===void 0&&(n=1/0),o===void 0&&(o=Et);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return t.prototype.next=function(r){var n=this,o=n.isStopped,i=n._buffer,a=n._infiniteTimeWindow,s=n._timestampProvider,f=n._windowTime;o||(i.push(r),!a&&i.push(s.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),o=this,i=o._infiniteTimeWindow,a=o._buffer,s=a.slice(),f=0;f0?e.prototype.requestAsyncId.call(this,r,n,o):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,o);var a=r.actions;n!=null&&((i=a[a.length-1])===null||i===void 0?void 0:i.id)!==n&&(ut.cancelAnimationFrame(n),r._scheduled=void 0)},t}(Ut);var On=function(e){ne(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;r=r||o.shift();do if(i=r.execute(r.state,r.delay))break;while((r=o[0])&&r.id===n&&o.shift());if(this._active=!1,i){for(;(r=o[0])&&r.id===n&&o.shift();)r.unsubscribe();throw i}},t}(Wt);var we=new On(Tn);var R=new U(function(e){return e.complete()});function Dt(e){return e&&A(e.schedule)}function kr(e){return e[e.length-1]}function Qe(e){return A(kr(e))?e.pop():void 0}function Se(e){return Dt(kr(e))?e.pop():void 0}function Vt(e,t){return typeof kr(e)=="number"?e.pop():t}var pt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function zt(e){return A(e==null?void 0:e.then)}function Nt(e){return A(e[ft])}function qt(e){return Symbol.asyncIterator&&A(e==null?void 0:e[Symbol.asyncIterator])}function Kt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function Ki(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Qt=Ki();function Yt(e){return A(e==null?void 0:e[Qt])}function Gt(e){return ln(this,arguments,function(){var r,n,o,i;return Pt(this,function(a){switch(a.label){case 0:r=e.getReader(),a.label=1;case 1:a.trys.push([1,,9,10]),a.label=2;case 2:return[4,Xe(r.read())];case 3:return n=a.sent(),o=n.value,i=n.done,i?[4,Xe(void 0)]:[3,5];case 4:return[2,a.sent()];case 5:return[4,Xe(o)];case 6:return[4,a.sent()];case 7:return a.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Bt(e){return A(e==null?void 0:e.getReader)}function $(e){if(e instanceof U)return e;if(e!=null){if(Nt(e))return Qi(e);if(pt(e))return Yi(e);if(zt(e))return Gi(e);if(qt(e))return _n(e);if(Yt(e))return Bi(e);if(Bt(e))return Ji(e)}throw Kt(e)}function Qi(e){return new U(function(t){var r=e[ft]();if(A(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Yi(e){return new U(function(t){for(var r=0;r=2;return function(n){return n.pipe(e?_(function(o,i){return e(o,i,n)}):me,Oe(1),r?He(t):zn(function(){return new Xt}))}}function Nn(){for(var e=[],t=0;t=2,!0))}function fe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new E}:t,n=e.resetOnError,o=n===void 0?!0:n,i=e.resetOnComplete,a=i===void 0?!0:i,s=e.resetOnRefCountZero,f=s===void 0?!0:s;return function(c){var u,p,m,d=0,h=!1,v=!1,B=function(){p==null||p.unsubscribe(),p=void 0},re=function(){B(),u=m=void 0,h=v=!1},z=function(){var T=u;re(),T==null||T.unsubscribe()};return g(function(T,Ke){d++,!v&&!h&&B();var We=m=m!=null?m:r();Ke.add(function(){d--,d===0&&!v&&!h&&(p=jr(z,f))}),We.subscribe(Ke),!u&&d>0&&(u=new et({next:function(Ie){return We.next(Ie)},error:function(Ie){v=!0,B(),p=jr(re,o,Ie),We.error(Ie)},complete:function(){h=!0,B(),p=jr(re,a),We.complete()}}),$(T).subscribe(u))})(c)}}function jr(e,t){for(var r=[],n=2;ne.next(document)),e}function K(e,t=document){return Array.from(t.querySelectorAll(e))}function V(e,t=document){let r=se(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function se(e,t=document){return t.querySelector(e)||void 0}function _e(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}function tr(e){return L(b(document.body,"focusin"),b(document.body,"focusout")).pipe(ke(1),l(()=>{let t=_e();return typeof t!="undefined"?e.contains(t):!1}),N(e===_e()),Y())}function Be(e){return{x:e.offsetLeft,y:e.offsetTop}}function Yn(e){return L(b(window,"load"),b(window,"resize")).pipe(Ce(0,we),l(()=>Be(e)),N(Be(e)))}function rr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return L(b(e,"scroll"),b(window,"resize")).pipe(Ce(0,we),l(()=>rr(e)),N(rr(e)))}var Bn=function(){if(typeof Map!="undefined")return Map;function e(t,r){var n=-1;return t.some(function(o,i){return o[0]===r?(n=i,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!zr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),xa?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!zr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=ya.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Jn=function(e,t){for(var r=0,n=Object.keys(t);r0},e}(),Zn=typeof WeakMap!="undefined"?new WeakMap:new Bn,eo=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=Ea.getInstance(),n=new Ra(t,r,this);Zn.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){eo.prototype[e]=function(){var t;return(t=Zn.get(this))[e].apply(t,arguments)}});var ka=function(){return typeof nr.ResizeObserver!="undefined"?nr.ResizeObserver:eo}(),to=ka;var ro=new E,Ha=I(()=>H(new to(e=>{for(let t of e)ro.next(t)}))).pipe(x(e=>L(Te,H(e)).pipe(C(()=>e.disconnect()))),J(1));function de(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ge(e){return Ha.pipe(S(t=>t.observe(e)),x(t=>ro.pipe(_(({target:r})=>r===e),C(()=>t.unobserve(e)),l(()=>de(e)))),N(de(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function ar(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var no=new E,Pa=I(()=>H(new IntersectionObserver(e=>{for(let t of e)no.next(t)},{threshold:0}))).pipe(x(e=>L(Te,H(e)).pipe(C(()=>e.disconnect()))),J(1));function sr(e){return Pa.pipe(S(t=>t.observe(e)),x(t=>no.pipe(_(({target:r})=>r===e),C(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function oo(e,t=16){return dt(e).pipe(l(({y:r})=>{let n=de(e),o=bt(e);return r>=o.height-n.height-t}),Y())}var cr={drawer:V("[data-md-toggle=drawer]"),search:V("[data-md-toggle=search]")};function io(e){return cr[e].checked}function qe(e,t){cr[e].checked!==t&&cr[e].click()}function je(e){let t=cr[e];return b(t,"change").pipe(l(()=>t.checked),N(t.checked))}function $a(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ia(){return L(b(window,"compositionstart").pipe(l(()=>!0)),b(window,"compositionend").pipe(l(()=>!1))).pipe(N(!1))}function ao(){let e=b(window,"keydown").pipe(_(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:io("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),_(({mode:t,type:r})=>{if(t==="global"){let n=_e();if(typeof n!="undefined")return!$a(n,r)}return!0}),fe());return Ia().pipe(x(t=>t?R:e))}function Me(){return new URL(location.href)}function ot(e){location.href=e.href}function so(){return new E}function co(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)co(e,r)}function M(e,t,...r){let n=document.createElement(e);if(t)for(let o of Object.keys(t))typeof t[o]!="undefined"&&(typeof t[o]!="boolean"?n.setAttribute(o,t[o]):n.setAttribute(o,""));for(let o of r)co(n,o);return n}function fr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function fo(){return location.hash.substring(1)}function uo(e){let t=M("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Fa(){return b(window,"hashchange").pipe(l(fo),N(fo()),_(e=>e.length>0),J(1))}function po(){return Fa().pipe(l(e=>se(`[id="${e}"]`)),_(e=>typeof e!="undefined"))}function Nr(e){let t=matchMedia(e);return Zt(r=>t.addListener(()=>r(t.matches))).pipe(N(t.matches))}function lo(){let e=matchMedia("print");return L(b(window,"beforeprint").pipe(l(()=>!0)),b(window,"afterprint").pipe(l(()=>!1))).pipe(N(e.matches))}function qr(e,t){return e.pipe(x(r=>r?t():R))}function ur(e,t={credentials:"same-origin"}){return ve(fetch(`${e}`,t)).pipe(ce(()=>R),x(r=>r.status!==200?Tt(()=>new Error(r.statusText)):H(r)))}function Ue(e,t){return ur(e,t).pipe(x(r=>r.json()),J(1))}function mo(e,t){let r=new DOMParser;return ur(e,t).pipe(x(n=>n.text()),l(n=>r.parseFromString(n,"text/xml")),J(1))}function pr(e){let t=M("script",{src:e});return I(()=>(document.head.appendChild(t),L(b(t,"load"),b(t,"error").pipe(x(()=>Tt(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),C(()=>document.head.removeChild(t)),Oe(1))))}function ho(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function bo(){return L(b(window,"scroll",{passive:!0}),b(window,"resize",{passive:!0})).pipe(l(ho),N(ho()))}function vo(){return{width:innerWidth,height:innerHeight}}function go(){return b(window,"resize",{passive:!0}).pipe(l(vo),N(vo()))}function yo(){return Q([bo(),go()]).pipe(l(([e,t])=>({offset:e,size:t})),J(1))}function lr(e,{viewport$:t,header$:r}){let n=t.pipe(X("size")),o=Q([n,r]).pipe(l(()=>Be(e)));return Q([r,t,o]).pipe(l(([{height:i},{offset:a,size:s},{x:f,y:c}])=>({offset:{x:a.x-f,y:a.y-c+i},size:s})))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(a=>{let s=document.createElement("script");s.src=i,s.onload=a,document.body.appendChild(s)})),Promise.resolve())}var r=class{constructor(n){this.url=n,this.onerror=null,this.onmessage=null,this.onmessageerror=null,this.m=a=>{a.source===this.w&&(a.stopImmediatePropagation(),this.dispatchEvent(new MessageEvent("message",{data:a.data})),this.onmessage&&this.onmessage(a))},this.e=(a,s,f,c,u)=>{if(s===this.url.toString()){let p=new ErrorEvent("error",{message:a,filename:s,lineno:f,colno:c,error:u});this.dispatchEvent(p),this.onerror&&this.onerror(p)}};let o=new EventTarget;this.addEventListener=o.addEventListener.bind(o),this.removeEventListener=o.removeEventListener.bind(o),this.dispatchEvent=o.dispatchEvent.bind(o);let i=document.createElement("iframe");i.width=i.height=i.frameBorder="0",document.body.appendChild(this.iframe=i),this.w.document.open(),this.w.document.write(` + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Course title

+

Prerequisites

+
    +
  • TBD
  • +
+

Preparation

+
    +
  • TBD
  • +
+

What is delivered as part of the course

+

Description: add here

+

Learning objectives

+
    +
  • add learning objectives here
  • +
+

Tutorials

+
    +
  • in person or video (link videos here as they become available)
  • +
+

Additional materials and resources

+
    +
  • TBD
  • +
+

Contributors

+
    +
  • Add contributors with ORCID here
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/contributing/index.html b/contributing/index.html new file mode 100644 index 000000000..2ba3fe37a --- /dev/null +++ b/contributing/index.html @@ -0,0 +1,3606 @@ + + + + + + + + + + + + + + + + + + + + + + + + Contribute to the course - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Contributing to OBO Semantic Engineering Tutorials

+

We rely on our readers to correct our materials and add to them - the hope is to centralise all the usual teaching materials for OBO ontology professionals in one place. Feel free to:

+
    +
  • Request new lessons (video/how-to guides) on the issue tracker
  • +
  • Make a pull request if you find errors or want to add some clarifying remarks. All files of the OBOAcademy website can be found in the docs directory. The Table of Contents is edited here.
  • +
  • Join the OBO slack space (#obo-training channel) to ask any questions (you can request access on the issue tracker)
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/courses/icbo2021/index.html b/courses/icbo2021/index.html new file mode 100644 index 000000000..3ab391a56 --- /dev/null +++ b/courses/icbo2021/index.html @@ -0,0 +1,3759 @@ + + + + + + + + + + + + + + + + + + + + + + + + ICBO 2021 Tutorial - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

ICBO Tutorial 2021

+

Wednesday, September 15, 2021

+
    +
  • 4 PM to 7 PM CEST
  • +
  • 10 AM to 1 PM EDT
  • +
  • 7 AM to 10 AM PDT
  • +
+

Goal

+

The goal of this tutorial is to provide a flavor of the OBO landscape, from the OBO Foundry organization to the ontology curators and OBO engineers that are doing the daily ontology development.

+

Organizers

+ +

Agenda

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Time CESTPresenterTopic
4:00 - 4:10pmJames OvertonWorkshop overview
4:10 - 4:20pmJames OvertonOBO Foundry Overview
4:20 - 4:30pmNicole VasilevskyControlled Vocabularies and Ontologies
4:30 - 4:50pmNicole VasilevskyUsing and Reusing Ontology Terms
4:50 - 5:25pmNicole VasilevskyA day in the life of an Ontology Curator
5:25 - 5:30pmBreak
5:30pm - 5:40pmNico MatentzogluOntology 201 Overview
5:40 - 6:15 pmJames OvertonROBOT Tutorial
6:15 - 6:35 pmNico MatentzogluODK presentation
6:35 - 6:55 pmNico MatentzogluA brief introduction into ontology QC using the OBO dashboard
6:55 - 7:00 pmJames OvertonWrap up
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/courses/icbo2022/index.html b/courses/icbo2022/index.html new file mode 100644 index 000000000..d2744a0cd --- /dev/null +++ b/courses/icbo2022/index.html @@ -0,0 +1,3801 @@ + + + + + + + + + + + + + + + + + + + + + + + + ICBO 2022 Tutorial - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

ICBO OBO Tutorial 2022: Using and Reusing Ontologies

+

September 26, 2022, 9:00 am – 12:30 pm ET

+ +

We'd love any feedback on this tutorial via this short survey.

+

+

Overview

+

The Open Biological and Biomedical Ontologies (OBO) community includes hundreds of open source scientific ontology projects, committed to shared principles and practices for interoperability and FAIR data. An OBO tutorial has been a regular feature of ICBO for a decade, introducing new and experienced ontology users and developers to ontologies in general, and to current OBO tools and techniques specifically. While ICBO attracts many ontology experts, it also includes an audience of ontology beginners, and of ontology users looking to become ontology developers or to further refine their skills. Our OBO tutorial will help beginner and intermediate ontology users with a combination of theory and hands-on practice.

+

For ICBO 2022 we will host a half-day OBO tutorial consisting of two parts, with a unifying theme of ontology term reuse.

+

The first part of our tutorial will be introductory, aimed at an audience that is new to ontologies and to the OBO Foundry. We will introduce OBO, its community, principles, resources, and best practices. We will finish the first part with a hands-on lesson in basic tools: ontology browsers, how to contribute to ontologies via GitHub (creating issues and making Pull Requests), and the Protege ontology editor.

+

The second part will build on the first, addressing an audience that is familiar with ontologies and OBO, and wants to make better use of OBO workflows and tools in their own projects. The focus will be on making best use of OBO community open source software. We will introduce ROBOT, the command-line tool and library for automating ontology development tasks. We will show how the Ontology Development Kit (ODK) is used to standardize ontology projects with a wide range of best practices. The special emphasis of this year's tutorial will be ontology reuse, and specifically on how ROBOT and ODK can be used to manage imports from other ontologies and overcome a number of challenges to term reuse.

+

This material for this year's OBO Tutorial will build on the content here in the OBO Academy. The OBO Academy offers free, open, online resources with self paced learning materials covering various aspects of ontology development and curation and OBO. Participants are encouraged to continue their learning using this OBO Academy website, and contribute to improving the OBO documentation.

+

As an outcome of this workshop, we expect that new ontologists will have a clearer understanding of why we need and use ontologies, how to find ontology terms and contribute to ontologies and make basic edits using Protege. Our more advanced participants should be able to apply OBO tools and workflows to their own ontology development practices.

+

+

Organizers

+ +

+

Agenda

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TimeTopicPresenter
09:00 am ETIntroduction to OBO, its community, principles, resources, and best practicesJames Overton
09:20 am ETHands-on lesson in basic tools: see details belowNicole Vasilevsky
10:15 am ETCoffee break
10:30 am ETIntroduction to ROBOTBecky Jackson
11:30 pm ETIntroduction to the Ontology Development Kit (ODK) and Core WorkflowsNico Matentzoglu
12:15 pm ETHow to be an open science ontologist (Slides are here)Nico Matentzoglu
+

Hands on lesson in basic tools

+

Instructor: Nicole Vasilevsky

+

Outline

+
    +
  1. Protege ontology editor +
  2. +
  3. How to contribute to ontologies via GitHub +
  4. +
+

Example: We will work on this ticket.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/courses/icbo2023/index.html b/courses/icbo2023/index.html new file mode 100644 index 000000000..78f979786 --- /dev/null +++ b/courses/icbo2023/index.html @@ -0,0 +1,3809 @@ + + + + + + + + + + + + + + + + + + + + + + + + ICBO 2023 Tutorial - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

ICBO OBO Tutorial 2023: Using and Reusing Ontologies

+

Conference website: https://icbo-conference.github.io/icbo2023/

+

ICBO Workshops details: https://www.icbo2023.ncor-brasil.org/program.html#workshops

+

Date: August 28, 2023 13:30-15:00 (Part 1) and 15:30-15:45 (Part 2)

+ +

+

Overview

+

The Open Biological and Biomedical Ontologies (OBO) community includes hundreds of open source scientific ontology projects, +committed to shared principles and practices for interoperability and FAIR data. An OBO tutorial has been a regular feature of ICBO for a decade, introducing new and experienced ontology users and developers to ontologies in general, and to current OBO tools and techniques specifically. While ICBO attracts many ontology experts, it also includes an audience of ontology beginners, and of ontology users looking to become ontology developers or to further refine their skills. Our OBO tutorial will help beginner and intermediate ontology users with a combination of theory and hands-on practice.

+

For ICBO 2023 we will host a half-day OBO tutorial consisting of two parts.

+

The first part of our tutorial will be introductory, aimed at an audience that is new to ontologies and to the OBO Foundry. +We will introduce OBO, its community, principles, resources, and best practices. +We will finish the first part with a hands-on lesson in basic tools: ontology browsers, how to contribute to ontologies via +GitHub (creating issues and making Pull Requests), and the Protege ontology editor.

+

The second part will build on the first, addressing an audience that is familiar with ontologies and OBO, and wants to make better use of +OBO workflows and tools in their own projects.

+

This material for this year's OBO Tutorial will build on the content here in the OBO Academy. +The OBO Academy offers free, open, online resources with self paced learning materials covering various aspects of ontology development and +curation and OBO. Participants are encouraged to continue their learning using this OBO Academy website, and contribute to improving the +OBO documentation.

+

+

Organizers

+ +

+

Advance preparation

+

The tutorial is designed to be 'show and tell' format, but you are welcome to install the following software on your machine in advance, if you'd like to follow along in real time:

+ +

+

Agenda

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TimeTopicPresenterDuration
13:30 pm ETWelcomeTiago Lubiana and Nico Matentzoglu5 min
13:35 pm ETIntroduction to OBO, its community, principles, resources, and best practicesDarren Natale20 min
13:55 pm ETHands-on lesson in basic toolsSabrina Toro35 min
14:30 pm ETProtege updates and new featuresDamien Goutte-Gattat15 min
14:45 pm ETOverview of OBO DashboardAnita Caron15 min
15:00 pm ETBreak15 min
15:15 pm ETIntroduction to ROBOTBecky Jackson30 min
15:45 pm ETRole of ChatGPT in OBO Ontology DevelopmentSierra Moxon15 min
16:00 pm ETHow to be an Open Science EngineerNico Matentzoglu15 min
16:15 pm ETDiscussion and Wrap upTiago Lubiana30 min
16:45 pm ETAdjourn
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/courses/monarch-obo-training/index.html b/courses/monarch-obo-training/index.html new file mode 100644 index 000000000..db5c2c664 --- /dev/null +++ b/courses/monarch-obo-training/index.html @@ -0,0 +1,4078 @@ + + + + + + + + + + + + + + + + + + + + + + + + Monarch Ontology Training - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

OBO Academy - Monarch Training Series

+

Goal

+

The goal of this course is to provide ongoing training for the OBO community. As with previous tutorials, we follow the flipped classroom concept: as organisers, we provide you with materials to look at, and you will work through the materials on your own. During our biweekly meeting, we will answer your questions, provide you with additional demonstrations where needed and go into depth wherever you as a student are curious to learn more. This means that this course can only work if you are actually putting in the time to preparing the materials. That said, we nevertheless welcome anyone to just lurk or ask related questions.

+

You (Students)

+
    +
  • Read the "Getting started" guide
  • +
  • Check which lessons interest you in the upcoming schedule - just participate in the ones you care about
  • +
  • Prepare the lessons (between 3 and 7 hours of preparation time)
  • +
  • Prepare questions for the revision sessions (without questions, the revision sessions will be silent and awkward)
  • +
  • Make detailed issues on our issue tracker when materials are broken, hard to follow or need more details - that is really important as we rely on you to help to improve our materials continuously.
  • +
  • Request new course units from us using the issue tracker.
  • +
+

We (Tutors and Organisers)

+
    +
  • Nicole Vasilevsky, Critical Path Institute
  • +
  • Nico Matentzoglu, Semanticly, Athens, Greece
  • +
  • Sabrina Toro, University of Colorado Anschutz Medical Campus
  • +
  • Sarah Gehrke, University of Colorado Anschutz Medical Campus
  • +
  • Prepare the materials for each lesson and provide schedules
  • +
  • Build new training materials where needed
  • +
  • Organise the course and rooms
  • +
+

Schedule

+

Note: this is tentative and subject to change

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DateLessonNotesRecordings
2023/10/03Units modelling in and around OBOJames Overton
2023/09/19Improving ontology interoperability with BiomappingsCharlie Hoyt
2023/09/05Modern prefix management with Bioregistry and curiesCharlie Hoyt
2023/08/22How to determine if two entities are the same?Nico(subject open for debate)
2023/08/08Cancelled: Summer break
July 2023Cancelled: Summer break
2023/06/27Cancelled
2023/06/13Modelling with Subclass and Equivalent class statementsTutorial by Henriette Harmseslides
2023/05/30First steps with ChatGPT for semantic engineers and curatorsLed by Sierra Moxon and Nico MatentzogluN/A
2023/05/16Cancelled (Monarch/C-Path workshop)
2023/05/02Cancelled (No meeting week)
2023/04/18Overview of Protege 5.6 - the latest featuresTutorial by Damien Goutte-Gattat (slides)Here
2023/04/04Introduction to ExomiserTutorial by Valentina, Yasemin and Carlo from QMUL.Here
2023/03/21Introduction to WikidataTutorial by experts in the field Andra Waagmeester and Tiago LubianaHere
2023/03/07OAK for the Ontology Engineering communityTutorial by Chris MungallHere
2023/02/21OBO Academy ClinicBring your ontology issues and questions to discuss with Sabrina and Nico! Attend the Ontology Summit Seminars instead!
2023/02/07Querying the Monarch KG using Neo4JTutorial by Kevin SchaperHere
2023/01/24OBO Academy ClinicBring your ontology issues and questions to discuss with Sabrina and Nico!
2023/01/10Modeling with taxon constraintsTutorial by Jim BalhoffHere
2022/12/27No MeetingEnjoy the Holidays!
2022/12/13Introduction to Semantic Entity MatchingSlidesHere
2022/11/29OBO Academy hackathonWork on open tickets together.
2022/11/15Contributing to OBO ontologies - Part 2Here
2022/11/01Contributing to OBO ontologies - Part 1Here
2022/10/18Introduction to Medical Action Ontology (MAxO)Here
2022/10/04No meeting - ISB virtual conference: register here
2022/09/20How to be an open science ontologistHere
2022/09/06Pull Requests: Part 2Here
2022/07/26Pull Requests: Part 1Here
2022/07/12Basic introduction to the CLI: Part 2Due to intermitent connection issues, the first few minutes of this recording are not included. Refer to the Tutorial link for the initial directions.Here
2022/06/28Basic introduction to the CLI: Part 1Here
2022/06/14Application/project ontologiesHere
2022/05/31Contributing to ontologies: annotation propertiesHere
2022/05/17Introduction to managing mappings with SSSOMHere
2022/05/03No meeting
2022/04/19Disjointness and UnsatisfiabilityHere
2022/04/05No meeting
2022/03/22Creating an ontology from scratchHere
2022/03/08Obsoletions in OBO ontologiesReview Obsoleting an Existing Ontology Term and Merging Ontology Terms. Slides are here.Here
2022/02/22SPARQL for OBO ontology developmentHere
2022/02/07ODK/DOSDPsHere
2022/01/25Contributing to OBO ontologiesThis is not new content but we'll start at the beginning again with our previous lessons.Here
2022/01/11Office hours with Nicole and Sabrina - no formal lessonBring any open questions.
2021/12/14Lessons learned from troubleshooting ROBOTOpen discussion, no advance preparation is needed.
2021/11/30Semantics of object properties (including Relations Ontology)
2021/11/16SPARQL for OBO ontology developmentHere
2021/11/02Templating: DOSDPs and ROBOT
2021/10/19Ontology Design
2021/10/05Cancelled due to overlap with ISB conference
2021/09/21Ontology Pipelines with ROBOT 2
2021/09/08Migrating legacy ontology systems to ODK
2021/09/07Ontology Pipelines with ROBOT
2021/09/01Manage dynamic imports the ODK
2021/08/25Ontology Release Management with the ODKHere
2021/08/24Contributing to OBO ontologies 2Here
2021/08/17Contributing to OBO ontologies
+

Notes

+

Most of materials used by this course were developed by James Overton, Becky Jackson, Nicole Vasilevsky and Nico Matentzoglu as part of a project with the Critical Path Institute (see here). The materials are improved as part of an internal training program (onboarding and CPD) for the Phenomics First project (NIH / NHGRI #1RM1HG010860-01).

+

Thanks to Sarah Gehrke for her help with project management.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/courses/ontology-summit-2023/index.html b/courses/ontology-summit-2023/index.html new file mode 100644 index 000000000..1888dc5e8 --- /dev/null +++ b/courses/ontology-summit-2023/index.html @@ -0,0 +1,3726 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Summit 2023 - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Summit 2023

+

This course unit only covers the OBO part of the Ontology Summit 2023, for a full overview see https://ontologforum.org/index.php/OntologySummit2023.

+

Goal

+

Giving a broad overview of the key OBO methodologies and tools to the general ontology community.

+

Tutors

+ +

Schedule

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DateLessonTutorsNotes
2023/01/25Introduction to COBChris MungallSlides
2023/02/01Introduction to ROBOT and OAKJames Overton and Chris Mungall
2023/02/08Managing the Ontology Life Cycle with the Ontology Development KitAnita Caron, Damien Goutte-Gattat, Philip Stroemert, Nicolas Matentzoglu
2023/02/15Using Dashboards to monitor OBO ontologiesCharlie Hoyt, Nicolas Matentzoglu, Anita Caron
2023/02/02Using OBO Ontologies: Ubergraph and other applicationsJim Balhoff
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/annotation-properties/index.html b/explanation/annotation-properties/index.html new file mode 100644 index 000000000..0b65ea916 --- /dev/null +++ b/explanation/annotation-properties/index.html @@ -0,0 +1,3775 @@ + + + + + + + + + + + + + + + + + + + + + + + + Introduction to Annotation Properties - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Contributing to ontologies: annotation properties

+

Editors: Sabrina Toro (@sabrinatoro), Nicolas Matentzoglu (@matentzn)
+Examples with images can be found here.

+

What are annotation properties?

+

An entity such as an individual, a class, or a property can have annotations, such as labels, synonyms and definitions. An annotation property is used to link the entity to a value, which in turn can be anything from a literal (a string, number, date etc) to another entity (such as, another class).

+

Here are some examples of frequently used annotation properties: (every element in bold is an annotation property)

+

http://purl.obolibrary.org/obo/MONDO_0004975

+
    +
  • rdfs:label –> ‘Alzheimer disease’
  • +
  • oboInOwl:hasExactSynonym –> Alzheimer dementia
  • +
  • oboInOwl:hasDbXref -> NCIT:C2866
  • +
  • skos:exactMatch -> http://www.orpha.net/ORDO/Orphanet_238616
  • +
+

Some useful things to know about annotation properties

+

Annotation properties have their own IRIs, just like classes and individuals. For example, the IRI of the RDFS built in label property is http://www.w3.org/2000/01/rdf-schema#label. Other examples:

+
    +
  • oboInOwl:hasExactSynonym : http://www.geneontology.org/formats/oboInOwl#hasExactSynonym
  • +
  • oboInOwl:hasDbXref : http://www.geneontology.org/formats/oboInOwl#hasDbXref
  • +
+

Annotation properties are just like other entities (classes, individuals) and can have their own annotations. For example, the annotation propert http://purl.obolibrary.org/obo/IAO_0000232 has an rdfs:label ('curator note') and a human readable definition (IAO:0000115): 'An administrative note of use for a curator but of no use for a user'.

+

Annotation properties can be organised in a hierarchical structure.

+

For example, the annotation property 'synonym_type_property' (http://www.geneontology.org/formats/oboInOwl#SynonymTypeProperty) is the parent property of other, more specific ones (such as "abbreviation").

+

Annotation properties are (usually) used with specific type of annotation values.

+
    +
  • Literal: (one can see [type: xsd:string] in the annotation)
  • +
  • xsd:string
      +
    • e.g. 'definition' (http://purl.obolibrary.org/obo/IAO_0000115)
    • +
    +
  • +
  • xds:boolean
      +
    • e.g. 'owl:deprecated' (http://www.w3.org/2002/07/owl#deprecated)
    • +
    +
  • +
  • Entity IRI :
  • +
  • Classes or individuals: e.g. 'has curation status' (http://purl.obolibrary.org/obo/IAO_0000114)
  • +
  • Arbitray URIs, e.g. links to website with the 'term tracker item' (type xsd:anyURI) (http://purl.obolibrary.org/obo/IAO_0000233) property
  • +
  • Or even other annotation properties *
      +
    • e.g. 'has_synonym_type' (http://www.geneontology.org/formats/oboInOwl#hasSynonymType)
    • +
    • e.g. 'in_subset' (http://purl.obolibrary.org/obo/IAO_0000112)
    • +
    +
  • +
+

Note: the type of annotation required for an annotation property can be defined by adding a Range + "select datatype" in the Annotation Property's Description
+e.g. : 'scheduled for obsoletion on or after' (http://purl.obolibrary.org/obo/IAO_0006012)

+
    +
  • Annotations do not affect reasoning. No matter what values you connect with your annotation properties, the reasoner will ignore it - even if it is nonsensical.
  • +
+

Annotation Property vs Data and Object Properties

+

Some annotation properties look like data properties (connecting an entity to a literal value) and others look like object properties (connecting an entity to another entity). Other than the fact that statements involving data and object properties look very different in RDF, the key difference from a user perspective is that OWL Reasoners entirely ignore triples involving annotation properties. Data and Object Properties are taken into account by the reasoner.

+

Object properties are different to annotation properties in that they:

+
    +
  • connect pairs of individuals in way that affects reasoning
  • +
  • represent relationship between classes in way that affects reasoning
  • +
  • Example property: 'has part' (http://purl.obolibrary.org/obo/BFO_0000051)
  • +
  • Object Properties can have the following property characteristics: Inverse, Symmetric, Asymmetric, Reflexive, Irreflexive, Functional, Inverse Functional, and Transitive which effect reasoning. Annotation properties cannot have such properties (or if they had, reasoners would ignore them).
  • +
+

Data properties are different to annotation properties in that they:

+
    +
  • connect individuals with literals in way that affects reasoning
  • +
  • represent relation between a class and literal in way that affects reasoning
  • +
  • You can use data properties to logically define OWL classes with data ranges. For example, you can define the class of Boomer as all people born between 1946 and 1964. If an individual would be asserted to be a Boomer, but is born earlier than 1946, the reasoner would file a complaint.
  • +
  • Example Data Property: 'hasName', 'hasPrice', 'hasCalories', 'hasSugarContent',...
  • +
  • More details on how to use Data Properties here
  • +
+

Creating new Annotation Properties

+

Note: before creating a new annotation property, it is always a good idea to check for an existing annotation property first.

+
    +
  • For example: OBO Metadata Ontology (https://www.ebi.ac.uk/ols/ontologies/omo), which could be imported
  • +
+

Detailed explanations for adding a new annotation property can be found here

+

The term "Annotation" in Ontologies and Data Curation means different things.

+

The word "annotation" is used in different contexts to mean different things. For instance, "annotation in owl" (ie annotations to an ontology term) is different from "annotation in the biocuration sense" (ie gene-to-disease, gene-to-phenotype, gene-to-function annotations). It is therefore crucial to give context when using the word "annotation".

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/existential-restrictions/index.html b/explanation/existential-restrictions/index.html new file mode 100644 index 000000000..7bb6c7284 --- /dev/null +++ b/explanation/existential-restrictions/index.html @@ -0,0 +1,3874 @@ + + + + + + + + + + + + + + + + + + + + + + + + Existential restrictions - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Existential restrictions

+

Prerequesites

+ +

Qualified existential restrictions

+

Semantics

+

Given

+
ObjectProperty: r
+Class: D
+    EquivalentTo: r some C
+Class: C
+
+

the semantics of +r some C is the set of individuals such that for each +individual x there is at least 1 individual y of type C that is linked to +x via the object property r.

+

Based on this semantics, a possible world adhering to our initial equivalence axiom may be:

+

+

In this Venn diagram we assume individuals are black dots. +Thus, our world consists of 7 individuals, +with only 2 classes, namely C and D, as well 2 object properties, namely r and q. +In this world, D and thus the class r some C, consist of only 2 individuals. D and +r some C consist of only 2 individuals because these are the only individuals linked +via object property r to at least 1 individual respectively in C.

+

Examples

+

In the following we define a pet owner as someone that owns at least 1 pet.

+
ObjectProperty: owns
+Class: PetOwner
+    EquivalentTo: owns some Pet
+Class: Pet
+
+

If we want to introduce the class DogOwner, assuming we can only use the class Pet +and the object property owns (assuming we have not defined PetOwner), we could say +that a dog owner is a subset of pet owners:

+
ObjectProperty: owns
+Class: DogOwner
+    SubClassOf: owns some Pet
+Class: Pet
+
+

In this case we use SubClassOf instead of EquivalentTo because not every pet owner +necessarily owns a dog. This is equivalent to stating:

+
ObjectProperty: owns
+Class: PetOwner
+    EquivalentTo: owns some Pet
+Class: Pet
+Class: DogOwner 
+    SubClassOf: PetOwner
+
+

Variations on existential restrictions

+

Unqualified existential restrictions

+

In the previous section we modeled a PetOwner as owns some Pet. In the expression +owns some Pet Pet is referred to as the filler of owns and more specifically +we say Pet is the owns-filler.

+

The PetOwner EquivalentTo: owns some Pet state that pet owners are those individuals +that own a pet and ignore all other owns-fillers that are not pets. How can we define +arbitrary ownership?

+
ObjectProperty: owns
+Class: Owner
+    EquivalentTo: owns some owl:Thing
+
+

Value restrictions

+

We can base restrictions on having a relation to a specific named individual, +i.e.:

+
Individual: UK
+ObjectProperty: citizenOf
+Class: UKCitizen
+    EquivalentTo: citizenOf hasValue UK
+
+

Existential restrictions on data properties

+

This far we have only considered existential restrictions based on object properties, but +it is possible to define existential restrictions based on data properties. As an example, +we all expect that persons have at least 1 name. This could be expressed as follows:

+
DataProperty: name
+Class: Person
+    SubClassOf: name some xsd:string
+
+

When to use SubClassOf vs EquivalentTo with existential restrictions

+

In our example of Person SubClassOf: name some xsd:string, why did we use SubClassOf +rather than EquivalentTo? That is, why did we not use +Person EquivalentTo: name some xsd:string? With using the EquivalentTo axiom, any +individual that has a name, will be inferred to be an instance of Person. However, +there are many things in the world that have names that are not persons. Some examples are pets, +places, regions, etc:

+

+

Compare this with, for example, DogOwner:

+
ObjectProperty: owns
+Class: Dog
+Class: DogOwner
+    EquivalentTo: owns some Dog
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/intro-to-ontologies/index.html b/explanation/intro-to-ontologies/index.html new file mode 100644 index 000000000..dd8527183 --- /dev/null +++ b/explanation/intro-to-ontologies/index.html @@ -0,0 +1,4448 @@ + + + + + + + + + + + + + + + + + + + + + + + + Introduction to Ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Introduction to ontologies

+

Based on CL editors training by David Osumi-Sutherland

+

Why do we need ontologies?

+

We face an ever-increasing deluge of biological data analysis. Ensuring that this data and analysis are Findable, Accessible, Interoperable, and Re-usable (FAIR) is a major challenge. Findability, Interoperabiltiy, and Resuability can all be enhanced by standardising metadata. Well-standardised metadata can make it easy to find data and analyses despite variations in terminology ('Clara cell' vs 'nonciliated bronchiolar secretory cell' vs 'club cell') and precision ('bronchial epithelial cell' vs 'club cell'). Understanding which entities are referred to in metadata and how they relate to the annotated material can help users work out if the data or analysis they have found is of interest to them and can aid in its re-use and interoperability with other data and analyses. For example, does an annotation of sample data with a term for breast cancer refer to the health status of the patient from which the sample was derived or that the sample itself comes from a breast cancer tumor?

+

We can't find what we're looking for

+

Given variation in terminology and precision, annotation with free text alone is not sufficient for findability. One very lightweight solution to this problem is to rely on user-generated keyword systems, combined with some method of allowing users to choose from previously used keywords. This can produce some degree of annotation alignment but also results in fragmented annotation and varying levels of precision with no clear way to relate annotations.

+

For example, trying to refer to feces, in NCBI BioSample:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
QueryRecords
Feces22,592
Faeces1,750
Ordure2
Dung19
Manure154
Excreta153
Stool22,756
Stool NOT faeces21,798
Stool NOT feces18,314
+

We don't know what we're talking about

+

Terminology alone can be ambiguous. The same term may be used for completely unrelated or vaguely analogous structures. An insect femur and an mammalian femur are neither evolutionarily related nor structurally similar. Biologists often like to use abbreviations to annotate data, but these can be extremely ambiguous. Drosophila biologists use DA1 to refer to structures in the tracheal system, musculature and nervous system. Outside of Drosophila biology it is used to refer to many other things including a rare disease, and a a neuron type in C.elegans.

+

Some extreme examples of this ambiguity come from terminological drift in fields with a long history. For example +in the male genitalia of a gasteruptiid wasp, these 5 different structures here have each been labeled "paramere" by different people, each studying different hymenopteran lineages. How do we know what "paramere" means when it is referred to?

+

+

This striking example shows that even precise context is not always sufficient for disambiguation.

+

Controlled vocabulary (CV)

+

Rather than rely on users to generate lists of re-usable keywords, we can instead pre-specify a set of terms to use in annotation. This is usually refered to a controlled vocabulary or CV.

+

Key features

+
    +
  • Terms are usually not defined
  • +
  • Relationships between the terms are usually not defined
  • +
  • Simplest form is a list
  • +
+

Example using wines

+
    +
  • Pinot noir
  • +
  • Red
  • +
  • Chardonnay
  • +
  • Chianti
  • +
  • Bordeaux
  • +
  • Riesling
  • +
+

Hierarchical controlled vocabulary

+

Definition

+

Any controlled vocabulary that is arranged in a hierarchy.

+

Key features

+
    +
  • Terms are arranged in a hierarchy, typically from general (top) to specific (bottom) with each term having only one parent.
  • +
  • Terms are usually not defined.
  • +
  • Relationships between the terms are usually not named or defined
  • +
+

Example using wines (Taxonomy of wine)

+
    +
  • Red
      +
    • Merlot
    • +
    • Zinfandel
    • +
    • Cabernet
    • +
    • Pinot Noir
    • +
    +
  • +
  • White
      +
    • Chardonnay
    • +
    • Pinot Gris
    • +
    • Riesling
    • +
    +
  • +
+

Taxonomy describes a hierarchical CV in which hierarchy equals classification. E.g., 'Merlot' is classified as a 'Red' (wine). Not all hierchical CVs are classifications. For example, anatomical atlases often have hierarchical CVs representing "parthood". The femur is a part of the leg, but it is not 'a leg'.

+

Support for grouping and varying levels of precision

+

The use of a hierachical CV in which general terms group more specific terms allows for varying precision (glial cell vs some specific subtype) and simple grouping of annotated content.

+

For example:

+

+

From hierarchical CVs to ontologies

+

Hierarchical CVs tend to increase in complexity in particular ways:

+

Synonyms

+

To support findability, terms in hierarchical CVs often need to be associated with synonyms, or cross-referenced to closely related terms inside the CV.

+

Polyhierarchy

+

CV content is often driven by requests from annotators and so expansion is not driven by any unified vision of scheme. This often leads to pressure for hierarchies to support terms having multiple parents, either reflecting multiple relationship types, or multiple types of classification. For example, an anatomical CV could reasonably put 'retinal bipolar cell' under 'retina' based on location and, at the same time, under 'bipolar neuron' and 'glutamatergic neuron' based on cell type classification.

+

Named relationships

+

Developers of hierarchical CVs often come to realise that multiple relationship types are represented in the hierarchy and that it can be useful to name these relationship for better distinction. For example, a heart glial cell is a 'type of' glial cell, but is 'part of' the heart.

+

+

What is an ontology?

+

Definition

+

Definitions of ontologies can be controversial. Rather than attempting a comprehensive definition, this tutorial will emphasise ontologies as:

+
    +
  • Classifications
  • +
  • Queryable stores of knowledge
  • +
+

Key features of well-structured ontologies:

+
    +
  • +

    Terms are arranged in a classification hierarchy

    +
  • +
  • +

    Terms are defined

    +
  • +
  • +

    Terms are richly annotated:

    +
      +
    • Textual definitions
    • +
    • References
    • +
    • Synonyms
    • +
    • Links
    • +
    • Cross-references
    • +
    +
  • +
  • +

    Relationships between terms are defined, allowing logical inference and sophisticated queries as well as graph representations.

    +
  • +
  • +

    Expressed in a knowledge representation language such as RDFS, OBO, or OWL

    +
  • +
+

Examples

+
    +
  • Gene Ontology, Uberon, Cell Ontology, EFO, SNOMED
  • +
+

Non-logical parts of ontologies

+

Terminology can be ambiguous, so text definitions, references, synonyms and images are key to helping users understand the intended meaning of a term.

+

+

Identifiers

+

Using identifiers devoid of intrinsic meaning

+

Identifiers that do not hold any inherent meaning are important to ontologies. If you ever need to change the names of your terms, you're going to need identifiers that stay the same when the term name changes.

+

For example:

+

A microglial cell is also known as: hortega cell, microglia, microgliocyte and brain resident macrophage. +In the cell ontology, it is however referred to by a unique identifier: CL:0000129 +These identifiers are short ways of referring to IRIs (e.g., CL:000129 = http://purl.obolibrary.org/obo/CL_0000129) +This IRI is a unique, resolvable identifier on the web. +A group of ontologies - loosely co-ordinated through the OBO Foundry, have standardised their IRIs (e.g. http://purl.obolibrary.org/obo/CL_0000129 - A term in the cell ontology; http://purl.oblibrary.org/obo/cl.owl - The cell ontology)

+

IRIs? URIs? URLs?

+
    +
  • URI: Unique Resource Identifier - a string of characters, following a standard specification, that unambiguously identifies a particular (web) resource.
  • +
  • IRI: Internationalised Resource Identifier - a URI that can use characters in multiple languages.
  • +
  • URL: Uniform Resource Locator - a web-resolvable URI.
  • +
+

Building scalable ontologies

+

Format

+

OBO ontologies are mostly written in OWL2 or OBO syntax. The latter is a legacy format that maps completely to OWL.

+

For a more in-depth explanation of formats (OWL, OBO, RDF etc.) refer to explainer on OWL format variants. +In the examples below we will use OWL Manchester syntax, which allows us to express formal logic in English-like sentences.

+

An ontology as a classification

+

Ontology terms refer to classes of things in the world. For example, the class of all wings.

+

Below you will see a classification of parts of the insect and how it is represented in a simple ontology.

+

+

We use a SubClassOf (or is_a in obo format) to represent that one class fully subsumes another. +For example: +OWL: hindwing SubClassOf wing +OBO: hindwing is_a wing

+

In English we might say: "a hindwing is a type of wing" or more specifically, "all instances of hindwing are instances of wing." 'Instance' here refers to a single wing of an individual fly.

+

+

In the previous section, we talked about different types of relationships. In OWL we can define specific relations (known as object properties). One of the commonest is 'part of' which you can see used below.

+

image

+

English: all (insect) legs are part of a thoracic segment +OWL: 'leg' SubClassOf part_of some thoracic segment +OBO: 'leg'; relationship: part_of thoracic segment

+

It might seem odd at first that OWL uses subClassOf here too. The key to understanding this is the concept of an anonymous class - in OWL, we can refer to classes without giving them names. In this case, the anonymous class is the class of all things that are 'part of' (some) 'thoracic segment' (in insects). A vast array of different anatomical structures are subclasses of this anonymous class, some of which, such as wings, legs, and spiracles, are visible in the diagram.

+

Note the existential quantifier some in OWL format -- it is interpreted as "there exists", "there is at least one", or "some".

+

+

The quantifier is important to the direction of relations.

+

subClassOf: +'wing' SubClassOf part_of some 'thoracic segment' is correct +'thoracic segment' SubClassOf has_part some 'wing' is incorrect as it implies all thoracic segment have wings as a part.

+

Similarly: +'claw' SubClassOf connected_to some 'tarsal segment' is correct +'tarsal segment' SubClassOf connected_to some 'claw' is incorrect as it implies all tarsal segments are connected to claws (for example, some tarsal segments are connected to other tarsal segments)

+

+

These relationships store knowledge in a queryable format. For more information about querying, please refer to guide on DL queries and SPARQL queries.

+

Scaling Ontologies

+

There are many ways to classify things. For example, a neuron can be classified by structure, electrophysiology, neurotransmitter, lineage, etc. Manually maintaining these multiple inheritances (that occur through multiple classifications) does not scale.

+

+

Problems with maintaining multiple inheritance classifications by hand

+
    +
  • +

    Doesn’t scale

    +
      +
    • +

      When adding a new class, how are human editors to know

      +
        +
      • +

        all of the relevant classifications to add?

        +
      • +
      • +

        how to rearrange the existing class hierarchy?

        +
      • +
      +
    • +
    +
  • +
  • +

    It is bad for consistency

    +
      +
    • +

      Reasons for existing classifications often opaque

      +
    • +
    • +

      Hard to check for consistency with distant superclasses

      +
    • +
    +
  • +
  • +

    Doesn’t allow for querying

    +
      +
    • A formalized ontology can be queried for classes with arbitrary sets of properties. A manual classification can not.
    • +
    +
  • +
+

Automated Classifications

+

The knowledge an ontology contains can be used to automate classification. For example:

+

English: Any sensory organ that functions in the detection of smell is an olfactory sensory organ +OWL:

+
'olfactory sensory organ'
+ EquivalentTo ‘sensory organ’
+that
+capable_of some ‘detection of smell’
+
+

If we then have an entity nose that is subClassOf sensory organ and capable_of some detection of smell, it will be automatically classified as an olfactory sensory organ.

+

+
How to interpret an 'and' or an 'or'
+

Many classes, especially in the domains of disease and phenotype, describe combinations of multiple classes - but it is very important to carefully distinguish whether this combination follows "disjunctive" logic ("or") or "conjunctive" logic ("and"). Both mean something entirely different. Usually where a class has 'and' in the label, such as 'neonatal inflammatory skin and bowel disease' (MONDO:0017411), the class follows a conjunctive logic (as expected), and should be interpreted in a way that someone that presents with this disease has both neonatal inflammatory skin disease and bowel disease at once. This class should be classified as a child of 'bowel disease' and 'neonatal inflammatory skin disease'. Note, however, that naming in many ontologies is not consistent with this logic, and you need to be careful to distinguish wether the interpretation is supposed to be conjunctive or disjunctive (i.e. "and" could actually mean "or", which is especially often the case for clinical terminologies).

+

Having asserted multiple SubClassOf axioms means that an instance of the class is a combination of all the SubClass Of statements (conjunctive interpretation, see above). For example, if 'neonatal inflammatory skin and bowel disease' is a subclass of both 'bowel disease' and 'neonatal inflammatory skin disease', then an individual with this disease has 'bowel disease' and 'neonatal inflammatory skin disease'.

+

image

+

If there were a class 'neonatal inflammatory skin or bowel disease', the intention is usually that this class follows disjunctive logic. A class following this logic would be interpreted in a way that an individual with this disease has either bowel disease or neonatal inflammatory skin disease or both. It would not be accurate to classify this class as a child of bowel disease and neonatal inflammatory skin disease. This type of class is often called a "grouping class", and is used to aggregate related diseases in a way useful to users, like "disease" and "sequelae of disease".

+

image

+

Acknowledgements

+
    +
  • David Osumi-Sutherland (original creator of slides)
  • +
  • Nicole Vasilevsky (Critical Path Institute)
  • +
  • Alex Diehl (Buffalo)
  • +
  • Nico Matentzoglu
  • +
  • Matt Brush
  • +
  • Matt Yoder
  • +
  • Carlo Toriniai
  • +
  • Simon Jupp
  • +
  • Chris Mungall (LNBL)
  • +
  • Melissa Haendal (University of Colorado Anschutz Medical Campus)
  • +
  • Jim Balhoff (RENCI)
  • +
  • James Overton - slides, ideas & discussions
  • +
  • Terry Meehan - who edited CL more than anyone
  • +
  • Helen Parkinson (EBI)
  • +
  • Michael Ashburner
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/logical-axiomatization/index.html b/explanation/logical-axiomatization/index.html new file mode 100644 index 000000000..84993d89e --- /dev/null +++ b/explanation/logical-axiomatization/index.html @@ -0,0 +1,3837 @@ + + + + + + + + + + + + + + + + + + + + + + + + Logical axiomatization of classes & use of reasoning - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Logical axiomatization of classes & use of reasoning

+

This explainer requires understanding of ontology classifications. Please see "an ontology as a classification" section of the introduction to ontologies documentation if you are unfamiliar with these concepts.

+

You can watch this video about an introduction to Logical Description.

+

What are logical axioms

+

Logical axioms are relational information about classes that are primarily aimed at machines. This is opposed to annotations like textual definitions which are primarily aimed at humans. These logical axioms allow reasoners to assist in and verify classification, lessening the development burden and enabling expressive queries.

+

What should you axiomatize?

+

Ideally, everything in the definition should be axiomatized when possible. For example, if we consider the cell type oxytocin receptor sst GABAergic cortical interneuron, which has the textual definition:

+

"An interneuron located in the cerebral cortex that expresses the oxytocin receptor. These interneurons also express somatostatin."

+

The logical axioms should then follow accordingly:

+

SubClassOf:

+
    +
  • interneuron
  • +
  • 'has soma location' some 'cerebral cortex'
  • +
  • expresses some 'oxytocin receptor'
  • +
  • expresses some somatostatin
  • +
  • 'capable of' some 'gamma-aminobutyric acid secretion, neurotransmission'
  • +
+

These logical axioms allow a reasoner to automatically classify the term. For example, through the logical axioms, we can infer that oxytocin receptor sst GABAergic cortical interneuron is a cerebral cortex GABAergic interneuron.

+

+

Axiomatizing definitions well will also allow for accurate querying. For example, if I wanted to find a neuron that expresses oxytocin receptor, having the SubClassOf axioms of interneuron and expresses some 'oxytocin receptor' will allow me to do so on DL query (see tutorial on DL query for more information about DL queries).

+

+

What should you NOT axiomatize?

+

Everything in the logical axioms must be true, (do not axiomatize things that are true to only part of the entity) +For example, the cell type chandelier pvalb GABAergic cortical interneuron is found in upper L2/3 and deep L5 of the cerebral cortex. +We do not make logical axioms for has soma location some layer 2/3 and layer 5. +Axioms with both layers would mean that a cell of that type must be in both layer 2/3 and layer 5, which is an impossibility (a cell cannot be in two seperate locations at once!). Instead we axiomatize a more general location: 'has soma location' some 'cerebral cortex'

+

Equivalent class logical definitions

+

An equivalent class axiom is an axiom that defines the class; it is a necessary and sufficient logical axiom that defines the cell type. It means that if a class B fulfils all the criteria/restrictions in the equivalent axiom of class A, class B is by definition a subclass of class A. +Equivalent classes allow the reasoner to automatically classify entities.

+

For example:

+
    +
  • chandelier cell has the equivalent class axiom interneuron and ('has characteristic' some 'chandelier cell morphology')
  • +
  • chandelier pvalb GABAergic cortical interneuron has the subclass axioms 'has characteristic' some 'chandelier cell morphology' and interneuron
  • +
  • chandelier pvalb GABAergic cortical interneuron is therefore a subclass of chandelier cell
  • +
+

Equivalent class axioms classification can be very powerful as it takes into consideration complex layers of axioms.

+

For example:

+
    +
  • primary motor cortex pyramidal cell has the equivalent class axiom 'pyramidal neuron' and ('has soma location' some 'primary motor cortex').
  • +
  • Betz cell has the axioms 'has characteristic' some 'standard pyramidal morphology' and 'has soma location' some 'primary motor cortex layer 5'
  • +
  • Betz cell are inferred to be primary motor cortex pyramidal cell through the following chain (you can see this in Protégé by pressing the ? button on inferred class):
  • +
+

+

The ability of the reasoner to infer complex classes helps identify classifications that might have been missed if done manually. However, when creating an equivalent class axiom, you must be sure that it is not overly constrictive (in which case, classes that should be classified under it gets missed) nor too loose (in which case, classes will get wrongly classified under it).

+

Example of both overly constrictive and overly loose equivalent class axiom:

+

neuron equivalent to cell and (part_of some 'central nervous system')

+
    +
  • This is overly constrictive as there are neurons outside the central nervous system (e.g. peripheral neurons).
  • +
  • This is also too loose as there are cells in the central nervous system that are not neurons (e.g. glial cells).
  • +
+

In such cases, sometimes not having an equivalent class axioms is better (like in the case of neuron), and asserting is the best way to classify a child.

+

Style guide

+

Each ontology has certain styles and conventions in how they axiomatize. This style guide is specific to OBO ontologies. We will also give reasons as to why we choose to axiomatize in the way we do. However, be aware of your local ontology's practices.

+

Respect the ontology style

+

It is important to note that ontologies have specific axiomatization styles and may apply to, for example, selecting a preferred relation. This usually reflects their use cases. For example, the Cell Ontology has a guide for what relations to use. An example of an agreement in the community is that while anatomical locations of cells are recorded using part of, neurons should be recorded with has soma location. This is to accommodate for the fact that many neurons have long reaching axons that cover multiple anatomical locations making them difficult to axiomatize using part of.

+

For example, Betz cell, a well known cell type which defines layer V of the primary motor cortex, synapses lower motor neurons or spinal interneurons (cell types that reside outside the brain). Having the axiom 'Betz cell' part_of 'cortical layer V' is wrong. In this case has soma location is used. Because of cases like these that are common in neurons, all neurons in CL should use has soma location.

+

Avoid redundant axioms

+

Do not add axioms that are not required. If a parent class already has the axiom, it should not be added to the child class too. +For example:

+
    +
  • retinal bipolar neuron is a child of bipolar neuron
  • +
  • bipolar neuron has the axiom 'has characteristic' some 'cortical bipolar morphology'
  • +
  • Therefore we do not add 'has characteristic' some 'cortical bipolar morphology' to retinal bipolar neuron
  • +
+

Axioms add lines to the ontology, resulting in larger ontologies that are harder to use. They also add redundancy, making the ontology hard to maintain as a single change in classification might require multiple edits.

+

Let the reasoner do the work

+

Asserted is_a parents do not need to be retained as entries in the 'SubClass of' section of the Description window in Protégé if the logical definition for a term results in their inference.

+

For example, cerebral cortex GABAergic interneuron has the following logical axioms:

+
Equivalent_To
+  'GABAergic interneuron' and
+  ('has soma location' some 'cerebral cortex')
+
+

We do not need to assert that it is a cerebral cortex neuron, CNS interneuron, or neuron of the forebrain as the reasoner automatically does that.

+

We avoid having asserted subclass axioms as these are redundant lines in the ontology which can result in a larger ontology, making them harder to use.

+

Good practice to let the reasoner do the work:

+
1) If you create a logical definition for your term, you should delete all redundant, asserted is_a parent relations by clicking on the X to the right of the term.
+2) If an existing term contains a logical definition and still shows an asserted is_a parent in the 'SubClass of' section, you may delete that asserted parent. Just make sure to run the Reasoner to check that the asserted parent is now replaced with the correct reasoned parent(s).
+3) Once you synchronize the Reasoner, you will see the reasoned classification of your new term, including the inferred is_a parent(s).
+4) If the inferred classification does not contain the correct parentage, or doesn't make sense, then you will need to modify the logical definition.
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/ontology-matching/index.html b/explanation/ontology-matching/index.html new file mode 100644 index 000000000..5f0b1a69b --- /dev/null +++ b/explanation/ontology-matching/index.html @@ -0,0 +1,3605 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Matching - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Matching

+

Ontology Matching: Basic Techniques

+

10 min overview of Jérôme Euzenat and Pavel Shvaiko ground-breaking Ontology Matching.

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/owl-building-blocks/index.html b/explanation/owl-building-blocks/index.html new file mode 100644 index 000000000..e6905fa1e --- /dev/null +++ b/explanation/owl-building-blocks/index.html @@ -0,0 +1,3634 @@ + + + + + + + + + + + + + + + + + + + + + + + + The logical building blocks of OWL - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

The logical building blocks of OWL

+

Here we briefly list the building blocks that are used in OWL that enable reasoning.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
OWLSemanticsExample
instance or individualA member of a set.A person called Mary or a dog called Fido.
classA set of in dividuals.The Person class consisting of persons or the Dog class consisting of dogs.
object propertyA set of pairs of individuals.The owns object property can link a pet and its owner: Mary owns Fido.
data propertyA set of pairs where each pair consists of an individual linked to a data value.The data property hasAge can link a number representing an age to an individual: hasAge(Mary, 10).
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/owl-format-variants/index.html b/explanation/owl-format-variants/index.html new file mode 100644 index 000000000..bcf822337 --- /dev/null +++ b/explanation/owl-format-variants/index.html @@ -0,0 +1,3700 @@ + + + + + + + + + + + + + + + + + + + + + + + + OWL, OBO, JSON? Base, simple, full, basic? What should you use, and why? - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

OWL, OBO, JSON? Base, simple, full, basic? What should you use, and why?

+

For reference of the more technical aspects of release artefacts, please see documentation on Release Artefacts

+

Ontologies come in different serialisations, formalisms, and variants For example, their are a full 9 (!) different release files associated with an ontology released using the default settings of the Ontology Development Kit, which causes a lot of confusion for current and prospective users.

+

Note: In the OBO Foundry pages, "variant" is currently referred to as "products", i.e. the way we use "variant" here is synonymous with with notion of "product".

+

Overview of the relevant concepts

+
    +
  • A formalism or formal language can be used to describe entities and their relationships in an ontology. The most important formalisms we have are:
  • +
  • Web Ontology Language (OWL): OWL is by far the dominant formalism in the biomedical domain due to its inference capabilities.
  • +
  • RDF(S): Is a generally weaker language than OWL, but widely used by triple stores and other SPARQL engines. RDF(S) is lacking some of the strong logical guarantees that come with OWL and should only be used in scenarios where scalability (computation time) is the primary concern.
  • +
  • OBO: OBO used to be the dominant language in the biomedical domain before the advent of OWL. I also used to have its own specific semantics associated with it. OBO semantics have since been mapped into OWL semantics, so that for all practical purposes, we consider "OBO" now a dialect of OWL, which means that when you hear 'OBO format' today, we are generally referring to the serialisation (see below), NOT the formalism. Note that when we say OBO ontologies we mean literally Open Biomedical and Biological Ontologies, and NOT Ontology in OBO format.
  • +
+

Some people like to also list SHACL and Shex as ontology languages and formalism. Formalisms define syntax (e.g. grammar rules) and semantics (what does what expression mean?). The analogue in the real world would be natural languages, like English or Greek.

+
    +
  • A format, or serialisation of a language is used to write down statements of a formal language in some way. Formats are not formalisms - they simply enable statements in a formalism to be expressed in some (usually textual) way. The most common formats in our domains are:
  • +
  • RDF/XML. This is the default serialisation language of the OWL flavours of OBO ontologies. It is a pretty ugly format, really hard to understand by most users but it has one advantage - it can be understood widely by RDF-focused tools like rdflib, OWL-focused tools like those based on the OWL API
  • +
  • OWL Functional Syntax: This is very common syntax for editing ontologies in OWL, because they look nice in diff tools such as git diff, i.e changes to ontologies in functional syntax are much easier to be reviewed. RDF/XML is not suitable for manual review, due to its verbosity and complexity.
  • +
  • OWL Manchester Syntax: This is the default language for OWL tutorials and for writing class expressions in editors such as Protege
  • +
  • OBO Format: The most easy to read of all the serialisations. In many ontologies such as Mondo and Uberon, we still use OBO as the editors format (as opposed to OWL Functional Syntax, which is more wide-spread). OBO format looks clear and beautiful in diffs such as git diffs, and therefore still continues to be wide-spread. OBO Format does not cover all of owl, and should only be used in conjunction with ontologies that stay within the limit of the OBO format specification.
  • +
  • OBO Graphs JSON: A simple JSON serialisation of ontologies. This format roughly reflects the capabilities of the OBO format, but is intended for consumption by tools. Again, it does not cover all of OWL, but it does cover the parts that are relevant in 99% of the use cases.
  • +
+

The real-world analogue of serialisation or format is the script, i.e. Latin or Cyrillic script (not quite clean analogue).

+
    +
  • A variant is a version of the ontology exported for a specific purpose. The most important variants are:
  • +
  • Edit: The variant of the ontology that is edited by ontology curators. Its sole purpose is to be used by ontology editors, and should not be used by any other application. In a ODK-style repository, the edit file is typically located hidden from view, e.g. src/ontology/cl-edit.owl.
  • +
  • Full: The ontology with all its imports merged in, and classified using a reasoner, see docs. The Full variant should be used by users that require the use of reasoners and a guarantee that all the inferences work as intended by the ontology developers. This is the default variant of most OBO ontologies.
  • +
  • Base: The axioms belonging to the ontology, excluding any axioms from imported ontologies, see docs. Base variants are used by ontology repository developers to combine the latest versions of all ontologies in a way that avoids problems due to conflicting versions. Base files should not be used by users that want to use the ontology in downstream tools, such as annotation tools or scientific databases, as they are incomplete, i.e. not fully classified.
  • +
  • Simple: A version of the ontology that only contains only a subset of the ontology (only the direct relations, see docs). The simple variant should be used by most users that build tools that use the ontology, especially when serialised as OBO graphs json. This variant should probably be avoided by power-users working with reasoners, as many of the axioms that drive reasoning are missing.
  • +
  • Basic: A variant of Simple, in that it is reduced to only a specific set of relations, such as subClassOf and partOf. Some users that require the ontology to correspond to acyclic graphs, or deliberately want to focus only on a set of core relations, will want to use this variant, see docs). The formal definition of the basic variant can be found here.
  • +
  • Other variants: Some variants are still used, like "non-classified", see docs), but should be avoided. Others like base-plus, a variant that corresponds to base + the inferred axioms, are still under development, and will be explained here when they are fully developed.
  • +
+

Best practices

+
    +
  • Tool developers developing tools that use the ontology (and do not need reasoners), such as database curation tools, web-browsers and similar, should typically use OBO graphs JSON and avoid using OBO format or any of the OWL focussed serialisations (Functional, Manchester or RDF/XML). OWL-focussed serialisations contain a huge deal of axiomatic content that make no sense to most users, and can lead to a variety of mistakes. We have seen it many times that software developers try to interpret OWL axioms somehow to extract relations. Do not do that! Work with the ontologies to ensure they provide the relationships you need in the appropriate form.
  • +
  • Tool developers building tools to work with ontologies should typically ensure that they can read and write RDF/XML - this is the most widely understood serialisation. Work with ontologies means here 'enable operations that change the content of the ontology'.
  • +
  • Tool developers building infrastructure to query across ontologies should consider using base variants - these ensure that you can always use the latest version of each ontology and avoid most of the common version clashes. It is important that such users are keenly aware of the role of OWL reasoning in such a process.
  • +
  • Many users of ontologies think they need the reasoner actually don't. Make sure you consult with an expert before building a system that relies on OWL reasoners to deliver user facing services.
  • +
  • As an ontology developer, it is great practice to provide the above variants in the common serialisations. The Ontology Development Kit provides defaults for all of these.
  • +
  • As an ontology developer, you should avoid publishing your ontology with owl:imports statements - these are easily ignored by your users and make the intended "content" of the ontology quite none-transparent.
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/subClassOf-vs-equivalentTo/index.html b/explanation/subClassOf-vs-equivalentTo/index.html new file mode 100644 index 000000000..e92a685ee --- /dev/null +++ b/explanation/subClassOf-vs-equivalentTo/index.html @@ -0,0 +1,3859 @@ + + + + + + + + + + + + + + + + + + + + + + + + SubClassOf versus EquivalentTo - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

SubClassOf vs EquivalentTo

+

Prerequisites

+

This lesson assumes you have basic knowledge wrt ontologies and OWL as explained in:

+ +

SubClassOf

+

In this section we explain the semantics of SubClassOf, give an example of using SubClassOf and provide guidance for when not to use SubClassOf.

+

Semantics

+

If we have

+
Class: C
+  SubClassOf: D
+Class: D
+
+

the semantics of it is given by the following Venn diagram:

+

+

Thus, the semantics is given by the subset relationship, stating the C is a subset of D. This means every individual +of C is necessarily an individual of D, but not every individual of D is necessarily an individual of C.

+

A concrete example

+
Class: Dog
+  SubClassOf: Pet
+Class: Pet
+
+

which as a Venn diagram will look as follows:

+

+

Guidance

+

There are at least 2 scenarios which at first glance may seem like C SubClassOf D holds, but it does not hold, or +using C EquivalentTo D may be a better option.

+
    +
  1. This is typically where C has many individuals that are in D, but there is at least 1 individual of C that is +not in D. The following Venn diagram is an example. Thus, to check whether you may be dealing with this scenario, you +can ask the following question: Is there any individual in C that is not in D? If 'yes', you are dealing with this +scanario and you should not be using C SubClassOf D.
  2. +
+

+
    +
  1. When you have determined that (1) does not hold, you may deal with the scenario where not only is every individual of +C in D, but also every individual in D is in C. This means C and D are equivalent. In the case you rather want +to make use of EquivalentTo.
  2. +
+

+

EquivalentTo

+

Semantics

+

If we have

+
Class: C
+    EquivalentTo: D
+Class: D
+
+

this means the sets C and D fit perfectly on each other, as shown in the next Venn diagram:

+

+

Note that C EquivalentTo D is shorthand for

+
Class: C
+    SubClassOf: D
+Class: D
+    SubClassOf: C
+
+

though, in general it is better to use EquivalentTo rather than the 2 SubClassOf axioms when C and D are equivalent.

+

A concrete example

+

We all probably think of humans and persons as the exact same set of individuals.

+
Class: Person
+    EquivalentTo: Human
+Class: Human
+
+

and as a Venn diagram:

+

+

Guidance

+

When do you not want to use EquivalentTo?

+
    +
  1. When there is an individual of C that is not in D.
  2. +
+

+
    +
  1. When there is an individual of D that is not in C.
  2. +
+

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/taxon-constraints-explainer/index.html b/explanation/taxon-constraints-explainer/index.html new file mode 100644 index 000000000..00e2d7dd6 --- /dev/null +++ b/explanation/taxon-constraints-explainer/index.html @@ -0,0 +1,4283 @@ + + + + + + + + + + + + + + + + + + + + + + + + What are taxon constraints? - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Guide to Taxon Restrictions

+

Tutorials

+

Monarch OBO training Tutorial

+

Modeling with Taxon Constraints

+ + +

What are taxon restrictions?

+

Taxon restrictions (or, "taxon constraints") are a formalised way to record what species a term applies to—something crucial in multi-species ontologies.

+

Even species neutral ontologies (e.g., GO) have classes that have implicit taxon restriction.

+
GO:0007595 ! Lactation - defined as “The secretion of milk by the mammary gland.”
+
+

Uses for taxon restrictions

+
    +
  1. +

    Finding inconsistencies. Taxon restrictions use terms from the NCBI Taxonomy Ontology, which asserts pairwise disjointness between sibling taxa (e.g., nothing can be both an insect and a rodent). When terms have taxon restrictions, a reasoner can check for inconsistencies.

    +

    When GO implemented taxon restrictions, they found 5874 errors!

    +
  2. +
  3. +

    Defining taxon-specific subclasses. You can define a taxon-specific subclass of a broader concept, e.g., 'human clavicle'. This allows you, for example, to assert relationships for the new term that don't apply to all instances of the broader concept:

    +
    'human clavicle' EquivalentTo ('clavicle bone' and ('in taxon' some 'Homo sapiens'))
    +'human clavicle' SubClassOf ('connected to' some sternum)
    +
    +
  4. +
  5. +

    Creating SLIMs. Use a reasoner to generate ontology subsets containing only those terms that are logically allowed within a given taxon.

    +
  6. +
  7. +

    Querying. Facet terms by taxon. E.g., in Brain Data Standards, in_taxon axioms allow faceting cell types by species. (note: there are limitations on this and may be incomplete).

    +
  8. +
+

Types of Taxon Restrictions

+

There are, in essence, three categories of taxon-specific knowledge we use across OBO ontologies. Given a class C, which could be anything from an anatomical entity to a biological process, we have the following categories:

+
    +
  1. The ALL-IN restriction: "C in_taxon T"
      +
    • "Hair is found only in Mammals"
    • +
    +
  2. +
  3. The NOT-IN restriction: "C never_in_taxon T"
      +
    • "Hair is never found in Birds"
    • +
    +
  4. +
  5. The SOME-IN restriction: "C present_in_taxon T"
      +
    • "Hair is found in Skunks"
    • +
    • "Hair is found in Whales"
    • +
    +
  6. +
+

The ALL-IN restriction: "C in_taxon T"

+
    +
  • Meaning: "All instances of C are in some instance of taxon T"
  • +
  • As this is a relation between instances, it may have been more correct to give this property a label such as "in organism".
  • +
  • Canonical logical representation: +
    C SubClassOf (in_taxon some T)
    +
  • +
  • Alternative representations: None
  • +
  • Editor guidance: Editors use the canonical logical representation in a SubClassOf axiom to add a taxon restriction, or in a simple (non-nested) EquivalentClass axiom to define a taxon-specific subclass (which will also imply the taxon restriction). When used in a SubClassOf axiom, the taxon should be as specific as possible for the maximum utility, but may still need to be quite broad, as it applies to every instance of C.
  • +
+

The NOT-IN restriction: "C SubClassOf (not (in_taxon some T))"

+
    +
  • Meaning: "No instances of C are in taxon T"
  • +
  • Canonical logical representation: +
    C SubClassOf (not (in_taxon some T))`
    +
  • +
  • Alternative representations:
      +
    • Alternative EL logical representation: C DisjointWith (in_taxon some T)
    • +
    • EL helper axiom: C SubClassOf (in_taxon some (not T))
    • +
    • Canonical shortcut: AnnotationAssertion: C never_in_taxon T # Editors use this
    • +
    +
  • +
  • Editor guidance: Editors use the canonical shortcut (annotation axiom). For never_in_taxon annotations, the taxon should be as broad as possible for the maximum utility, but it must be the case that a C is never found in any subclass of that taxon.
  • +
+

The SOME-IN restriction: "a ClassAssertion: C and in_taxon some T"

+
    +
  • Meaning: "At least one specific instance of C is in taxon T".
  • +
  • Canonical logical representation: +
    IND:a Type (C and (in_taxon some T))`
    +
  • +
  • Alternative representations:
      +
    • Generated subclass for QC purposes: C_in_T SubClassOf (C and (in_taxon some T) (C_in_T will be unsatisifiable if violates taxon constraints)
    • +
    • Canonical shortcut: AnnotationAssertion: C present_in_taxon T # Editors use this
    • +
    +
  • +
  • Editor guidance: Editors use the canonical shorcut (annotation axiom). The taxon should be as specific as possible, ideally a species.
  • +
+

How to add taxon restrictions:

+

Please see how-to guide on adding taxon restrictions

+

Using taxon restrictions for Quality Control

+

As stated above, one of the major applications for taxon restrictions in OBO is for quality control (QC), by finding logical inconsistencies. Many OBO ontologies consist of a complex web of term relationships, often crossing ontology boundaries (e.g., GO biological process terms referencing Uberon anatomical structures or CHEBI chemical entities). If particular terms are only defined to apply to certain taxa, it is critical to know that a chain of logic implies that the term must exist in some other taxon which should be impossible. Propagating taxon restrictions via logical relationships greatly expands their effectiveness (the GO term above may acquire a taxon restriction via the type of anatomical structure in which it occurs).

+

It can be helpful to think informally about how taxon restrictions propagate over the class hierarchy. It's different for all three types:

+
    +
  • ALL-IN restrictions (in_taxon) include all superclasses of the taxon, and all subclasses of the subject term: +
    %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. + graph BT; + n1(hair) ; + n2(whisker) ; + n3(Mammalia) ; + n4(Tetrapoda) ; + n2--is_a-->n1 ; + n3--is_a-->n4 ; + n1==in_taxon==>n3 ; + n1-.in_taxon.->n4 ; + n2-.in_taxon.->n3 ; + n2-.in_taxon.->n4 ; + linkStyle 0 stroke:#999 ; + linkStyle 1 stroke:#999 ; + style n1 stroke-width:4px ; + style n3 stroke-width:4px ;
  • +
  • NOT-IN restrictions (never_in_taxon) include all subclasses of the taxon, and all subclasses of the subject term: +
    %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. + graph BT; + n1(facial whisker) ; + n2(whisker) ; + n3(Homo sapiens) ; + n4(Hominidae) ; + n1--is_a-->n2 ; + n3--is_a-->n4 ; + n2==never_in_taxon==>n4 ; + n2-.never_in_taxon.->n3 ; + n1-.never_in_taxon.->n4 ; + n1-.never_in_taxon.->n3 ; + linkStyle 0 stroke:#999 ; + linkStyle 1 stroke:#999 ; + style n2 stroke-width:4px ; + style n4 stroke-width:4px ;
  • +
  • SOME-IN restrictions (present_in_taxon) include all superclasses of the taxon, and all superclasses of the subject term: +
    %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. + graph BT; + n1(hair) ; + n2(whisker) ; + n3(Felis) ; + n4(Carnivora) ; + n2--is_a-->n1 ; + n3--is_a-->n4 ; + n2==present_in_taxon==>n3 ; + n1-.present_in_taxon.->n3 ; + n2-.present_in_taxon.->n4 ; + n1-.present_in_taxon.->n4 ; + linkStyle 0 stroke:#999 ; + linkStyle 1 stroke:#999 ; + style n2 stroke-width:4px ; + style n3 stroke-width:4px ;
  • +
+

The Relation Ontology defines number of property chains for the in_taxon property. This allows taxon restrictions to propagate over other relationships. For example, the part_of o in_taxon -> in_taxon chain implies that if a muscle is part of a whisker, then the muscle must be in a mammal, but not in a human, since we know both of these things about whiskers:

+
%% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. + graph BT; + n1(hair) ; + n2(whisker) ; + n3(Mammalia) ; + n4(Homo sapiens) ; + n5(Hominidae) ; + n6(whisker muscle) ; + n2--is_a-->n1 ; + n5--is_a-->n3 ; + n4--is_a-->n5 ; + n6--part_of-->n2 ; + n1==in_taxon==>n3 ; + n2==never_in_taxon==>n5 ; + n2-.in_taxon.->n3 ; + n6-.in_taxon.->n3 ; + n6-.never_in_taxon.->n4 ; + n2-.never_in_taxon.->n4 ; + n6-.never_in_taxon.->n5 ; + linkStyle 0 stroke:#999 ; + linkStyle 1 stroke:#999 ; + linkStyle 2 stroke:#999 ; + linkStyle 3 stroke:#008080 ; + style n6 stroke-width:4px ;
+

Property chains are the most common way in which taxon restrictions propagate across ontology boundaries. For example, Gene Ontology uses various subproperties of results in developmental progression of to connect biological processes to Uberon anatomical entities. Any taxonomic restrictions which hold for the anatomical entity will propagate to the biological process via this property.

+

The graph depictions in the preceding illustrations are informal; in practice never_in_taxon and present_in_taxon annotations are translated into more complex logical constructions using the in_taxon object property, described in the next section. These logical constructs allow the OWL reasoner to determine that a class is unsatisfiable when there are conflicts between taxon restriction inferences.

+

Implementation and reasoning with taxon restrictions

+

The OWL axioms required to derive the desired entailments for taxon restrictions are somewhat more complicated than one might expect. Much of the complication is the result of workarounds to limitations dictated by the OWL EL profile. Because of the size and complexity of many of the ontologies in the OBO Library, particularly those heavily using taxon restrictions, we primarily rely on the ELK reasoner, which is fast and scalable since it implements OWL EL rather than the complete OWL language. In the following we discuss the particular kinds of axioms required in order for taxon restrictions to work with ELK, with some comments about how it could work with HermiT (which implements the complete OWL language but is much less scalable). We will focus on this example ontology:

+
%% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. + graph BT; + n1(hair) ; + n2(whisker) ; + n3(muscle) ; + n4(whisker muscle) ; + n5(whisker muscle in human) ; + n6(whisker in catfish) ; + n7(whisker in human) ; + n8(Vertebrata) ; + n9(Teleostei) ; + n10(Siluriformes) ; + n11(Tetrapoda) ; + n12(Mammalia) ; + n13(Hominidae) ; + n14(Homo sapiens) ; + n2--is_a-->n1 ; + n4--is_a-->n3 ; + n9--is_a-->n8 ; + n10--is_a-->n9 ; + n11--is_a-->n8 ; + n12--is_a-->n11 ; + n13--is_a-->n12 ; + n14--is_a-->n13 ; + n5--is_a-->n4 ; + n6--is_a-->n2 ; + n7--is_a-->n2 ; + n4--part_of-->n2 ; + n11 --disjoint_with--- n9 ; + n1==in_taxon==>n12 ; + n2==never_in_taxon==>n13 ; + n5==in_taxon==>n14 ; + n7==in_taxon==>n14 ; + n6==in_taxon==>n10 ; + linkStyle 0 stroke:#999 ; + linkStyle 1 stroke:#999 ; + linkStyle 2 stroke:#999 ; + linkStyle 3 stroke:#999 ; + linkStyle 4 stroke:#999 ; + linkStyle 5 stroke:#999 ; + linkStyle 6 stroke:#999 ; + linkStyle 7 stroke:#999 ; + linkStyle 8 stroke:#999 ; + linkStyle 9 stroke:#999 ; + linkStyle 10 stroke:#999 ; + linkStyle 11 stroke:#008080 ; + linkStyle 12 stroke:red ; + style n5 stroke-width:4px,stroke:red ; + style n6 stroke-width:4px,stroke:red ; + style n7 stroke-width:4px,stroke:red ;
+

There are three classes outlined in red which were created mistakenly; the asserted taxon for each of these conflicts with taxon restrictions in the rest of the ontology:

+
    +
  • 'whisker in human' — We expect this to be unsatisfiable since it is a subclass of 'whisker', which has a 'never in Hominidae' restriction. 'Whisker in human' is asserted to be in_taxon 'Homo sapiens', a subclass of 'Hominidae'.
  • +
  • 'whisker in catfish' — We expect this to be unsatisfiable since it is a subclass of 'whisker', and thus a subclass of 'hair'. 'Hair' has an 'only in Mammalia' restriction. 'Whisker in catfish' is asserted to be in_taxon 'Siluriformes' (catfish), which is a subclass of Teleostei and thus disjoint from 'Mammalia'.
  • +
  • 'whisker muscle in human' — We expect this to be unsatisfiable since it is a 'whisker muscle' and thus part of a 'whisker', and thus inherits the 'never in Hominidae' restriction from 'whisker' via the property chain part_of o in_taxon -> in_taxon. This conflicts with its asserted in_taxon 'Homo sapiens', a subclass of 'Hominidae'.
  • +
+

Taxon restriction modeling

+

We can start by modeling the two taxon restrictions in the ontology like so:

+
    +
  • 'hair' 'in_taxon' 'Mammalia': 'hair' SubClassOf (in_taxon some 'Mammalia')
  • +
  • 'whisker' 'never_in_taxon' 'Mammalia': 'whisker' SubClassOf (not (in_taxon some 'Hominidae'))
  • +
+

Both HermiT and ELK can derive that 'whisker in human' is unsatisfiable. This is the explanation:

+
    +
  • 'human whisker' EquivalentTo ('whisker' and (in_taxon some 'Homo sapiens'))
  • +
  • 'Homo sapiens' SubClassOf 'Hominidae'
  • +
  • 'whisker' SubClassOf (not ('in_taxon' some 'Hominidae'))
  • +
+

Unfortunately, neither reasoner detects the other two problems. We'll address the 'whisker in catfish' first. The reasoner infers that this class is in_taxon both 'Mammalia' and 'Siluriformes'. While these are disjoint classes (all sibling taxa are asserted to be disjoint in the taxonomy ontology), there is nothing in the ontology stating that something can only be in one taxon at a time. The most intuitive solution to this problem would be to assert that in_taxon is a functional property. However, due to limitations of OWL, functional properties can't be used in combination with property chains. Furthermore, functional properties aren't part of OWL EL. There is one solution that works for HermiT, but not ELK. We could add an axiom like the following to every "always in taxon" restriction:

+
    +
  • 'hair' SubClassOf (in_taxon only 'Mammalia')
  • +
+

This would be sufficient for HermiT to detect the unsatisfiability of 'whisker in catfish' (assuming taxon sibling disjointness). Unfortunately, only restrictions are not part of OWL EL. Instead of adding the only restrictions, we can generate an extra disjointness axiom for every taxon disjointness in the taxonomy ontology, e.g.:

+
    +
  • (in_taxon some 'Tetrapoda') DisjointWith (in_taxon some 'Teleostei')
  • +
+

The addition of axioms like that is sufficient to detect the unsatisfiability of 'whisker in catfish' in both HermiT and ELK. This is the explanation:

+
    +
  • 'whisker in catfish' EquivalentTo ('whisker' and (in_taxon some 'Siluriformes'))
  • +
  • 'whisker' SubClassOf 'hair'
  • +
  • 'hair' SubClassOf (in_taxon some 'Mammalia')
  • +
  • 'Mammalia' SubClassOf 'Tetrapoda'
  • +
  • 'Siluriformes' SubClassOf 'Teleostei'
  • +
  • (in_taxon some 'Teleostei') DisjointWith (in_taxon some 'Tetrapoda')
  • +
+

While we can now detect two of the unsatisfiable classes, sadly neither HermiT nor ELK yet finds 'whisker muscle in human' to be unsatisfiable, which requires handling the interaction of a "never" assertion with a property chain. If we were able to make in_taxon a functional property, HermiT should be able to detect the problem; but as we said before, OWL doesn't allow us to combine functional properties with property chains. The solution is to add even more generated disjointness axioms, one for each taxon (in combination with the extra disjointness we added in the previous case), e.g.,:

+
    +
  • (in_taxon some Hominidae) DisjointWith (in_taxon some (not Hominidae))
  • +
+

While that is sufficient for HermiT, for ELK we also need to add another axiom to the translation of each never_in_taxon assertion, e.g.,:

+
    +
  • 'whisker' SubClassOf (in_taxon some (not 'Hominidae'))
  • +
+

Now both HermiT and ELK can find 'whisker muscle in human' to be unsatisfiable. This is the explanation from ELK:

+
    +
  • 'whisker muscle in human' EquivalentTo ('whisker muscle' and (in_taxon some 'Homo sapiens'))
  • +
  • 'Homo sapiens' SubClassOf 'Hominidae'
  • +
  • 'whisker muscle' SubClassOf (part_of some 'whisker')
  • +
  • 'whisker' SubClassOf (in_taxon some ('not 'Hominidae'))
  • +
  • part_of o in_taxon SubPropertyOf in_taxon
  • +
  • (in_taxon some 'Hominidae') DisjointWith (in_taxon some (not 'Hominidae'))
  • +
+

Modeling present_in_taxon

+

The above example didn't incorporate any present_in_taxon (SOME-IN) assertions. These work much the same as ALL-IN in_taxon assertions. However, instead of stating that all instances of a given class are in a taxon (C SubClassOf (in_taxon some X)), we either state that there exists an individual of that class in that taxon, or that there is some subclass of that class whose instances are in that taxon:

+
    +
  1. +

    <generated individual IRI> Type (C and (in_taxon some X)) — violations involving this assertion will make the ontology logically inconsistent.

    +

    or

    +
  2. +
  3. +

    <generated class IRI> SubClassOf (C and (in_taxon some X)) — violations involving this assertion will make the ontology logically incoherent, i.e., a named class is unsatisfiable (here, <generated class IRI>).

    +
  4. +
+

Incoherency is easier to debug than inconsistency, so option 2 is the default expansion for present_in_taxon.

+

In summary, the following constructs are all needed for QC using taxon restrictions:

+
    +
  • Relation Ontology
      +
    • in_taxon property chains for relations which should propagate in_taxon inferences
    • +
    +
  • +
  • NCBI Taxonomy Ontology
      +
    • X DisjointWith Y for all sibling taxa X and Y
    • +
    • (in_taxon some X) DisjointWith (in_taxon some Y) for all sibling taxa X and Y
    • +
    • (in_taxon some X) DisjointWith (in_taxon some (not X)) for every taxon X
    • +
    +
  • +
  • Each ALL-IN taxon restriction C in_taxon X
      +
    • C SubClassOf (in_taxon some X)
    • +
    +
  • +
  • Each NOT-IN taxon restriction C never_in_taxon X
      +
    • C SubClassOf (not (in_taxon some X))
    • +
    • C SubClassOf (in_taxon some (not X))
    • +
    +
  • +
  • Each SOME-IN taxon restriction C present_in_taxon X)
      +
    • <generated class IRI> SubClassOf (C and (in_taxon some X))
    • +
    +
  • +
+

Employing taxon restrictions in your QC pipeline

+

If you are checking an ontology for coherency in a QC pipeline (such as by running ROBOT within the ODK), you will need to have the required constructs from the previous section present in your import chain:

+
    +
  • Relation Ontology + — import as usual
  • +
  • NCBI Taxonomy Ontology
      +
    • import the main taxonomy (http://purl.obolibrary.org/obo/ncbitaxon.owl)
    • +
    • import http://purl.obolibrary.org/obo/ncbitaxon/subsets/taxslim-disjoint-over-in-taxon.owl (or implement a way to generate the needed disjointness axioms)
        +
      • Note: that file only covers a subset of the taxonomy, and is missing (in_taxon some X) DisjointWith (in_taxon some (not X)). You may need to implement a way to generate the needed disjointness axioms until this is corrected.
      • +
      +
    • +
    +
  • +
  • Your own taxon restrictions within your ontology:
      +
    • ALL-IN taxon restrictions require no expansion. If you are using the never_in_taxon and present_in_taxon shortcut annotation properties, you can expand these into the logical forms using robot expand.
    • +
    • Because present_in_taxon expansions add named classes to your ontology, you will probably want to organize your pipeline in such a way that this expansion only happens in a QC check, and the output is not included in your published ontology.
    • +
    +
  • +
+

Exploring taxon restrictions in Protégé

+

Using the DL Query panel and a running reasoner, it is straightforward to check whether a particular taxon restriction holds for a term (such as when someone has requested one be added to your ontology). Given some term of interest, e.g., 'whisker', submit a DL Query such as 'whisker' and (in_taxon some Mammalia). Check the query results:

+
    +
  • If Equivalent classes includes owl:Nothing, then a never_in_taxon is implied for that taxon.
  • +
  • If Equivalent classes includes the term of interest itself (and not owl:Nothing), then an in_taxon is implied for that taxon.
  • +
  • If Superclasses includes the term of interest (and the query isn't equivalent to owl:Nothing), then there is no particular taxon restriction involving that taxon.
  • +
+

OBO taxon constraints plugin for Protégé

+

To quickly see exactly which taxon restrictions are in effect for a selected term, install the OBO taxon constraints plugin for Protégé. Once you have the plugin installed, you can add it to your Protégé window by going to the menu Window > Views > OBO views > Taxon constraints, and then clicking the location to place the panel. The plugin will show the taxon constraints in effect for the selected OWL class. When a reasoner is running, any inferred taxon constraints will be shown along with directly asserted ones. The plugin executes many reasoner queries behind the scenes, so there may be a delay before the user interface is updated.

+

image

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/term-comments/index.html b/explanation/term-comments/index.html new file mode 100644 index 000000000..604183447 --- /dev/null +++ b/explanation/term-comments/index.html @@ -0,0 +1,3707 @@ + + + + + + + + + + + + + + + + + + + + + + + + Term Comments - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Term Comments

+

What are comments?

+

Comments are annotations that may be added to ontology terms to further explain their intended usage, or include information that is useful but does not fit in areas like definition.

+

Some examples of comments, and possible standard language for their usage, are:

+

WARNING: THESE EXAMPLES ARE NOT UNIVERSALLY USED AND CAN BE CONTROVERSIAL IN SOME ONTOLOGIES! PLEASE CHECK WITH THE CONVENTIONS OF YOUR ONTOLOGY BEFORE DOING THIS!

+

Do Not Annotate

+

This term should not be used for direct annotation. It should be possible to make a more specific annotation to one of the children of this term.

+

Example: +GO:0006810 transport

+

Note that this term should not be used for direct annotation. It should be possible to make a more specific annotation to one of the children of this term, for e.g. transmembrane transport, microtubule-based transport, vesicle-mediated transport, etc.

+

Do Not Manually Annotate

+

This term should not be used for direct manual annotation. It should be possible to make a more specific manual annotation to one of the children of this term.

+

Example: +GO:0000910 cytokinesis

+

Note that this term should not be used for direct annotation. When annotating eukaryotic species, mitotic or meiotic cytokinesis should always be specified for manual annotation and for prokaryotic species use 'FtsZ-dependent cytokinesis; GO:0043093' or 'Cdv-dependent cytokinesis; GO:0061639'. Also, note that cytokinesis does not necessarily result in physical separation and detachment of the two daughter cells from each other.

+

Additional Information

+

Information about the term that do not belong belong in the definition or gloss, but are useful for users or editors. This might include information that is adjacent to the class but pertinent to its usage, extended information about the class (eg extended notes about a characteristic of a cell type) that might be useful but does not belong in the definition, important notes on why certain choices were made in the curation of this terms (eg why certain logical axioms were excluded/included in the way they are) (Note: dependent on ontology, some of these might belong in editors_notes, etc.).

+

Standard language for these are not given as they vary dependent on usage.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/which-ontology-to-use/index.html b/explanation/which-ontology-to-use/index.html new file mode 100644 index 000000000..cf1bec63c --- /dev/null +++ b/explanation/which-ontology-to-use/index.html @@ -0,0 +1,3609 @@ + + + + + + + + + + + + + + + + + + + + + + + + Which biomedical ontologies should we use? - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Which biomedical ontologies should we use?

+

As a rule of thumb, for every single problem/term/use case, you will have 3-6 options to choose from, in some cases even more. The criteria for selecting a good ontology are very much dependent on your particular use case, but some concerns are generally relevant. A good first pass is to apply to "10 simple rules for selecting a Bio-ontology" by Malone et al, but I would further recommend to ask yourself the following:

+
    +
  • Do I need the ontology for grouping and semantic analysis? In this case a high quality hierarchy reflecting biological subsumption is imperative. We will explain later what this means, but in essence, you should be able to ask the following question: "All instances/occurrences of this concept in the ontology are also instances of all its parent classes. Everything that is true about the parent class is always also true about instances of the children." It is important for you to understand that, while OWL semantics imply the above, OWL is difficult and many ontologies "pretend" that the subclass link means something else (like a rule of thumb grouping relation).
  • +
  • Can I handle multiple inheritance in my analysis? While I personally recommend to always consider multiple inheritance (i.e, allow a term to have more than one parent class), there are some analysis frameworks, in particular in the clinical domain, that make this hard. Some ontologies are inherently poly-hierarchical (such as Mondo), while others strive to be single inheritance (DO, ICD).
  • +
  • Are key resources I am interested in using the ontology? Maybe the most important question that will drastically reduce the amount of data mapping work you will have to do: Does the resource you wish to integrate already annotate to a particular ontology? For example, EBI resources will be annotating phenotype data using EFO, which in turn used HPO identifiers. If your use case demands to integrate EBI databases, it is likely a good idea to consider using HPO as the reference ontology for your phenotype data.
  • +
+

Aside from aspects of your analysis, there is one more thing you should consider carefully: the open-ness of your ontology in question. As a user, you have quite a bit of power on the future trajectory of the domain, and therefore should seek to endorse and promote open standards as much as possible (for egotistic reasons as well: you don't want to have to suddenly pay for the ontologies that drive your semantic analyses). It is true that ontologies such as SNOMED have some great content, and, even more compellingly, some really great coverage. In fact, I would probably compare SNOMED not with any particular disease ontology, but with the OBO Foundry as a whole, and if you do that, it is a) cleaner, b) better integrated. But this comes at a cost. SNOMED is a commercial product - millions are being paid every year in license fees, and the more millions come, the better SNOMED will become - and the more drastic consequences will the lock-in have if one day you are forced to use SNOMED because OBO has fallen too far behind. Right now, the sum of all OBO ontologies is probably still richer and more valuable, given their use in many of the central biological databases (such as the ones hosted by the EBI) - but as SNOMED is seeping into the all aspects of genomics now (for example, it will soon be featured on OLS!) it will become increasingly important to actively promote the use of open biomedical ontologies - by contributing to them as well as by using them.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/explanation/writing-good-issues/index.html b/explanation/writing-good-issues/index.html new file mode 100644 index 000000000..b083cb99f --- /dev/null +++ b/explanation/writing-good-issues/index.html @@ -0,0 +1,3695 @@ + + + + + + + + + + + + + + + + + + + + + + + + Writing good issues - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Writing Good Issues

+

Based on Intro to GitHub (GO-Centric) with credit to Nomi Harris and Chris Mungall

+

Writing a good ticket (or issue) is crucial to good management of a repo. In this explainer, we will discuss some good practices in writing a ticket and show examples of what not to do.

+

Best Practices

+
    +
  • Search existing issues before creating a new one -- maybe someone else already reported your problem
  • +
  • Give your issue a short but descriptive and actionable title
  • +
  • Describe the problem and the context and include a repeatable example.
  • +
  • Clearly state what needs to be done to close the ticket
  • +
  • Tickets should ideally be actionable units that can be closed via a PR
  • +
  • Fag relevant people with @ (e.g., @nlharris)
  • +
  • Mention related issues with # (e.g., #123)
  • +
  • use a complete URL to link to tickets in other repos
  • +
  • Make issue titles actionable
  • +
  • eg "Ontology download page on GO website" is non-actionable, whereas "Fix URLs on ontology download page on GO website" is actionable and hence better a title
  • +
+

Example of a good ticket

+

+

Example of a bad ticket

+

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/getting-started-obook/index.html b/getting-started-obook/index.html new file mode 100644 index 000000000..20b85db22 --- /dev/null +++ b/getting-started-obook/index.html @@ -0,0 +1,3778 @@ + + + + + + + + + + + + + + + + + + + + + + + + Getting started for OBOOK editors - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Getting started for OBOOK editors

+

The OBOOK is trying to centralise all OBO documentation in one place. It is, and will be, a big construction site, for years to come. The goal is to iterate and make things better.

+

We follow two philosophies:

+ +

There are three main consequences to this:

+
    +
  1. Our materials are organised in a certain way (according to the four-way split suggested by Diataxis).
  2. +
  3. We superimpose three more categories to organise the content across all materials and facilitate self guided studying: Pathways, courses and lessons (see below).
  4. +
  5. All training materials must be self-contained to ensure that they can be studied without any further guidance by a teacher.
  6. +
+

Preparation

+
    +
  • Browse through this page: https://diataxis.fr/
  • +
  • Watch the introduction to the Diataxis framework:
  • +
+ + +

Beyond Diataxis: the OBOOK categories:

+

We just introduced a new concept to OBOOK called pathways. The idea is that we provide a linear guide for all 6 roles mentioned on the getting started page through the materials. This will help us also complete the materials and provide a good path to reviewing them regularly.

+

Tutorial

+

A step-by-step guide to complete a well-defined mini-project. Examples: ROBOT template tutorial. DOSDP template tutorial. Protege tutorial on using the reasoner.

+

Lesson

+

A collection of materials (tutorials, explanations and how-to-guides) that together seek to teach a well defined concept. Examples: Contributing to OBO ontologies; An Introduction to templates in OBO; An Introduction to OBO Application development. While the distinction to "tutorial" is often fuzzy, the main distinguishing feature should be that a lesson conveys a general concept independent of some concrete technology stack. While we use concrete examples in lessons, we do always seek to generalise to problem space.

+

Course

+

A convenience content type that allows us to assemble materials from obook for a specific taught unit, such as the yearly ICBO tutorials, or the ongoing Monarch Ontology Tutorials and others. Course pages serve as go-to-pages for course participants and link to all the relevant materials in the documentation. Course usually comprise lessons, tutorials and how-to guides.

+

Pathways

+

A pathway is a kind of course, but without the expectation that it is ever taught in a concrete setting. A pathways pertains to a single concrete role (Ontology Curator, Pipeline Developer etc). It is a collection of materials (lessons, tutorials, how-to-guides) that is ordered in a linear fashion for the convenience of the student. For example, we are developing a pathway for ontology pipeline developers that start by teaching common concepts such as how to make term requests etc, and then go into depth on ROBOT pipelines, ODK and Make.

+

Best practices:

+
    +
  • Items in the explanation section should conceptually start with a Why or a How question.
  • +
  • For ordered lists, only use 1. 1. 1., ever 1. 2. 3. This makes it easier to remove and shuffle items during edits
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/getting-started/index.html b/getting-started/index.html new file mode 100644 index 000000000..07b9e13a0 --- /dev/null +++ b/getting-started/index.html @@ -0,0 +1,3795 @@ + + + + + + + + + + + + + + + + + + + + + + + + Getting started with learning - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

How to start with the lessons

+

Before you start with the lessons of this course, keep the following in mind:

+
    +
  1. The materials in this course are all intended to be used for self-study. We sometimes offer flipped-classroom sessions for new members on our teams - this means that we expect them to work through the entire course themselves and then come to us with questions and requests for clarifications.
  2. +
  3. There is no need to reinvent the wheel: there are a lot of great materials out there already. Providing references to these external resources is an essential part of the course - some lessons primarily comprise external tutorials, blog articles and more - please make sure you take advantage of them.
  4. +
  5. Some of the materials developed by us are a bit rough around the edges, and we need your help to fix and improve them. To that end, we appreciate anything from suggestions for improvement to pull requests.
  6. +
  7. Depending on your specific role and interest, you can choose which lessons are relevant to you. There is no specific order, but if you want to start somewhere, we recommend Contributing to OBO ontologies: Protege and Github and/or Using Ontologies and Ontology Terms
  8. +
+

+

The different roles of OBO Semantic Engineering

+

There are a wide variety of entry points into the OBO world, for example:

+

Database Curator: You are

+
    +
  • using ontologies for annotating datasets, experiments and publications
  • +
  • requesting new terms from ontologies
  • +
  • suggesting corrections to existing ontologies, such as wrong or missing synonyms, typos and definitions
  • +
+

Ontology Curator: You are

+
    +
  • developing and maintaining ontologies
  • +
  • adding terms to ontologies
  • +
  • performing changes to ontologies, like adding or correcting synonyms
  • +
  • responsible for ontology releases
  • +
+

Ontology Engineer/Developer: You are

+
    +
  • developing design patterns for ontologies, specifying the logical structure of terms
  • +
  • responsible for ensuring the specification and consistent application of metadata in your ontologies (which annotation properties to use, minimal metadata standards)
  • +
  • defining quality control checks
  • +
+

Ontology Pipeline Specialist: You are

+
    +
  • developing ontology pipelines with make and ROBOT
  • +
  • building the release and quality control architecture that Engineers and Curators need to do their work.
  • +
  • building infrastructure for application ontologies, implementing dynamic imports modules, transformations of and mappings to other ontologies.
  • +
+

Semantic ETL Engineer: You are

+
    +
  • building ingests from public life science resources such as Bgee, Panther, UniProt and many more
  • +
  • using ontologies to glue together data from different sources
  • +
  • using ontologies to augment the information in your data sources through inference
  • +
+

(Semantic) Software Engineer: You are

+
    +
  • using ontologies to generate value to end-user applications (user interfaces, semantic faceted search)
  • +
  • building widgets that exploit the logical and graph structure of ontologies, for example phenotypic profile matching
  • +
  • building ontology term browsers such as OLS.
  • +
+

Of course, many of you will occupy more than one of the above "hats" or roles. While they all require specialised training, many shared skill requirements exist. This course is being developed to:

+
    +
  • Provide basic training for OBO Semantic Engineers of any of the above flavours
  • +
  • Provide an entry point for people new to the field, for example as part of onboarding activities for projects working with ontologies
  • +
  • Capture some of the typical pitfalls and how-to's guides to address common problems across the OBO-sphere
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/add-new-slim/index.html b/howto/add-new-slim/index.html new file mode 100644 index 000000000..5682ae109 --- /dev/null +++ b/howto/add-new-slim/index.html @@ -0,0 +1,3716 @@ + + + + + + + + + + + + + + + + + + + + + + + + Creating a new Slim (under construction) - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Creating a new Slim (under construction)

+ +

Adding a new subset (also known as a "slim")

+

See Daily Curator Workflow for creating branches and basic Protégé instructions.

+
    +
  1. +

    In the main Protégé window, click on the "Entities" tab. Below that, click the "Annotation properties" tab.

    +
  2. +
  3. +

    Select the subset_property annotation property.

    +
  4. +
  5. +

    Click on the "Add sub property" button.

    +
  6. +
  7. +

    In the pop-up window, add the name of the new slim. The IRI will automatically populate according to settings in the user's "New entities" settings. Click OK.

    +
  8. +
  9. +

    With the newly created annotation property selected, click on "Refactor > Rename entity..." in the menu.

    +
  10. +
  11. +

    In the pop-up window, select the "Show full IRI" checkbox. The IRI will appear. +Edit the IRI to fit the following standard:

    +
  12. +
+

http://purl.obolibrary.org/obo/{ontology_abbreviation}#{label_of_subset}

+

For example, in CL, the original IRI will appear as:

+

http://purl.obolibrary.org/obo/CL_1234567

+

If the subset was labeled "kidney_slim", the IRI should be updated to:

+

http://purl.obolibrary.org/obo/cl#kidney_slim

+
    +
  1. +

    In the 'Annotations" window, click the + next to "Annotations".

    +
  2. +
  3. +

    In the pop-up window, select the rdfs:comment annotation property. Under "Value" enter a brief descripton for the slim. Under "Datatype" select xsd:string. Click OK.

    +
  4. +
+

See Daily Curator Workflow section for commit, push and merge instructions.

+

Adding a class (term) to a subset (slim)

+

See Daily Curator Workflow for creating branches and basic Protégé instructions.

+
    +
  1. +

    In the main Protégé window, click on the "Entities" tab. Select the class that is to be added to a subset (slim).

    +
  2. +
  3. +

    In the 'Annotations" window, click the + next to "Annotations".

    +
  4. +
  5. +

    In the pop-up window, select the in_subset annotation property.

    +
  6. +
  7. +

    Click on the ‘Entity IRI’ tab.

    +
  8. +
  9. +

    Search for the slim label under "Entity IRI". In the pop-up that appears, double-click on the desired slim. Ensure that a sub property of subset_property is selected. Click OK.

    +
  10. +
+

See Daily Curator Workflow section for commit, push and merge instructions.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/add-taxon-restrictions/index.html b/howto/add-taxon-restrictions/index.html new file mode 100644 index 000000000..f8fc863ae --- /dev/null +++ b/howto/add-taxon-restrictions/index.html @@ -0,0 +1,3627 @@ + + + + + + + + + + + + + + + + + + + + + + + + Adding Taxon Restrictions - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Adding taxon restrictions

+

Before adding taxon restrictions, please review the types of taxon restrictions documentation.

+

See Daily Workflow for creating branches and basic Protégé instructions.

+
    +
  1. in taxon relations are added as Subclasses.
  2. +
  3. Navigate to the term for which you want to add the only in taxon restriction.
  4. +
  5. In the Description window click on the +.
  6. +
  7. In the pop-up window type a new relationship (e.g. 'in taxon' some Viridiplantae).
  8. +
  9. The taxa available are imported ontology terms and can be browsed just like any other ontology term.
  10. +
+

intaxon

+
    +
  1. never in taxon or present in taxon relations added as Annotations.
  2. +
  3. Navigate to the taxon term you want to add a restriction on.
  4. +
  5. Copy the IRI (you can use command U to display this on a Mac)
  6. +
  7. Navigate to the term for which you want to add the never in taxon restriction.
  8. +
  9. In the class annotations window, click on the +.
  10. +
  11. In the left-hand panel, select never_in_taxon or present_in_taxon as appropriate.
  12. +
  13. In the right-hand panel, in the IRI editor panel, paste in the IRI.
  14. +
  15. Click OK to save your changes.
  16. +
  17. (Note - you can achieve the same thing using the Entity IRI tab + navigating to the correct taxon but this is slow and not very practical)
  18. +
+

neverintaxon

+

See Daily Workflow section for commit, push and merge instructions.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/are-two-entities-the-same/index.html b/howto/are-two-entities-the-same/index.html new file mode 100644 index 000000000..6f93644c3 --- /dev/null +++ b/howto/are-two-entities-the-same/index.html @@ -0,0 +1,4161 @@ + + + + + + + + + + + + + + + + + + + + + + + + Are these two entities the same? A guide. - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Are these two entities the same? A guide.

+ +

Are these two entities the same? A guide.

+

+

Disclaimer: Some of the text in this guide has been generated or refined with the help of ChatGPT (GPT 4).

+

Summary: +Entity mapping is the process of identifying correspondences between entities across semantic spaces. A “semantic space” in this context can be anything from an ontology, terminology, database or controlled vocabulary to enumerations in a data model. Entities are strings that identify/represent a real-world concept or instance in that space. Many such entities refer to the exact same, or similar, real world concept or instance 1,2. To integrate data from disparate semantic spaces, we need to develop maps that connect entities. The Simple Standard for Sharing Ontological Mappings (SSSOM) has been developed to support that process.

+

Most semantic spaces (such as scientific databases or clinical terminologies) do not commit to any formal semantics (such as, say, an OWL Ontology). This makes the curation of mappings a shaky, ambiguous afair. Concepts with the same labels can refer two different real world concepts. Concepts with entirely different labels and taxonomic context can refer to the same real world concept. Here, we explore conceptually how to think of same-ness, leading to a practical protocol for mapping authors and reviewers.

+

Preliminary reading

+ +

A practical step-by-step protocol for determining a mapping

+

The following steps are designed to give you a basic framework for designing your own, use-case specific, mapping protocol. The basic steps are:

+
    +
  1. Understand the underlying conceptual models of the semantic spaces
  2. +
  3. Document the use case for the mapping
  4. +
  5. Document the basic curation rules for the mapping
  6. +
  7. Gathering evidence for the mapping
  8. +
+

+

Understand the underlying conceptual models of the semantic spaces

+

Before we can even start with the mapping process, we need to establish what the source is all about, and what the conceptual model underpins it. This may or may not be easy - but this step should not be ommitted.

+

Checklist for determining the conceptual model of a semantic space

+
    +
  1. What is the domain of the semantic space? (e.g. Clinical, Medical Research, Environment)
  2. +
  3. What is the organising semantic framework? Is it an OWL ontology (set semantics)? A SKOS taxonomy (broader/narrow categories)? A database without a specific semantic framework underpinning it?
  4. +
  5. What are the primary organising relationships (POR)? Primary organising relationships connect terms within the semantic spaces, like diseases to diseases, chemicals to chemicals etc, usually into some form of a graph. For an ontology, this could be for example rdfs:subClassOf, or BFO:0000050 (part of), like in the case of Uberon. For a taxonomy, the primary organising relationship could be skos:broader / skos:narrower. For a database, there could be no PORs at all, or relationships like "isomer of", "functional group of" etc, which are usually columns in a database table. In some cases, the PORs serve a function more than they reflect a representation of knowledge. For example, hierarchical relationships in ICD10 have to be mono-hierarchical (single parents) to serve billing and statistical purposes, which means that a lot of biological ambiguities will not be reflected at all (missing bioligically meaningful hierarchical relationships).
  6. +
  7. What are the primary categories represented by the semantic space, e.g. one or more of diseases, phenotypes, genes, chemical entities, biological processes?
  8. +
  9. What is the conceptual model underpinning the primary categories? This is the hardest part, because we very rarely have a document or schema (ontology!) that explicitly defines the conceptual model. For example, one ontology could implement a biomedical conceptual model of disease, which views diseases as primarily resulting from biological factors. It posits that diseases are caused by specific, identifiable agents like viruses, bacteria, genetic mutations, or physiological imbalances. Or an ontology could implement a biopsychosocial model of disease which views disease as a result of a complex interplay between biological, psychological, and social factors. Chemical entities can be defined and organised using a Structural Hierarchical Model (hierarchically organised from atomic to molecular to macromolecular levels), or a Behavioral/Functional Model: (hierarchically organised based on their behavior or function).
  10. +
+

Example for determining the conceptual model of a semantic space

+

In our example, we are mapping ICD10CM to Mondo.

+
    +
  1. domain:
      +
    • MONDO: MONDO is an ontology focused on modelling diseases, with a special focus on rare diseases.
    • +
    • ICD10CM: ICD-10-CM is a comprehensive system that goes beyond just coding diseases. In addition to diseases, ICD-10-CM includes codes for a variety of other features, such as Symptoms, Signs, and Abnormal Clinical and Laboratory Findings, Injuries and External Causes and Factors Influencing Health Status and Contact with Health Services.
    • +
    +
  2. +
  3. organising semantic framework:
      +
    • MONDO: MONDO is an OWL ontology.
    • +
    • ICD10CM: ICD10 can safely be classified as a taxonomy, but does not commit to a specfic standard. The "primary structure" of ICD-10-CM, which refers to its hierarchical organization of codes from broad categories to specific diseases or conditions, can largely be expressed as a SKOS vocabulary. The basic hierarchical relationships (broader/narrower) align well with SKOS's skos:broader and skos:narrower properties. Likewise, preferred labels for terms can be represented using skos:prefLabel, while alternative labels or synonyms can be captured using skos:altLabel. However, while the main hierarchical structure of ICD-10-CM can be represented in SKOS, there are nuances and additional information in ICD-10-CM that might be challenging to represent losslessly in a simple SKOS model, such as Inclusion and Exclusion Notes and Complex (non-hierarchical) Relationships.
    • +
    +
  4. +
  5. primary organising relationships:
      +
    • MONDO: rdfs:subClassOf
    • +
    • ICD10CM: can be expressed as skos:narrower, skos:broader, see considerations above ("organising semantic framework").
    • +
    +
  6. +
  7. primary categories:
      +
    • MONDO: diseases, disease characteristics, injuries, susceptibilities
    • +
    • ICD10CM: diseases, signs and symptoms, injuries, pregancy related codes, and more (we only really care about diseases here)
    • +
    +
  8. +
  9. conceptual model: A disease model captures the essential, defining features of diseases, including etiology and phenotypic presentation. As these are rarely explicitly defined, the disease model underlying a resource must often be determined through elucidation, term analysis and literature review.
      +
    • MONDO: A disease is a disposition to undergo pathological processes that exists in an organism because of one or more disorders in that organism.
    • +
    • ICD10CM: The International Classification of Diseases (ICD) serves as a foundational tool for health statistics, clinical care, and research, but it doesn't provide a singular, concise definition of "disease" in its introduction or general guidelines. Instead, the ICD system broadly encompasses a range of health-related conditions, and its structure reflects various ways in which the human body and mind can deviate from a perceived norm or experience dysfunction.
    • +
    +
  10. +
+

A small part of a disease model could look like this:

+

+

While this is vastly incomplete, you can gain certain important pieces of information:

+
    +
  1. susceptibilities, injuries and diseases are mutually disjoint (different branches). So a disease model that subsumes an "injury" or a "susceptibility to disease" under the concept of "disease" would, technically speaking, be incompatible with that disease model.
  2. +
  3. A "disease grouping" is considered a "disease" - many (if not most) conceptual models clearly separate the two.
  4. +
  5. "hereditary diseases by site" are classified both under "grouping by site" and "hereditary disease". This means the conceptual model is polyhierarchical. Many disease models do not permit polyhierarchies in their "primary organising relationships".
  6. +
+

+

Document the use case of the mapping

+

Before proceeding, you should document how you want to use the mapping. The mapping use case will determine certain factors like:

+
    +
  • which mapping predicates to consider,
  • +
  • whether or not to "conflate",
  • +
  • how far "uphill" or "broad" to map and
  • +
  • which level of evidence you consider acceptable.
  • +
+

Note that one goal of SSSOM is to increase our ability for "cross-purpose reuse" of mappings, which means that no matter what the use case, the mappings should never be "wrong" - but "conflation", which we will hear more about in a bit, is a natural part of mapping which will always cause mappings to be to some degree imprecise (imperfect).

+

Example use case

+

In our example, we are mapping ICD10CM to Mondo for the purpose of data integration, in particular knowledge graph merging.

+

One of the features of this use case is that we wish the target KG to have a specific feature: for every disease in the data, we want one, and only one, node in the graph. Therefore, carefully curated exact matches are our primary focus. All nodes should be represented by MONDO ids. On the flipside, some diseases in ICD 10 are too granular so we wish to map them to the next best disease in Mondo as a broad match. We have no analytic use for narrow and close matches because we cannot clearly deal with them in the knowledge graph, so we do not curate them.

+

+

Closely related to this knowledge graph integration use case is the need for counting. In order to be able to count precisely across resources, we need precise mappings to not overcount. For example, given a set of resources that represent more than 10,000 rare diseases, only 333 were represented by all:

+

+

+

Document the basic curation rules for the mapping

+

Once you have determined the conceptual models of the subject and object source (or a good approximation of it), you will have to lay some ground (curation) rules of the mappings. These ground rules are going to be dictated by your target use case.

+

Checklist for defining the basic curation rules for the mapping

+
    +
  1. Document the primary categories you seek to map to each other.
  2. +
  3. If the primary categories are different across subject and object source, e.g. you want to map genes in one resources to protein-products of genes in another, you document a conflation decision. "Conflation" is the conscious act of pretending two things are the same even if they commit to a different conceptual model (see checklist above)
  4. +
  5. If the primary categories are the same across subject and object source, determine if the conceptual model is the same. If it is, fine, if not, document, again, if you wish to "conflate" these for the sake of this mapping (document in this sense means: write it down and add it to the mapping set description or documentation later). For example, if you map (1) analogous entities across different species (e.g. human diseases to animal diseases), or (2) chemical entities from a structural hierarchical model to ones defined in terms of function, or (3) diseases from a phenomenologically driven perspective to ones that are defined from a etiological perspective, you write it down. (Note that for cross-species mappings, you do not necessarily have to conflate, as we developed a specialised cross-species mapping vocabulary).
  6. +
  7. Determine the mapping predicates. If you decided to conflate, pick the set of standard mapping predicates you wish to curate. Usually, this should be mapping relations from the SKOS vocabulary. If you decided not to conflate, pick the appropriate mapping relationship from another vocabulary, such as SEMAPV, or even the Relation Ontology.
  8. +
  9. Document the minimal levels of evidence required for each mapping. This step is discussed in detail, separately, in the next section.
  10. +
+

Example for documenting the basic curation rules for the mapping

+
    +
  1. Which primary categories? In this case we only want to map diseases in ICD10CM to diseases in Mondo, and ignore everything else. However, we recognise that occassionally, a term classified in ICD10CM as a "sign or symptom" may appear in Mondo as a disease, so we keep our minds open about that possibility.
  2. +
  3. Conflation accross different categories? We are open to the possibility (based on our experience with disease mappings) that some conditions are represented in ICD 10 as signs or symptoms, while Mondo represents them as diseases. This is a murky area of disease data integration, so we choose to conflate diseases (disorders), sign and symptoms (clinical findings). SNOMED views, for example, disorders as subclasses for findings that are always abnormal. To support our use case (integrating all disease knowledge in a knowledge graph), we decide it is better to conflate the two. Not conflating would mean missing out on a potentially huge number of interesting associations in the data.
  4. +
  5. Conflation within the same primary category. ICD 10 does not explicitly commit to a specific definition or model of disease, and even through literature review it is hard to pin down what they mean by a disease (e.g. phenomenological vs etiological viewpoints). We accept that ambiguity and explicitly acknowledge that we conflate the disease models of ICD10 and Mondo for the sake of this mapping (same arguments as above).
  6. +
  7. Mapping predicates. Due to our conflation decisions we determine that the SKOS vocabulary is appropriate to represent our mapping predicates. (Note: if we had decided not to conflated, it would not have automatically meant that we could not map at all: we would, however, have to resort to much less useful mapping relations like skos:relatedMatch and skos:closeMatch, which are considerably harder, but not impossible, to use by data scientists. These mapping predicates are entirely unsuited for our use case, as the primary goal is "providing one node in the graph per medical condition")
  8. +
  9. Minimal levels of evidence? We decide that for our purposes, noise is acceptable and we trust the same label = same disease assumption (while this, as we will see later is not always quite right). If the the label is not the same, we also trust a combination of a synonym exact match combined with a threshold on lexical similarity of 90% (levenshtein). If neither can be achieved, we require either a combination of proxy mapping with a non-domain-expert review (biocurator) or a full expert review (see next section).
  10. +
+
Conflation on primary category, phenotypic abnormality vs clinical finding
+

SNOMED cleanly separates between "clinical findings" and "disorder". While the SNOMED defines findings as "normal or abnormal observations, judgments, or assessments of patients", and disorders as "always and necessarily an abnormal clinical state". +Strictly speaking, the presence of a finding term like SCTID:300444006 (Large kidney (finding)) does not imply any kind of level of abnormality, while all the corresponding term in HPO, HP:0000105 (Enlarged kidney) does. Now this is clearly a consequence of the weird way "abnormal" is defined in the world. Sometimes it is intended to mean "outside the normal range", and sometimes it is taken to mean "deviating from the mean". These are clearly different. None-the-less, the fact SNOMED does not imply "abnormality" means that we are conflating when we map the two.

+
The difficulty of deciding what level of confidence is "enough"
+

MONDO:0000022 (Nocturnal Enuresis) is currently defined as "urination during sleep", and classified under psychiatric disorders.

+

ICD10CM:N39.44 (Nocturnal enuresis) is classified as an urological disease (organic, rather than psychiatric, disorder), where a urinary incontinence not due to a substance or known physiological condition is explicitly excluded.

+

Regardless of whether we believe that Mondo is misclassifying the disease (it should also be a urinary disease), either we are interpreting here the exact same disease/syndrome differently between Mondo and ICD10 (assigning different etiologies), or two etiologically different diseases have been assigned the exact same name.

+

Again, we have a few options here. (1) we decide we dont care about the difference. A rough mapping seems to be good enough, and most our applications (data aggregation, analysis) wont care if both concepts are merged into the same. If this is generally the case for diseases with the exact same or very similary names, we just decide that the confidence given to us by "same name" is 99 or even 100%. (2) we decide they are different. In this case, we must have every single mapping reviewed by a clinical specialist, unless we have access to all properties of the conceptual model (full etiology, phenotypic profile, etc).

+

+

Gathering evidence for a mapping

+

Only after you understood the conceptual model underlying the subject and object sources you seek to map, and defining the basic curation rules for the mapping, are you ready to gather evidence for and against the mapping. The goal of evidence gathering is to increase confidence in a mapping. A single piece of evidence is called a justification. The confidence gained by multiple justifications can add up or be mutually exclusive. For example: a lexical match and match on a shared mapping are cumulative pieces of evidence. The confidence provided by multiple manual curators does not add up (usually the maximum or mean confidence is used). Every mapping project defines its own confidence levels.

+

warnicon

+

Remember: You can never determine the correctness of a mapping. This is a direct consequence of our inability to assign a semantic space with an explicit, fully defined semantic model. You can only gather evidence for or against a mapping under the premises defined by your curation rules, and then, depending on your particular use case, decide which level of evidence is sufficient. "Correctness" in this context means "under the curation rules defined for the mapping (previous section), the subject and object of the mappings relate to the same "conceptual entity" (disease, chemical entity) in the way specified by the mapping predicate" (e.g. we can use skos:exactMatch if both subject and entity correspond exactly to the same concept of "atom" under the curation rules we defined).

+

Checklist: Levels of Evidence

+

This checklist assumes a specific mapping candidate {s,p,o,c}, with s the subject, p the mapping predicate, o the object and c the confidence, initially 0, as a starting point. The goal of the checklist is to increase the confidence of the mapping to an acceptable degree. The required level of confidence should be set by the mapping authors.

+

Instead of giving some arbitrary numbers for confidence, we just distinguish between LOW, MODERATE and HIGH confidence. Average confidence gained is a rough metric, that means: "based on our experience, this justification leads to a HIGH, MODERATE, or LOW increase in confidence. A HIGH level of confidence could be, depending on the context, something between 0.8 and 1.0.

+
    +
  1. We start with a confidence of 0.
  2. +
  3. Sameness of primary label
      +
    • Rationale: the primary label of an entity is largely unique. If s and o belong to the same primary category (e.g. gene, disease, chemical entity), the risk of Homonomy is low.
    • +
    • Level of confidence gained on average: HIGH
    • +
    • Preprocessing: Preprocessing may or may not affect the level of confidence.
    • +
    • Cost: VERY LOW (fast, standard algorithms)
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  4. +
  5. Sameness of synonym
      +
    • Rationale: synonyms are less trustworthy than primary labels for driving mapping decision, but if the precision (exact, broad, narrow) is known, are still valuable indicators.
    • +
    • Level of confidence gained on average: MEDIUM to HIGH (this depends on wether the source carefully distinguishes exact from non-exact synonyms)
    • +
    • Preprocessing: Preprocessing may or may not affect the level of confidence.
    • +
    • Cost: VERY LOW (fast, standard algorithms)
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  6. +
  7. Proxy mapping (s and o share a mapping to the same third entity x)
      +
    • Rationale: if the subject and object sources have already been mapped by a trustworthy mapping provider to the same third resource, we can usually avoid redoing the mapping.
    • +
    • Level of confidence gained on average: MEDIUM to HIGH (this depends on how much trust the mapping author has in the sources of the mappings)
    • +
    • Cost: VERY LOW (fast, standard algorithms)
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  8. +
  9. Similarity of primary label: using a number of measures determine if the two primary labels are lexically similar, for example by having a low edit distance, or one label is contained in the other (broad/narrow match).
      +
    • Level of confidence gained on average: LOW (depends on the degree of similarity)
    • +
    • Preprocessing: Preprocessing may or may not affect the level of confidence.
    • +
    • Cost: VERY LOW (fast, standard algorithms)
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  10. +
  11. Similarity of synonym
      +
    • Level of confidence gained on average: LOW (this depends on wether the source carefully distinguishes exact from non-exact synonyms, and on the degree of the similarity)
    • +
    • Preprocessing: Preprocessing may or may not affect the level of confidence.
    • +
    • Cost: VERY LOW (fast, standard algorithms)
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  12. +
  13. Hierarchical comparison of the primary organising relationship structure:
      +
    • Method:
        +
      • Are s and o the same kind* of entity? (High level branch analysis)
      • +
      • Do s and o have the same/similar set of ancestors? (requires all ancestors to be mapped)
      • +
      • Do s and o have the same/similar set of decendants? (requires all descendants to be mapped)
      • +
      • Advanced: s and o are linked to similar feature sets (phenotypes, average weight, number of carbon atoms, etc). Shared references to the same scientific publications could count here as well.
      • +
      +
    • +
    • Level of confidence gained on average: MEDIUM
    • +
    • Note: the primary organising relationship structures of two semantic spaces rarely exactly correspond to each other - a failing hierarchical comparison is not a strong evidence against a mapping.
    • +
    • Cost: MEDIUM to HIGH (this check can be automated to some degree, but due to the cost of needing ancestors mapped already, is probably executed better by a human)
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  14. +
  15. Domain expert review of definitions (comparing only the textual definitions provided by both sources and determining whether they refer to the same concept under the mapping curation rules defined). Note that this is only possible if both resources in question provide "formal definitions" - definitions that fully define the concept, rather than merely "describe" it.
      +
    • Level of confidence gained on overage: MEDIUM to HIGH (this depends on the domain expertise and the semantic engineering expertise of the mapping author)
    • +
    • Preprocessing: Avoid (could affect interpretation).
    • +
    • Cost: HIGH (Expert curation is the highest level of cost and should only be used if no other justification or combination of justifications can be employed to attain the target level of confidence).
    • +
    • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
    • +
    +
  16. +
  17. Full domain expert review (expert aggregates evidence from within the resource (hierarchial structures, logical axioms, definitions, etc) and outside to determine if the subject and the object entity refer to the same concept). This may involve reviewing papers, links to websites, databases with additional information about the entities, and other sources.
      +
    • Level of confidence gained on overage: MEDIUM to HIGH (this depends on the domain expertise and the semantic engineering expertise of the mapping author)
    • +
    • Preprocessing: Avoid (could affect interpretation).
    • +
    • Cost: VERY HIGH (Expert curation is the highest level of cost and should only be used if no other justification or combination of justifications can be employed to attain the target level of confidence).
    • +
    +
  18. +
+

Examples for levels of evidence

+
    +
  • To determine if two rare genetic diseases as defined by OMIM and Orphanet are same is difficult because we often do not have exactly the same name documented. To avoid the costly review of a rare disease expert (in the absence of proxy mappings), we can leverage disease to gene assocations to determine very similar diseases according to their genotypic profile. + We can furthermore bolster our evidence by comparing the phenotypic profiles. Techniques for doing so range from simple Jaccard (overlap of the associated phenotypic profile of both diseases) to complex methods such as phenodigm that take the ontology semantics into account, or even modern LLM embeddings.
  • +
+

Summary

+

You can never determine if two entities are truly the same. You can only collect evidence for and against a mapping under a specific set of curation rules. To do so, you first determine the conceptual model of the semantic spaces defining the entities you seek to map. Then you define, depending on your use case, your specific curation rules. These rules determine which mapping predicates you use to curate, and which level of evidence you require for asserting a specific entity mapping. While mappings are, therefore, inherently connected to a use case, the goal of SSSOM and other mapping standardisation efforts is to make mappings usable across use cases.

+

Out of context: a reminder of how mapping predicates work

+

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/change-files-pull-request/index.html b/howto/change-files-pull-request/index.html new file mode 100644 index 000000000..acecf490d --- /dev/null +++ b/howto/change-files-pull-request/index.html @@ -0,0 +1,3728 @@ + + + + + + + + + + + + + + + + + + + + + + + + Change a pull request - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

How to change files in an existing pull request

+

Using GitHub

+

Warning: You should only use this method if the files you are editing are reasonably small (less than 1 MB).

+

This method only works if the file you want to edit has already been editing as part of the pull request.

+
    +
  • Go to the pull request on GitHub, and click on the "Files Changed" tab up top
  • +
  • Find the file you want to edit in the pull request.
  • +
  • On the right, click on on the three ..., and then "Edit file".
  • +
+

changepr

+

If this option is greyed out, it means that - you don't have edit rights on the repository - the edit was made from a different fork, and the person that created the pull request did not activate the "Allow maintainers to make edits" option when submitting the PR - the pull request has already been merged

+
    +
  • Do the edits, and then commit changes, usually to the same branch + changepr
  • +
+

Using GitHub Desktop

+
    +
  1. On the pull request in GitHub, click the copy button next to the branch name (see example below)
  2. +
+

image

+
    +
  1. +

    In GitHub Desktop, click the branch switcher button and paste in branch name (or you can type it in). +image

    +
  2. +
  3. +

    Now you are on the branch, you can open the files to be edited and make your intended changes and push via the usual workflow.

    +
  4. +
+

If the branch is on a fork

+
    +
  1. +

    If a user forked the repository and created a branch, you can find that branch by going to the branch switcher button in GitHub Desktop, click on Pull Requests (next to Branches) and looking for that pull request +image

    +
  2. +
  3. +

    Select that pull request and edit the appropriate files as needed and push via the usual workflow.

    +
  4. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/clone-mondo-repo/index.html b/howto/clone-mondo-repo/index.html new file mode 100644 index 000000000..1185e1210 --- /dev/null +++ b/howto/clone-mondo-repo/index.html @@ -0,0 +1,3684 @@ + + + + + + + + + + + + + + + + + + + + + + + + Clone a repository - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Clone a repository

+ +

Cloning a repo

+

Prerequisite: Install Github Desktop +Github Desktop can be downloaded here

+

For the purpose of going through this how-to guide, we will use Mondo as an example. However, all obo onotlogies can be cloned in a similar way.

+
    +
  1. Open the GitHub repository where the ontology you want to clone lives, in this case, Mondo GitHub repository
  2. +
  3. Click Code
  4. +
+

image

+
    +
  1. Click 'Open with GitHub Desktop'
  2. +
+

image

+
    +
  1. You will be given an option as to where to save the repository. I have a folder called 'git' where I save all of my local repos.
  2. +
  3. This will open GitHub Desktop and the repo should start downloading. This could take some time depending on the size of the repository.
  4. +
+

Open the Ontology in Protege

+
    +
  1. Open Protege
  2. +
  3. Go to: File -> Open
  4. +
  5. Navigate to mondo/src/ontology/mondo-edit.obo and open this file in Protege + Note: mondo can be replaced with any ontology that is setup using the ODK as their architecture should be the same.
  6. +
+

If this all works okay, you are all set to start editing!

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/create-new-term/index.html b/howto/create-new-term/index.html new file mode 100644 index 000000000..90d7ce48f --- /dev/null +++ b/howto/create-new-term/index.html @@ -0,0 +1,3655 @@ + + + + + + + + + + + + + + + + + + + + + + + + Creating New Terms in Protege - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Creating a New Ontology Term in Protege

+
    +
  1. +

    To create a new term, the 'Asserted view' must be active (not the 'Inferred view').

    +
  2. +
  3. +

    In the Class hierarchy window, click on the 'Add subclass' button at the upper left of the window.

    +
  4. +
+

subclass

+
    +
  1. A pop-up window will appear asking you to enter the Name of the new term. When you enter the term name, you will see your ID automatically populate the IRI box. Once you have entered the term, click 'OK' to save the new term. You will see it appear in the class hierarchy.
  2. +
+

newterm

+
    +
  1. In the annotation window add:
  2. +
  3. Definition
      +
    1. Click on the + next to Annotations
    2. +
    3. Select defintion (if there are multiple, you should use IAO:0000115)
    4. +
    5. Add the textual definition in the pop-up box.
    6. +
    7. Click OK.
    8. +
    +
  4. +
+

annotation

+
 2. Add Definition References
+    1. Click on the circle with the ‘@’ in it next to definition and in the resulting pop-up click on the ```+``` to add a new ref, making sure they are properly formatted with a database abbreviation followed by a colon, followed by the text string or ID. Examples: ```PMID:27450630```.
+    2. Click OK.
+    3. Add each definition reference separately by clicking on the ```+``` sign.
+
+

ref 3. Add synonyms and dbxrefs following the same procedure if they are required for the term.

+
    +
  1. Add appropriate logical axioms in the Description by clicking the + sign in the appropriate section (usually SubClass Of) and typing it in, using Tab to autocomplete terms.
  2. +
+

ref

+
Converting to Equivalent To axioms:
+If you want to convert your SubClassOf axioms to EquivalentTo axioms, you can select the appropriate rows and right click, selecting "Convert selected rows to defined class"
+
+
    +
  1. +

    In some cases, logical axioms reuiqre external ontologies (eg in the above example, the newly added CL term has_soma_location in the cerebellar cortex which is an uberon term), it might be necessary to import the term in. For instructions on how to do this, please see the import managment section of your local ontology documentation (an example of that in CL can be found here: https://obophenotype.github.io/cell-ontology/odk-workflows/UpdateImports/)

    +
  2. +
  3. +

    When you have finished adding the term, run the reasoner to ensure that nothing is problematic with the axioms you have added (if there is an issue, you will see it being asserted under owl:Nothing)

    +
  4. +
  5. +

    Save the file on protege and review the changes you have made in your Github Desktop (or use git diff in your terminal if you do not use Github Desktop)

    +
  6. +
  7. +

    See Daily Workflow section for commit, push and merge instructions.

    +
  8. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/create-ontology-from-scratch/index.html b/howto/create-ontology-from-scratch/index.html new file mode 100644 index 000000000..a5e46df0e --- /dev/null +++ b/howto/create-ontology-from-scratch/index.html @@ -0,0 +1,4069 @@ + + + + + + + + + + + + + + + + + + + + + + + + Creating an ontology from scratch - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

How to create an OBO ontology from scratch

+

Editors:

+
    +
  • Nicolas Matentzoglu (@matentzn)
  • +
  • Sabrina Toro (@sabrinatoro)
  • +
+

Summary:

+

This is a guide to build an OBO ontology from scratch. We will focus on the kind of thought processes you want to go through, and providing the following:

+ +

+

Minimal conditions for building an ontology

+

Before reading on, there are three simple rules for when NOT to build an ontology everyone interested in ontologies should master, like a mantra:

+

Do not build a new ontology if:

+
    +
  1. one in scope already exists (none-in-scope condition).
  2. +
  3. something simpler than a full-fledged OWL ontology can do the job (something-simpler-works condition).
  4. +
  5. there is not at least one glass-clear use case written down which could be addressed by the existence of the ontology (killer-use-case condition).
  6. +
+

+

None-in-scope condition

+

Scope is one of the hardest and most debated subjects in the OBO Foundry operation calls. There are essentially two aspects to scope:

+
    +
  1. The entities you intended to model belong to some specific biological categories. For example phenotype, disease, anatomical entity, assay, environmental exposure, biological process, chemical entity. Before setting out to build an ontology, you should get a rough sense of what kind of entities you need to describe your domain. However, this is an iterative process and more entities will be revealed later on.
  2. +
  3. The subject domain you intend to model. For example, you may want to provide an ontology to describe the domain of Alzheimer's Disease, which will need many different kinds of biological entities (like anatomical entity and disease classes).
  4. +
+

As a rule of thumb, you should NOT create a term if another OBO ontology has a branch of for entities of the same kind. For example, if you have to add terms for assays, you should work with the Ontology for Biomedical Investigations to add these to their assay branch.

+

Remember, the vision of OBO is to build a semantically coherent ontology for all of biology, and the individual ontologies in the OBO Foundry should be considered "modules" of this super ontology. You will find that while collaboration is always hard the only way for our community to be sustainable and compete with commercial solutions is to take that hard route and work together.

+

Something-simpler-works condition

+

There are many kinds of semantic artefacts that can work for your use case:

+
    +
  1. Controlled vocabularies: Creating identifiers for concepts in your domain and without too much concern for logical reasoning. Some examples can be are Linked Open Data Vocabularies (LOV) or schema.org vocabularies. Sometimes a table of identifiers in an SQL database is enough.
  2. +
  3. Thesauri: Describe the synonyms used in your domain in a standardised fashion.
  4. +
  5. Taxonomies: Create a hierarchical categorisations for concepts in your domain, without any specific regards for semantics. You just create a hierarchy that "makes some sense" for your use case. Examples: ICD10, United Nations Standard Products and Services Code (UNSPSC).
  6. +
  7. Semantic data models: If you need to define how terms in your database should be constrained in a semantic way (similar to a database schema), then Shape languages like SHEX or SHACL may be much more suitable for your use case. See LinkML tutorials to get a sense of this: you will build a semantic data model in Yaml which can then be exported to SHACL, OWL or JSON Schema (great tutorial, useful to do no matter what).
  8. +
  9. Ontologies: Sets of logical axioms. If you require formal reasoning (and only then!) does it make sense to jump in the deep pit of ontology engineering. This is, by far, the hardest to build of the bunch. You will have to wrestle with Logic, Open World Assumption and many more arcane subjects.
  10. +
+

Think of it in terms of cost. Building a simple vocabulary with minimal axiomatisation is 10x cheaper than building a full fledged domain model in OWL, and helps solving your use case just the same. Do not start building an ontology unless you have some understanding of these alternatives first.

+

Killer-use-case condition

+

Do not build an ontology because someone tells you to or because you "think it might be useful". Write out a proper use case description, for example in the form of an agile user story, convince two or three colleagues this is worthwhile and only then get to work. Many ontologies are created for very vague use cases, and not only do they cost you time to build, they also cost the rest of the community time - time it takes them to figure out that they do not want to use your ontology. Often, someone you trust tells you to build one and you believe they know what they are doing - do not do that. Question the use of building the ontology until you are convinced it is the right thing to do. If you do not care about reasoning (either for validation or for your application), do not build an ontology.

+

+

Basic recipe to start building an ontology

+

Depending on your specific starting points, the way you start will be slightly different, but some common principles apply.

+
    +
  1. Write down the use cases for the ontology (see above). This will determine certain design decisions later on. These should be concrete, like: controlled vocabulary for named entity recognition, logical model of a domain, auto-classification of data.
  2. +
  3. Make a table of all similar ontologies that exist, within and outside OBO (this requires research, and is an essential part of the process). Document exactly in what way they are different from your use case, and why you need to build a new one (see none-in-scope condition above).
  4. +
  5. Determine whether you have something to start from. Often, you will have a database with entities you may wish to turn into classes in your ontology. See starting points below.
  6. +
  7. Gather your tools. You need to think about tools for at least two kinds of workflows to start with:
  8. +
  9. Curation workflows: How will you edit your ontology? Some simple ontologies are edited using tables that link to logical templates. Others are edited primarily with Protege.
  10. +
  11. Continuous integration and release workflows: How will you import terms from other ontologies? How will you ensure the quality of you ontology moving forward?
  12. +
  13. Decide on the Ontology ID (important, do not skip). Changing this later can be extremely costly. Refer to the OBO ID policy for details. An ID should be short and unique.
  14. +
  15. Create a basic set-up for managing your workflows. This comprises (usually) three aspects (you may wish to try and use the Ontology Development Kit - it does exactly that):
  16. +
  17. Make a GitHub repository.
  18. +
  19. Add your editors files (owl, tsv, whatever you decided to use) to that repository.
  20. +
  21. Implement some workflow system, i.e. some way to run commands like release or test, as you will run these repeatedly. A typical system to achieve this is make, and many projects choose to encode their workflows as make targets (ODK, OBI Makfile).
  22. +
  23. Determine the metadata and logical patterns you wish to employ for your curation. Here it is important that you determine what kind of an ontology you want to build.
  24. +
+

Note: Later in the process, you also want to think about the following:

+ +

+

Starting points

+

There are many different starting points for building an ontology:

+
    +
  • We have a database or a dataset and want to build an ontology that covers entities in that database. As a variation, you have two or more databases that you need to integrate.
  • +
  • We already have a basic ontology in our domain (a cell ontology, an anatomy ontology), but need to build an extension (e.g. a species specific extension to an existing cross-species ontology).
  • +
  • We have controlled vocabulary or a list of standard or commonly used terms for a domain and want to formalise them in an ontology for interoperability and machine-readability, with versioning support to manage evolution. Sometimes, we may even wish to simply using ontology infrastructure (tools and best practices) to maintain a quite informal vocabulary structure.
  • +
  • There are existing ontologies that are, however, not quite fit for purpose (even if they should be) and there's no way to make any of them right, so I have to create Yet Another Variant.
  • +
  • We have a large, hierarchical enumeration in a datamodel that pulls terms from many ontologies.
  • +
  • We need to build a completely new ontology for a domain that currently does not even have a controlled vocabulary. This case almost never happens nowadays. In this case, all domain knowledge (concepts and their relations) is somewhere in the heads of the experts.
  • +
+

+

What kind of ontology do you need?

+

There are two fundamentally different kinds of ontologies which need to be distinguished:

+
    +
  1. Project ontologies (sometimes referred to as application ontologies) are ontologies that are developed to fulfil a specific use case, like:
  2. +
  3. Grouping data in your project
  4. +
  5. Indexing search engines or your organisation
  6. +
  7. Informing Natural Language Processing applications
  8. +
  9. Populating the biocuration interface your organisation provides to enable curators to annotate data
  10. +
  11. Domain ontologies are ontologies which seek to model a domain of discourse. In particular they:
  12. +
  13. Reflect scientific consensus and are therefore social and collaborative enterprises subject to change
  14. +
  15. Are build with re-use in mind:
      +
    • They re-use terms from other domain ontologies
    • +
    • They provide terms intended for re-use by other ontologies
    • +
    • They work with other ontologies on implementing consistent logical patterns that apply across all domain ontologies in the community.
    • +
    +
  16. +
  17. Are logically consistent with all ontologies they depend on, refer to, import.
  18. +
+

Some things to consider:

+
    +
  • It is extremely hard to build domain ontologies. Do not try to do that without a proper sustainability plan (i.e. considerable resources over multiple years).
  • +
  • Project ontologies are not bad domain ontologies. Project ontologies can be build according to the same standards as domain ontologies. While controversial, the OBO Foundry is currently (March 2022) debating whether project ontologies are admissible to the OBO ontology library.
  • +
  • Project ontologies can have huge impact. One of the most impactful ontologies in the biomedical world is the Experimental Factor Ontology (EFO) - a massive project ontology used for many applications from knowledge graph integration to biocuration.
  • +
  • Project ontologies are allowed to change the semantics of imported ontologies, for example by adding additional axioms or even removing some - anything necessary to achieve the use case!
  • +
  • Domain ontologies (in the OBO world) are not allowed to change semantics of imported ontologies.
  • +
  • Project ontologies can import terms from domain ontologies, and coin their own terms where necessary. This can be a good option if resources are scarce, and there is not enough time for consensus building with the community or the often lengthy contribution workflows. "I just need some terms" usually points to "I need a project ontology".
  • +
  • Domain ontologies seek to model a domain exhaustively: any concept that "belongs" to that domain is a strong candidate for a term.
  • +
+

It is imperative that it is clear which of the two you are building. Project ontologies sold as domain ontologies are a very common practice and they cause a lot of harm for open biomedical data integration.

+

+

Example: Building Vertebrate Breed Ontology

+

We will re-iterate some of the steps taken to develop the Vertebrate Breed Ontology. At the time of this writing, the VBO is still in early stages, but it nicely illustrates all the points above.

+

Use case

+

See here. Initial interactions with the OMIA team further determined more long term goals such as phenotypic similarity and reasoning.

+

Similar ontologies

+

Similar ontologies. While there is no ontology OBO ontology related to breeds, the Livestock Breed Ontology (LBO) served as an inspiration (much different scale). NCBI taxonomy is a more general ontology about existing taxa as they occur in the wild.

+

Starting point

+

Our starting point was the raw OMIA data.

+
    +
  • We got a list of breeds from DAD-IS, which includes name of the breed, transboundary name, species, country, and more
  • +
  • We first had to understand the data and how the different pieces of data relate to each other.
  • +
  • Some breed names are the same, but refer to either different species and/or different countries
  • +
  • Several breeds share a common "transboundary name", which represent the original breed from which they come from
  • +
  • We needed to determine what a single concept / an indentifiable term would be
  • +
  • In order to define a single breed, we needed to include the name of the breed, the transboundary name (when applicable), the species, and the country
  • +
  • We needed to understand the metadata and how each concepts relate to each other
  • +
  • 'breed' is an instance of 'species', therefore 'species' should be the parent term of 'breeds' (using a is_a relation)
  • +
  • when applicable, 'transboundary' should be the parent term of 'breeds'
  • +
  • Note about the concept of "species": is "species" equivalent to the NCBI Taxon representing "species"? + Design decision: Since species represents the same concept as ‘species’ in NCBI, the ontology should be built ‘on top of’ NCBI terms to avoid confusion of concepts and to avoid conflation of terms with the same concept
  • +
+

Warnings based on our experience:

+
    +
  • Always retain links to original source ids (encoding problems, update problems)
  • +
  • Always add provenance to as much information as you can (where do labels come from?)
  • +
+

Gather your tools

+

For us this was using Google Sheets, ROBOT & ODK.

+

The Ontology ID

+

At first, we chose to name the ontology "Unified Breed Ontology" (UBO). Which meant that for everything from ODK setup to creating identifiers for our terms, we used the UBO prefix. Later in the process, we decided to change the name to "Vertebrate Breed Ontology". Migrating all the terms and the ODK setup from ubo to vbo required some expert knowledge on the workings of the ODK, and created an unnecessary cost. We should have finalised the choice of name first.

+

Create a basic set up

+
    +
  1. Making a Repo with ODK
  2. +
  3. Develop a workflow that turns a Google Sheet into a component.
  4. +
+

Determine the metadata and logical patterns you wish to employ.

+
    +
  • We decided to build a domain ontology, for the representation of vertebrate breeds.
  • +
  • As our initial data is relatively flat, we decided to use ROBOT templates and Google Sheets to manage them.
  • +
+

Some notes, need to be cleaned up (ignore)

+
    +
  • Creation of components: for basic information: each “layer” is built in a google sheet for example:
  • +
  • Transboundary: are children of species
  • +
  • Breeds: are children of either species or transboundary (therefore we need transboundary and species in order to be able to add breeds)
  • +
  • Addition of new information as we have them
  • +
  • E.g. adding xref and synonym from OMIA
  • +
  • Upcoming: xref and synonym form another database.
  • +
  • Future: Continue to add to the original document and/or create new components
  • +
+

Acknowledgements

+

Thank you to Melanie Courtot, Sierra Moxon, John Graybeal, Chris Stoeckert, Lars Vogt and Nomi Harris for their helpful comments on this how-to.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/daily-curator-workflow/index.html b/howto/daily-curator-workflow/index.html new file mode 100644 index 000000000..00c1e228f --- /dev/null +++ b/howto/daily-curator-workflow/index.html @@ -0,0 +1,3866 @@ + + + + + + + + + + + + + + + + + + + + + + + + Daily Workflow - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Daily Ontology Curator Workflow with GitHub

+

Updating the local copy of the ontology with 'git pull'

+
    +
  1. +

    Navigate to the ontology directory of go-ontology: cd repos/MY-ONTOLOGY/src/ontology.

    +
  2. +
  3. +

    If the terminal window is not configured to display the branch name, type: git status. You will see:

    +
  4. +
+

On branch [master] [or the name of the branch you are on] + Your branch is up-to-date with 'origin/master'.

+
    +
  1. +

    If you’re not in the master branch, type: git checkout master.

    +
  2. +
  3. +

    From the master branch, type: git pull. This will update your master branch, and all working branches, with the files that are most current on GitHub, bringing in and merging any changes that were made since you last pulled the repository using the command git pull. You will see something like this:

    +
  4. +
+
~/repos/MY-ONTOLOGY(master) $ git pull
+remote: Counting objects: 26, done.
+remote: Compressing objects: 100% (26/26), done.
+remote: Total 26 (delta 12), reused 0 (delta 0), pack-reused 0
+Unpacking objects: 100% (26/26), done.
+From https://github.com/geneontology/go-ontology
+   580c01d..7225e89  master     -> origin/master
+ * [new branch]     issue#13029 -> origin/issue#13029
+Updating 580c01d..7225e89
+Fast-forward
+ src/ontology/go-edit.obo | 39 ++++++++++++++++++++++++---------------
+ 1 file changed, 24 insertions(+), 15 deletions(-)
+~/repos/MY-ONTOLOGY(master) $
+
+

Creating a New Working Branch with 'git checkout'

+
    +
  1. +

    When starting to work on a ticket, you should create a new branch of the repository to edit the ontology file.

    +
  2. +
  3. +

    Make sure you are on the master branch before creating a new branch. If the terminal window is not configured to display the branch name, type: git status to check which is the active branch. If necessary, go to master by typing git checkout master.

    +
  4. +
  5. +

    To create a new branch, type: git checkout -b issue-NNNNN in the terminal window. For naming branches, we recommend using the string 'issue-' followed by the issue number. For instance, for this issue in the tracker: https://github.com/geneontology/go-ontology/issues/13390, you would create this branch: git checkout -b issue-13390. Typing this command will automatically put you in the new branch. You will see this message in your terminal window:

    +
  6. +
+
~/repos/MY-ONTOLOGY/src/ontology(master) $ git checkout -b issue-13390
+Switched to a new branch 'issue-13390'
+~/repos/MY-ONTOLOGY/src/ontology(issue-13390) $
+
+

Continuing work on an existing Working Branch

+
    +
  1. +

    If you are continuing to do work on an existing branch, in addition to updating master, go to your branch by typing git checkout [branch name]. Note that you can view the existing local branches by typing git branch -l.

    +
  2. +
  3. +

    OPTIONAL: To update the working branch with respect to the current version of the ontology, type git pull origin master. + This step is optional because it is not necessary to work on the current version of the ontology; all changes will be synchronized when git merge is performed.

    +
  4. +
+

Loading, navigating and saving the Ontology in Protégé

+
    +
  1. +

    Before launching Protégé, make sure you are in the correct branch. To check the active branch, type git status.

    +
  2. +
  3. +

    Click on the 'File' pulldown. Open the file: go-edit.obo. The first time, you will have to navigate to repos/MY-ONTOLOGY/src/ontology. Once you have worked on the file, it will show up in the menu under 'Open'/'Recent'.

    +
  4. +
  5. +

    Click on the 'Classes' tab.

    +
  6. +
  7. +

    Searching: Use the search box on the upper right to search for a term in the ontology. Wait for autocomplete to work in the pop-up window.

    +
  8. +
  9. +

    Viewing a term: Double-click on the term. This will reveal the term in the 'Class hierarchy' window after a few seconds.

    +
  10. +
  11. +

    Launching the reasoner: To see the term in the 'Class hierarchy' (inferred) window, you will need to run the 'ELK reasoner'. 'Reasoner' > select ELK 0.4.3, then click 'Start reasoner'. Close the various pop-up warnings about the ELK reasoner. You will now see the terms in the inferred hierarchy.

    +
  12. +
  13. +

    After modification of the ontology, synchronize the reasoner. Go to menu: 'Reasoner' > ' Synchronize reasoner'.

    +
  14. +
  15. +

    NOTE: The only changes that the reasoner will detect are those impacting the ontology structure: changes in equivalence axioms, subclasses, merges, obsoletions, new terms.

    +
  16. +
  17. +

    TIP: When adding new relations/axioms, 'Synchronize' the reasoner. When deleting relations/axioms, it is more reliable to 'Stop' and 'Start' the reasoner again.

    +
  18. +
  19. +

    Use File > Save to save your changes.

    +
  20. +
+

+

Committing, pushing and merging your changes to the repository

+
    +
  1. +

    Review: Changes made to the ontology can be viewed by typing git diff in the terminal window. If there are changes that have already been committed, the changes in the active branch relative to master can be viewed by typing git diff master.

    +
  2. +
  3. +

    Commit: Changes can be committed by typing: git commit -m ‘Meaningful message Fixes #ticketnumber’ go-edit.obo.

    +

    For example:

    +
       git commit -m ‘hepatic stellate cell migration and contraction and regulation terms. Fixes #13390’ go-edit.obo
    +
    +

    This will save the changes to the go-edit.obo file. The terminal window will show something like:

    +
     ~/repos/MY-ONTOLOGY/src/ontology(issue-13390) $ git commit -m 'Added hepatic stellate cell migration and contraction and regulation terms. Fixes #13390' go-edit.obo
    + [issue-13390 dec9df0] Added hepatic stellate cell migration and contraction and regulation terms. Fixes #13390
    + 1 file changed, 79 insertions(+)
    + ~/repos/MY-ONTOLOGY/src/ontology(issue-13390) $
    +
    +
      +
    • NOTE: The word 'fixes' is a magic word in GitHub; when used in combination with the ticket number, it will automatically close the ticket. In the above example, when the file is merged in GitHub, it will close issue number 13390. Learn more on this GitHub Help Documentation page about 'Closing issues via commit messages'.
    • +
    • 'Fixes' is case-insensitive.
    • +
    • If you don't want to close the ticket, just refer to the ticket # without the word 'Fixes'. The commit will be associated with the correct ticket but the ticket will remain open.
    • +
    • NOTE: It is also possible to type a longer message than allowed when using the '-m' argument; to do this, skip the -m, and a vi window (on mac) will open in which an unlimited description may be typed.
    • +
    • TIP: Git needs to know who is committing changes to the repository, so the first time you commit, you may see the following message:
    • +
    +

    Committer: Kimberly Van Auken vanauken@kimberlukensmbp.dhcp.lbnl.us + Your name and email address were configured automatically based on your username and hostname. Please check that they are accurate.

    + +
  4. +
  5. +

    Push: To incorporate the changes into the remote repository, type: git push origin mynewbranch.

    +

    Example:

    +
     git push origin issue-13390
    +
    +
      +
    • TIP: Once you have pushed your changes to the repository, they are available for everyone to see, so at this stage you can ask for feedback.
    • +
    +
  6. +
  7. +

    Pull

    +
      +
    1. In your browser, return to the GO Ontology repository on GitHub.
    2. +
    3. Navigate to the tab labeled as 'Code' geneontology/go-ontology/code. You will see your commit listed at the top of the page in a light yellow box. If you don’t see it, click on the 'Branches' link to reveal it in the list, and click on it.
    4. +
    5. Click the green button 'Compare & pull request' on the right.
    6. +
    7. You may now add comments and ask a colleague to review your pull request. If you want to have the ticket reviewed before closing it, you can select a reviewer for the ticket before you make the pull request by clicking on the 'Reviewers' list and entering a GitHub identifier (e.g. @superuser1). The reviewer will be notified when the pull request is submitted. Since the Pull Request is also a GitHub issue, the reviewer’s comments will show up in the dialog tab of the pull request, similarly to any other issue filed on the tracker.
    8. +
    9. The diff for your file is at the bottom of the page. Examine it as a sanity check.
    10. +
    11. Click on the green box 'Pull request' to generate a pull request.
    12. +
    13. Wait for the Travis checks to complete (this can take a few minutes). If the Travis checks failed, go back to your working copy and correct the reported errrors.
    14. +
    +
  8. +
  9. +

    Merge If the Travis checks are succesful and if you are done working on that branch, merge the pull request. Confirming the merge will close the ticket if you have used the word 'fixes' in your commit comment. + NOTE: Merge the branches only when the work is completed. If there is related work to be done as a follow up to the original request, create a new GitHub ticket and start the process from the beginning.

    +
  10. +
  11. +

    Delete your branch on the repository using the button on the right of the successful merge message.

    +
  12. +
  13. +

    You may also delete the working branch on your local copy. Note that this step is optional. However, if you wish to delete branches on your local machine, in your terminal window:

    +
      +
    1. Go back to the master branch by typing git checkout master.
    2. +
    3. Update your local copy of the repository by typing git pull origin master
    4. +
    5. Delete the branch by typing git branch -d workingbranchname. + Example: git branch -d issue-13390
    6. +
    +
  14. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/deal-with-large-ontologies/index.html b/howto/deal-with-large-ontologies/index.html new file mode 100644 index 000000000..49bc291ee --- /dev/null +++ b/howto/deal-with-large-ontologies/index.html @@ -0,0 +1,3857 @@ + + + + + + + + + + + + + + + + + + + + + + + + Dealing with Large Ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Dealing with huge ontologies in your import chain

+

Dealing with very large ontologies, such as the Protein Ontology (PR), NCBI Taxonomy (NCBITaxon), Gene Ontology (GO) and the CHEBI Ontology is a big challenge when developing ontologies, especially if we want to import and re-use terms from them. There are two major problems:

+
    +
  1. It currently takes about 12–16 GB of memory to process PR and NCBITaxon – memory that many of us do not have available.
  2. +
  3. The files are so large, pulling them over the internet can lead to failures, timeouts and other problems.
  4. +
+

There are a few strategies we can employ to deal with the problem of memory consumption:

+
    +
  1. We try to reduce the memory footprint of the import as much as possible. In other words: we try to not do the fancy stuff ODK does by default when extracting a module, and keep it simple.
  2. +
  3. We manage the import manually ourselves (no import)
  4. +
+

To deal with file size, we:

+
    +
  1. Instead of importing the whole thing, we import curated subsets.
  2. +
  3. If available, we use gzipped (compressed) versions.
  4. +
+

All four strategies will be discussed in the following. We will then look a bit

+

Overwrite ODK default: less fancy, custom modules

+

The default recipe for creating a module looks something like this:

+
imports/%_import.owl: mirror/%.owl imports/%_terms_combined.txt
+    if [ $(IMP) = true ]; then $(ROBOT) query  -i $< --update ../sparql/preprocess-module.ru \
+        extract -T imports/$*_terms_combined.txt --force true --copy-ontology-annotations true --individuals exclude --method BOT \
+        query --update ../sparql/inject-subset-declaration.ru --update ../sparql/postprocess-module.ru \
+        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi
+
+.PRECIOUS: imports/%_import.owl
+
+

(Note: This snippet was copied here on 10 February 2021 and may be out of date by the time you read this.)

+

As you can see, a lot of stuff is going on here: first we run some preprocessing (which is really costly in ROBOT, as we need to load the ontology into Jena, and then back into the OWL API – so basically the ontology is loaded three times in total), then extract a module, then run more SPARQL queries etc, etc. Costly. For small ontologies, this is fine. All of these processes are important to mitigate some of the shortcomings of module extraction techniques, but even if they could be sorted in ROBOT, it may still not be enough.

+

So what we can do now is this. In your ont.Makefile (for example, go.Makefile, NOT Makefile), located in src/ontology, you can add a snippet like this:

+
imports/pr_import.owl: mirror/pr.owl imports/pr_terms_combined.txt
+    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/pr_terms_combined.txt --force true --method BOT \
+        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi
+
+.PRECIOUS: imports/pr_import.owl
+
+

Note that all the % variables and uses of $* are replaced by the ontology ID in question. Adding this to your ont.Makefile will overwrite the default ODK behaviour in favour of this new recipe.

+

The ODK supports this reduced module out of the box. To activate it, do this:

+
import_group:
+  products:
+    - id: pr
+      use_gzipped: TRUE
+      is_large: TRUE
+
+

This will (a) ensure that PR is pulled from a gzipped location (you have to check whether it exists though. It must correspond to the PURL, followed by the extension .gz, for example http://purl.obolibrary.org/obo/pr.owl.gz) and (b) that it is considered large, so the default handling of large imports is activated for pr, and you don't need to paste anything into ont.Makefile.

+

If you prefer to do it yourself, in the following sections you can find a few snippets that work for three large ontologies. Just copy and paste them into ont.Makefile, and adjust them however you wish.

+

Protein Ontology (PR)

+
imports/pr_import.owl: mirror/pr.owl imports/pr_terms_combined.txt
+    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/pr_terms_combined.txt --force true --method BOT \
+        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi
+
+.PRECIOUS: imports/pr_import.owl
+
+

NCBI Taxonomy (NCBITaxon)

+
imports/ncbitaxon_import.owl: mirror/ncbitaxon.owl imports/ncbitaxon_terms_combined.txt
+    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/ncbitaxon_terms_combined.txt --force true --method BOT \
+        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi
+
+.PRECIOUS: imports/ncbitaxon_import.owl
+
+

CHEBI

+
imports/chebi_import.owl: mirror/chebi.owl imports/chebi_terms_combined.txt
+    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/chebi_terms_combined.txt --force true --method BOT \
+        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi
+
+.PRECIOUS: imports/chebi_import.owl
+
+

Feel free to use an even cheaper approach, even one that does not use ROBOT, as long as it produces the target of the goal (e.g. imports/chebi_import.owl).

+

Use slims when they are available

+

For some ontologies, you can find slims that are much smaller than full ontology. For example, NCBITaxon maintains a slim for OBO here: http://purl.obolibrary.org/obo/ncbitaxon/subsets/taxslim.owl, which smaller than the 1 or 2 GB of the full version. Many ontologies maintain such slims, and if not, probably should. (I would really like to see an OBO slim for Protein Ontology!)

+

(note the .obo file is even smaller but currently robot has issues getting obo files from the web)

+

You can also add your favourite taxa to the NCBITaxon slim by simply making a pull request on here: https://github.com/obophenotype/ncbitaxon/blob/master/subsets/taxon-subset-ids.txt

+

You can use those slims simply like this:

+
import_group:
+  products:
+    - id: ncbitaxon
+      mirror_from: http://purl.obolibrary.org/obo/ncbitaxon/subsets/taxslim.obo
+
+

Manage imports manually

+

This is a real hack – and we want to strongly discourage it – but sometimes, importing an ontology just to import a single term is total overkill. What we do in these cases is to maintain a simple template to "import" minimal information. I can't stress enough that we want to avoid this, as such information will necessarily go out of date, but here is a pattern you can use to handle it in a sensible way:

+

Add this to your src/ontology/ont-odk.yaml:

+
import_group:
+  products:
+    - id: my_ncbitaxon
+
+

Then add this to src/ontology/ont.Makefile:

+
mirror/my_ncbitaxon.owl:
+    echo "No mirror for $@"
+
+imports/my_ncbitaxon_import.owl: imports/my_ncbitaxon_import.tsv
+    if [ $(IMP) = true ]; then $(ROBOT) template --template $< \
+  --ontology-iri "$(ONTBASE)/$@" --output $@.tmp.owl && mv $@.tmp.owl $@; fi
+
+.PRECIOUS: imports/my_ncbitaxon_import.owl
+
+

Now you can manage your import manually in the template, and the ODK will not include your manually-curated import in your base release. But again, avoid this pattern for anything except the most trivial case (e.g. you need one term from a huge ontology).

+

File is too large: Network timeouts and long runtimes

+

Remember that ontologies are text files. While this makes them easy to read in your browser, it also makes them huge: from 500 MB (CHEBI) to 2 GB (NCBITaxon), which is an enormous amount.

+

Thankfully, ROBOT can automatically read gzipped ontologies without the need of unpacking. To avoid long runtimes and network timeouts, we can do the following two things (with the new ODK 1.2.26):

+
import_group:
+  products:
+    - id: pr
+      use_gzipped: TRUE
+
+

This will try to append .gz to the default download location (http://purl.obolibrary.org/obo/pr.owl → http://purl.obolibrary.org/obo/pr.owl.gz). Note that you must make sure that this file actually exists. It does for CHEBI and the Protein Ontology, but not for many others.

+

If the file exists, but is located elsewhere, you can do this:

+
import_group:
+  products:
+    - id: pr
+      mirror_from: http://purl.obolibrary.org/obo/pr.owl.gz
+
+

You can put any URL in mirror_from (including non-OBO ones!)

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/deploy-custom-obo-dashboard/index.html b/howto/deploy-custom-obo-dashboard/index.html new file mode 100644 index 000000000..6b0572df1 --- /dev/null +++ b/howto/deploy-custom-obo-dashboard/index.html @@ -0,0 +1,3795 @@ + + + + + + + + + + + + + + + + + + + + + + + + Deploy a custom OBO-Dashboard - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + + + + + + + +

How to deploy a custom OBO dashboard

+

Updated 2022 Workflow

+

We developed a completely automated variant of the Custom OBO Dashboard Workflow, which does not require any local installation.

+

deploy-custom-obo-dashboard workflow

+
    +
  1. Create a repository using the Dashboard template repository. (How to create a repository from a template)
  2. +
  3. Modify the dashboard-config.yml file, in particular the ontologies section:
      +
    1. Important: Add your ontology ID to the ID 'id' field
    2. +
    3. Add the path to your ontology to the mirror_from field.
    4. +
    +
  4. +
  5. Optional: use the profile section to overwrite the custom robot report profile and add custom checks!
  6. +
+

yaml + profile: + baseprofile: "https://raw.githubusercontent.com/ontodev/robot/master/robot-core/src/main/resources/report_profile.txt" + custom: + - "WARN\tfile:./sparql/missing_xrefs.sparql"

+
    +
  1. +

    Click on Settings > Pages to configure the GitHub pages. Set the Source to deploy from branch, and Branch to build from main (or master if you are still using the old default) and /(root) as directory. Hit Save.

    +

    image

    +
  2. +
  3. +

    Click on the Actions tab in your repo. On the left, select the Run dashboard workflow and click on the Run workflow button. This action will rebuild the dashboard and make a pull request with the changes.

    +
  4. +
  5. Review and merge the pull request. Once it is merged, GitHub will automatically rebuild your dashboard website.
  6. +
  7. After 5 minutes, click on "Settings" > "Pages" again. You should now a new section with information where your site is deployed: + image
  8. +
  9. Click on Visit site and you should find your new shiny dashboard page!
  10. +
+

Troubloushooting

+

Error on GitHub Action - Run dashboard section

+

Failed: make dashboard ROBOT_JAR=/tools/robot.jar ROBOT=robot -B with return code 2

+

There is a known bug at the moment requiring at least one ontology with a warning, error, info and pass, see https://github.com/OBOFoundry/OBO-Dashboard/issues/85.

+
    +
  1. In your dashboard-config.yml, add a temporary ontology we created to make this work. This is already in the Dashboard template repository.
  2. +
+
ontologies:
+  custom:
+    - id: tmp
+      mirror_from: "https://raw.githubusercontent.com/monarch-ebi-dev/robot_tests/master/custom-dashboard.owl"
+
+

Error on GitHub Action - Create Pull Request section

+

remote: Permission to <name of the user or organization>/<name of the repository>.git denied to github-actions[bot].

+

You need to update the workflow permission for the repository.

+
    +
  1. Click on Settings, then Actions on the left menu, then General.
  2. +
  3. Scroll down to the 'Workflow permissions section. Select the option 'Read and write permissions'. Save.
  4. +
+

Error: GitHub Actions is not permitted to create or approve pull requests.

+

You need to enable GitHub Actions to create pull requests.

+
    +
  1. Click on Settings, then Actions on the left menu, then General.
  2. +
  3. Scroll down to the 'Workflow permissions section. Click on the 'Allow GitHub Actions to create and approve pull requests' checkbox.
  4. +
+

2021 Edition

+

Contributed by @XinsongDu, edited by @matentzn

+
    +
  1. Clone https://github.com/OBOFoundry/obo-nor.github.io and copy all its contents to a new GitHub repo under your account. Ensure that the .gitignore from the obo-nor.github.io repo is also copied to your new repo (it is frequently skipped or hidden from the user in Finder or when using the cp command) and push to everything to GitHub.
  2. +
  3. Pull the Ontology Development Kit from Docker Hub (can take a while):
  4. +
+
docker pull obolibrary/odkfull
+
+
    +
  1. Modify the dashboard-config.yml file, in particular the ontologies section:
  2. +
  3. Important: Add your ontology ID to the ID 'id' field
  4. +
  5. Add the path to your ontology to the mirror_from field.
  6. +
  7. Get the "base uri namespace" of the ontology using the following steps: + a. Open the ontology in Protégé + b. Select a class and press "command + u" (MacOS), the stem of the path would be the base URI namespace (e.g., in EDAM ontology, the base uri namespace is http://edamontology.org/, for Uberon it would be http://purl.obolibrary.org/obo/UBERON_)
  8. +
  9. Add the base uri namespace to 'base_ns' field of your ontology in the dashboard-config.yml
  10. +
  11. (As of October 2021 make sure there are multiple ontologies in the dashboard-config.yml, otherwise errors would be reported while running the code. There are currently some bugs in the dashboard code that require at least 2 or 3 ontologies in the list).
  12. +
  13. In the Makefile uncomment the # before pip install networkx==2.6.2 to ensure the correct network x version is installed.
  14. +
  15. Run sh run-dash.sh (make sure dashboard folder is empty before running, e.g. rm -rf dashboard/*).
  16. +
  17. When run successfully, push all changes to GitHub.
  18. +
  19. Go to GitHub repo you just created, and go to Settings, then Pages, and select your main/master branch as "source", and your root directory. You will see a website URL highlighted in green, where your OBO dashboard is deployed.
  20. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/edit-in-protege/index.html b/howto/edit-in-protege/index.html new file mode 100644 index 000000000..e95b58f97 --- /dev/null +++ b/howto/edit-in-protege/index.html @@ -0,0 +1,3778 @@ + + + + + + + + + + + + + + + + + + + + + + + + Edit in Protege - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+ +
+ + + +
+
+ + + + + + + + + + + + + +

Editing a term in protege

+

Before you start:

+
    +
  • make sure you are working on a branch here.
  • +
  • make sure you have the editor's file open in Protege (in ODK ontologies, located in: ./src/ontology/ONT-edit.owl) where ONT is the name of your ontology (eg mondo-edit.owl for MONDO)
  • +
  • familiarise yourself with the user interface of protege
  • +
+

Adding, editing, annotating and deleting axioms

+

Adding annotations

+

Using Protégé you can add annotations such as labels, definitions, synonyms, database cross references (dbxrefs) to any OWL entity. The panel on the right, named Annotations, is where these annotations are added. OBO Foundry ontologies includes a pre-declared set of annotation properties. The most commonly used annotations are below.

+
    +
  • rdfs:label
  • +
  • definition
  • +
  • has_exact_synonym
  • +
  • has_broad_synonym
  • +
  • has_narrow_synonym
  • +
  • has_related synonym
  • +
  • database_cross_reference
  • +
  • rdfs:comment
  • +
+

Note: OBO ontologies allow only one rdfs:label, definition, and comment.

+

Note, most of these are bold in the annotation property list:

+

+

Use this panel to add a definition to the class you created. Select the + button to add an annotation to the selected entity. Click on the annotation 'definition' on the left and copy and paste in the definition to the white editing box on the right. Click OK.

+

Example (based on MONDO):

+

Definition: A disorder characterized by episodes of swelling under the skin (angioedema) and an elevated number of the white blood cells known as eosinophils (eosinophilia). During these episodes, symptoms of hives (urticaria), fever, swelling, weight gain and eosinophilia may occur. Symptoms usually appear every 3-4 weeks and resolve on their own within several days. Other cells may be elevated during the episodes, such as neutrophils and lymphocytes. Although the syndrome is often considered a subtype of the idiopathic hypereosinophilic syndromes, it does not typically have organ involvement or lead to other health concerns.

+

+

+

Definitions in OBO ontologies should have a 'database cross reference' (dbxref), which is a reference to the definition source, such as a paper from the primary literature or another database. For references to papers, we cross reference the PubMed Identifier in the format, PMID:XXXXXXXX. (Note, no space)

+

To add a dbxref to the definition:

+
    +
  1. Click the @ symbol next to the definition
  2. +
  3. Click the + button next in the pop-up window
  4. +
  5. Scroll up on the left hand side until you find 'database_cross_reference', and click it
  6. +
  7. Add the PMID in the editing box (PMID:25527564). _Note: the PMID should not have any spaces)
  8. +
  9. Click OK
  10. +
  11. Add the additional dbxref (e.g., adding GARD:0013029)
  12. +
  13. The dbxrefs should appear as below.
  14. +
+

+

+

Add Synonyms and Database cross reference

+

To add a synonym:

+
    +
  1. Select the + button to add an annotation to the selected entity
  2. +
  3. Add the synonyms as 'has_exact_synonym' (note: use appropriate synonym annotation)
  4. +
  5. Synonyms should have a reference to it
  6. +
  7. Click the @ symbol next to the synonym
  8. +
  9. Click the + button
  10. +
  11. Select database_cross_reference on the left panel and add your reference to the Literal tab on the right hand side
  12. +
+

+

The Class description view

+

We have seen how to add sub/superclasses and annotate the class hierarchy. Another way to do the same thing is via the Class description view. When an OWL class is selected in the entities view, the right-hand side of the tab shows the class description panel. If we select the 'vertebral column disease' class, we see in the class description view that this class is a "SubClass Of" (= has a SuperClass) the 'musculoskeletal system disease' class. Using the (+) button beside "SubClass Of" we could add another superclass to the 'skeletal system disease' class.

+

Note the Anonymous Ancestors. These are superclasses that are inherited from the parents. If you hover over the Subclass Of (Anonymous Ancestor) you can see the parent that the class inherited the superclass from.

+

+

When you press the '+' button to add a SubClass of axiom, you will notice a few ways you can add a term. The easiest of this is to use the Class expression editor. This allows you to type in the expression utilizing autocomplete. As you start typing, you can press the 'TAB' or '->|' button on your keyboard, and protege will suggest terms. You will also note that the term you enter is not in the ontology, protege will not allow you add it, with the box being highlighted red, and the term underlined red.

+

Make a Pull Request

+
    +
  1. Make a pull request as usual (instructions here)
  2. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/embed-video/index.html b/howto/embed-video/index.html new file mode 100644 index 000000000..2bbe623bb --- /dev/null +++ b/howto/embed-video/index.html @@ -0,0 +1,3660 @@ + + + + + + + + + + + + + + + + + + + + + + + + How to embed videos - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Embed YouTube video into a OBOOK pagetoid

+

This guide explains how to embed a YouTube video into a page in this OBO Academy material. Example, see the videos on the Contributing to OBO Ontologies page.

+

Instructions

+
    +
  1. Go to the YouTube video you would like to embed.
  2. +
  3. Click Share
  4. +
  5. Click Embed
  6. +
  7. Click copy
  8. +
  9. Paste the content into the page where you would like to see it displayed.
  10. +
+

The content should look something like this: <iframe width="560" height="315" src="https://www.youtube.com/embed/_z8-KGDzZ6U" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

+

The embedded video should look like this:

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/filter-text-file/index.html b/howto/filter-text-file/index.html new file mode 100644 index 000000000..ee5619f45 --- /dev/null +++ b/howto/filter-text-file/index.html @@ -0,0 +1,3705 @@ + + + + + + + + + + + + + + + + + + + + + + + + How to filter a file based on another file - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Command Line Trick: Filter text files based on a list of strings

+

Let's say you want to remove some lines from a large text file programmatically. For example, you want to remove every line that contains certain IDs, but you want to keep the rest of the lines intact. +You can use the command line utility grep with option -v to find all the lines in the file that do NOT contain your search term(s). You can make a file with a list of several search terms and use that file with grep using the -f option as follows:

+
grep -v -f your_list.txt target_file.tsv | tee out_file.tsv
+
+

Explanation

+
    +
  • The target file is your text file from which you wish to remove lines. The text file can be of type csv, tsv, obo etc. For example, you wish to filter a file with these lines:
  • +
+

keep this 1 + this line is undesired 2, so you do not wish to keep it + keep this 3 + keep this 4 + keep this 5 + keep this 6 + something undesired 2 + this line is undesired 1 + keep this 7

+
    +
  • The file your_list.txt is a text file with your list of search terms. Format: one search term per line. For example:
  • +
+

undesired 1 + undesired 2

+
    +
  • +

    The utility tee will redirect the standard output to both the terminal and write it out to a file.

    +
  • +
  • +

    You expect the out_file.tsv to contain lines:

    +
  • +
+

keep this 1 + keep this 3 + keep this 4 + keep this 5 + keep this 6 + keep this 7

+

Do the filtering and updating of your target file in one step

+

You can also do a one-step filter-update when you are confident that your filtering works as expected, or if you have a backup copy of your target_file.tsv. +Use cat and pipe the contents of your text file as the input for grep. Redirect the results to both your terminal and overwrite your original file so it will contain only the filtered lines.

+
cat target_file.tsv | grep -v -f your_list.txt | tee target_file.tsv
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/fixing-conflicts/index.html b/howto/fixing-conflicts/index.html new file mode 100644 index 000000000..59658cad8 --- /dev/null +++ b/howto/fixing-conflicts/index.html @@ -0,0 +1,3683 @@ + + + + + + + + + + + + + + + + + + + + + + + + Fix conflicts - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Fixing merge conflicts

+

This video illustrates an example of fixing a merge conflict in the Mondo Disease Ontology.

+

Instructions:

+
    +
  1. +

    If a merge conflict error appears in your Github.com pull request after committing a change, open GitHub Desktop and select the corresponding repository from the "Current Repository" button. If the conflict emerged after editing the ontology outside of Protégé 5.5.0, see Ad hoc Reserialisation below.

    +
  2. +
  3. +

    With the repository selected, click the "Fetch origin" button to fetch the most up-to-date version of the repository.

    +
  4. +
  5. +

    Click the "Current Branch" button and select the branch with the merge conflict.

    +
  6. +
  7. +

    From the menu bar, select Branch > "Update from master".

    +
  8. +
  9. +

    A message indicating the file with a conflict should appear along with the option to open the file (owl or obo file) in a text/code editor, such as Sublime Text. Click the button to open the file.

    +
  10. +
  11. +

    Search the file for conflict markings ( <<<<<<< ======= >>>>>>> ).

    +
  12. +
  13. +

    Make edits to resolve the conflict, e.g., arrange terms in the correct order.

    +
  14. +
  15. +

    Remove the conflict markings.

    +
  16. +
  17. +

    Save the file.

    +
  18. +
  19. +

    Open the file in Protégé. If prompted, do not reload any previously opened file. Open as a new file.

    +
  20. +
  21. +

    Check that the terms involved in the conflict appear OK, i.e., have no obvious errors.

    +
  22. +
  23. +

    Save the file in Protégé using File > 'Save as...' from the menu bar and replace the ontology edit file, e.g., mondo-edit.obo

    +
  24. +
  25. +

    Return to GitHub Desktop and confirm the conflicts are now resolved. Click the "Continue Merge" button and then the "Push origin" button.

    +
  26. +
  27. +

    Return to Github.com and allow the QC queries to rerun.

    +
  28. +
  29. +

    The conflict should be resolved and the branch allowed to be merged.

    +
  30. +
+

Ad hoc Reserialisation

+

If the owl or obo file involved in the merge conflict was edited using Protégé 5.5.0, the above instructions should be sufficient. If edited in any other way, such as fixing a conflict in a text editor, the serialisation order may need to be fixed. This can be done as follows:

+
    +
  1. +

    Reserialise the master file using the Ontology Development Kit (ODK). This requires setting up Docker and ODK. If not already set up, follow the instructions here.

    +
  2. +
  3. +

    Open Docker.

    +
  4. +
  5. +

    At the line command (PC) or Terminal (Mac), use the cd (change directory) command to navigate to the repository's src/ontology/ directory. + For example,

    +
  6. +
+

cd PATH_TO_ONTOLOGY/src/ontology/

+

Replace "PATH_TO_ONTOLOGY" with the actual file path to the ontology. If you need to orient yourself, use the pwd (present working directory) or ls (list) line commands.

+
    +
  1. If you are resolving a conflict in an .owl file, run:
  2. +
+

sh run.sh make normalize_src

+

If you are resolving a conflict in an .obo file, run:

+

sh run.sh make normalize_obo_src

+
    +
  1. +

    In some ontologies (such as the Cell ontology (CL)), edits may result in creating a large amount of unintended differences involving ^^xsd:string. If you see these differences after running the command above, they can be resolved by following the instructions here.

    +
  2. +
  3. +

    Continue by going to step 1 under the main Instructions above.

    +
  4. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/github-actions/index.html b/howto/github-actions/index.html new file mode 100644 index 000000000..93096f0fd --- /dev/null +++ b/howto/github-actions/index.html @@ -0,0 +1,3655 @@ + + + + + + + + + + + + + + + + + + + + + + + + Automate tasks with GitHub actions - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Using Github actions to automate tasks

+

Post a comment with ontology differences on pull request

+

The command line tool Robot has a diff tool that compares two ontology files and can print the differences between them in multiple formats, among them markdown.

+

We can use this tool and GitHub actions to automatically post a comment when a Pull Request to master is created, with the differences between the two ontologies.

+

To create a new GitHub action, create a folder in your ontology project root folder called .github. Then create a yaml file in a subfolder called workflows, e.g. .github/workflows/diff.yml. This file contains code that will be executed in GitHub when certain conditions are meant, in this case, when a PR to master is submitted. The comments in this file from FYPO will help you write an action for your own repository.

+

The comment will look something like this.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/github-create-fork/index.html b/howto/github-create-fork/index.html new file mode 100644 index 000000000..fcbeb9249 --- /dev/null +++ b/howto/github-create-fork/index.html @@ -0,0 +1,3639 @@ + + + + + + + + + + + + + + + + + + + + + + + + Fork an ontology for editing - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Fork an ontology for editing

+

Note: Creating a fork allows you to create your copy GitHub repository. This example provides instructions on forking the Mondo GitHub reposiitory. You can't break any of the Mondo files by editing your forked copy.

+
    +
  1. On GitHub, navigate to https://github.com/monarch-initiative/mondo
  2. +
  3. In the top-right corner of the page, click Fork.
  4. +
+

+
    +
  1. When prompted 'Where should we fork mondo', choose your own repo (eg Nicole Vasilevsky).
  2. +
  3. Be careful if you have multiple forks (i.e. the original and your own personal fork, as this can cause confusion).
  4. +
  5. +

    Clone your forked repo:

    +
  6. +
  7. +

    If you have GitHub Desktop installed - click Code -> Open with GitHub Desktop

    +
  8. +
  9. +

    How are you planning to use this fork? To contribute to parent project

    +
  10. +
  11. +

    In GitHub Desktop, create a new branch:

    +
  12. +
  13. +

    Click Current Branch - > New Branch

    +
  14. +
+

+
    +
  1. +

    Give your branch a name, like c-path-training-1

    +
  2. +
  3. +

    You will make changes to the Mondo on the branch of your local copy.

    +
  4. +
+

Further instructions on forking a repo

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/github-create-pull-request/index.html b/howto/github-create-pull-request/index.html new file mode 100644 index 000000000..f98bead81 --- /dev/null +++ b/howto/github-create-pull-request/index.html @@ -0,0 +1,3808 @@ + + + + + + + + + + + + + + + + + + + + + + + + Create a GitHub Pull Request - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Create a Pull Request in GitHub

+

Overview

+

GitHub workflows

+

A Git repo consists of a set of branches each with a complete history of all changes ever made to the files and directories. This is true for a local copy you check out to your computer from GitHub or for a copy (fork) you make on GitHub.

+

image

+

A Git repo typically has a master or main branch that is not directly edited. Changes are made by creating a branch from Master (complete copy of the Master + its history) (either a direct branch or via a fork).

+

Branch vs Fork

+

You can copy (fork) any GitHub repo to some other location on GitHub without having to ask permission from the owners.  If you modify some files in that repo, e.g. to fix a bug in some code, or a typo in a document, you can then suggest to the owners (via a Pull Request) that they adopt (merge) you your changes back into their repo. See the Appendix for instructions on how to make a fork.

+

If you have permission from the owners, you can instead make a new branch.

+

What is a Pull Request?

+

A Pull Request (PR) is an event in Git where a contributor (you!) asks a maintainer of a Git repository to review changes (e.g. edits to an ontology file) they want to merge into a project (e.g. the owl file) (see reference). Create a pull request to propose and collaborate on changes to a repository. These changes are proposed in a branch, which ensures that the default branch only contains finished and approved work. See more details here.

+

Committing, pushing and making pull requests

+
    +
  1. +

    See these instructions on cloning an ontology repo and creating a branch using GitHub Dekstop.

    +
  2. +
  3. +

    Review: Once changes are made to the ontology file, they can be viewed in GitHub Desktop.

    +
  4. +
  5. +

    Before committing, check the diff. An example diff from the Cell Ontology (CL) is pasted below. Large diffs are a sign that something went wrong. In this case, do not commit the changes and consider asking the ontology editor team for help instead.

    +
  6. +
+

Example 1 (Cell Ontology):

+

+

Example 2 (Mondo):

+

image

+
    +
  1. +

    Commit message: Before Committing, you must add a commit message. In GitHub Desktop in the Commit field in the lower left, there is a subject line and a description.

    +
  2. +
  3. +

    Give a very descriptive title: Add a descriptive title in the subject line. For example: add new class ONTOLOGY:ID [term name] (e.g. add new class MONDO:0000006 heart disease)

    +
  4. +
  5. +

    Write a great summary of what the change is in the Description box, referring to the issue. The sentence should clearly state how the issue is addressed.

    +
  6. +
  7. +

    To link the issue, you can use the word 'fixes' or 'closes' in the description of the commit message, followed by the corresponding ticket number (in the format #1234) - these are magic words in GitHub; when used in combination with the ticket number, it will automatically close the ticket. Learn more on this GitHub Help Documentation page about Closing issues via commit messages.

    +
  8. +
  9. +

    Note: 'Fixes' and "Closes' are case-insensitive.

    +
  10. +
  11. +

    If you don't want to close the ticket, just refer to the ticket # without the word 'Fixes' or use 'Addresses'. The commit will be associated with the correct ticket but the ticket will remain open. 7.NOTE: It is also possible to type a longer message than allowed when using the '-m' argument; to do this, skip the -m, and a vi window (on mac) will open in which an unlimited description may be typed.

    +
  12. +
+

image

+
    +
  1. +

    Click Commit to [branch]. This will save the changes to the ontology edit file.

    +
  2. +
  3. +

    Push: To incorporate the changes into the remote repository, click Publish branch.

    +
  4. +
+

Make a Pull Request

+
    +
  1. +

    Click: Create Pull Request in GitHub Desktop

    +
  2. +
  3. +

    This will automatically open GitHub Desktop

    +
  4. +
  5. +

    Click the green button 'Create pull request'

    +
  6. +
  7. +

    You may now add comments to your pull request.

    +
  8. +
  9. +

    The CL editors team will review your PR and either ask for changes or merge it.

    +
  10. +
  11. +

    The changes will be available in the next release.

    +
  12. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/idrange/index.html b/howto/idrange/index.html new file mode 100644 index 000000000..32462f360 --- /dev/null +++ b/howto/idrange/index.html @@ -0,0 +1,3801 @@ + + + + + + + + + + + + + + + + + + + + + + + + Setting up your ID range - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Setting up your ID Ranges

+

Setting ID ranges in your ontology

+
    +
  1. +

    Curators and projects are assigned specific ID ranges within the prefix for your ontology. See the README-editors.md for your ontology

    +
  2. +
  3. +

    An example: go-idranges.owl

    +
  4. +
  5. +

    NOTE: You should only use IDs within your range.

    +
  6. +
  7. +

    If you have only just set up this repository, modify the idranges file and add yourself or other editors.

    +
  8. +
+

Setting ID ranges

+

Protege 5.6

+

Protégé 5.6 can now automatically set up the ID range for a given user by exploiting the ONT-idranges.owl file, if it exists. ONT is the name of the ontology you are editing (for example, in UBERON, the file is named uberon-idranges.owl). The file is automatically created by the ODK, so that users shouldn’t need worry about it.

+

This Protege version looks at the ID range file and matches your user name in Protege to the names in the file to automatically set up your ID range. Thus as long as this information matches you no longer need to manually set the ID range. You will get a message if your user name does not match one in the file asking you to pick an ID range.

+

Note: If you are switching from an old Protege version to Protege 5.6, you may need to reset your range to the last used ID rather than just the full range or Protege would try to fill in gaps in the range.

+

Protege 5.5.0 or below

+

ID ranges need to be manually set in Protege 5.6.0 or below, as described below.

+

Setting ID ranges in Protege in Protege 5.5.0 or below

+
    +
  1. +

    Once you have your assigned ID range, you need to configure Protege so that your ID range is recorded in the Preferences menu. Protege does not read the idranges file.

    +
  2. +
  3. +

    In the Protege menu, select Preferences.

    +
  4. +
  5. +

    In the resulting pop-up window, click on the New Entities tab and set the values as follows.

    +
  6. +
  7. +

    In the Entity IRI box:

    +
  8. +
+

Start with: Specified IRI: http://purl.obolibrary.org/obo

+

Followed by: /

+

End with: Auto-generated ID

+
    +
  1. In the Entity Label section:
  2. +
+

Same as label renderer: IRI: http://www.w3.org/2000/01/rdf-schema#label

+
    +
  1. +

    In the Auto-generated ID section:

    +
  2. +
  3. +

    Numeric

    +
  4. +
  5. +

    Prefix GO_

    +
  6. +
  7. +

    Suffix: leave this blank

    +
  8. +
  9. +

    Digit Count 7

    +
  10. +
  11. +

    Start: see go-idranges.owl. Only paste the number after the GO: prefix. Also, note that when you paste in your GO ID range, the number will automatically be converted to a standard number, e.g. pasting 0110001 will be converted to 110,001.)

    +
  12. +
  13. +

    End: see go-idranges.owl

    +
  14. +
  15. +

    Remember last ID between Protege sessions: ALWAYS CHECK THIS

    +
  16. +
+

(Note: You want the ID to be remembered to prevent clashes when working in parallel on branches.)

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/install-protege/index.html b/howto/install-protege/index.html new file mode 100644 index 000000000..92c17a99a --- /dev/null +++ b/howto/install-protege/index.html @@ -0,0 +1,3631 @@ + + + + + + + + + + + + + + + + + + + + + + + + Install Protégé - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

5 step installation guide for Protégé

+
    +
  1. Click here to find latest release of Protégé. +Choose and download the appropriate files for your operating system (Linux, macOS, Windows, platform independent).
  2. +
  3. Use the PGP signature contained in the appropriate file with an .asc extension to verify the integrity of the downloaded Protégé version.
  4. +
  5. Decompress the downloaded .zip or .tar.gz file with tools appropriate for your operating system.
  6. +
  7. +

    Follow the steps as needed by your operating system to install the Protégé application. +For example, on macOS: drag and drop Protégé.app to the Applications folder and replace any older versions of the software. +You may need to right click Protégé.app and then choose Open from the menu to authorise the programme to run on your machine. +Alternatively, go to Preferences -> Security -> General. +You need to open the little lock, then click Mac stopped an application from Running (Protégé) -> Open anyways.

    +
  8. +
  9. +

    Adjust memory settings if necessary. +Memory settings can now be adjusted in a jvm.conf configuration file that can be located either in the .protege/conf directory under your home directory, or in the conf directory within the application bundle itself. +For example, to set the maximum amount of memory available for Protégé to, say, 12GB, put the following in the jvm.conf file: +

    max_heap_size=12G
    +

    +
  10. +
  11. On macOS, you can find the file is here:
  12. +
+
/Applications/Protégé.app/Contents/conf/jvm.conf
+
+

Edit this part:

+
# Uncomment the line below to set the maximal heap size to 8G
+#max_heap_size=8G
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/installing-elk-in-protege/index.html b/howto/installing-elk-in-protege/index.html new file mode 100644 index 000000000..0d4b17747 --- /dev/null +++ b/howto/installing-elk-in-protege/index.html @@ -0,0 +1,3689 @@ + + + + + + + + + + + + + + + + + + + + + + + + Installing ELK in Protege - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Install Elk 0.5 in Protege

+

Note: This is only needed for Protege 5.5.0 or below. Protege 5.6 has ELK already installed.

+
    +
  • +

    Click here to get the latest Protege Plugin latest build (this is available on the bottom of ELK pages. This will download a zipped file.)

    +
  • +
  • +

    When downloaded, unzip and copy puli and elk jars (two .jar files) in the unpacked directory.

    +
  • +
  • Paste these files in your Protege plugin directory.
  • +
  • +

    Remove old org.semanticweb.elk.jar

    +
  • +
  • +

    Install ELK plugin on Mac:

    +
  • +
+

This can be done via one of two ways:

+

Approach 1

+
    +
  1. In Terminal: + open ~/.Protege, then click on plugins
  2. +
  3. Click on plugins
  4. +
  5. Copy and paste the two files into the plugins directory
  6. +
  7. Remove old elk.jar (Ex. org.semanticweb.elk.jar)
  8. +
  9. Restart Protege. You should see ELK 0.5 installed in your Reasoner menu.
  10. +
+

Approach 2

+
    +
  1. Paste these files in your Protege plugin directory. This is in one of two locations:
  2. +
  3. ~/.Protege/plugins (note this is usually hidden from finder, but you can see it in the terminal) or
  4. +
  5. Go to Protege in Applications (Finder), right click, 'Show package contents' -> Java -> plugins
  6. +
  7. If you go to ~/.Protege and a directory called plugins does not exist in this folder, you can create it.
  8. +
  9. Copy and paste the two files into the plugins directory
  10. +
  11. Remove old elk.jar (Ex. org.semanticweb.elk.jar)
  12. +
  13. Restart Protege. You should see ELK 0.5 installed in your Reasoner menu.
  14. +
+

Important: it seems Elk 0.5. Does not work with all versions of Protege, in particular, 5.2 and below. These instructions were only tested with Protege 5.5.

+

Video Explanation

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/merge-terms/index.html b/howto/merge-terms/index.html new file mode 100644 index 000000000..6c1cd243f --- /dev/null +++ b/howto/merge-terms/index.html @@ -0,0 +1,3749 @@ + + + + + + + + + + + + + + + + + + + + + + + + Merging Terms - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

NOTE This documentation is incomplete, for now you may be better consulting the GO Editor Docs

+

For instructions on obsoleting terms (without merging/replacing with a new term, see obsoletion how to guide.)

+

Merging Ontology Terms

+

See Daily Workflow for creating branches and basic Protégé instructions.

+

Note Before performing a merge, make sure that you know all of the consequences that the merge will cause. In particular, be sure to look at child terms and any other terms that refer to the ‘obsoleted’ term. In many cases a simple merge of two terms is not sufficient because it will result in equivalent classes for child terms. For example if obsoleted term X is going to be merged into target term Y and ‘regulation of X’ and ‘regulation of Y’ terms exist, then you will need to merge the regulation terms in addition to the primary terms. You will also need to edit any terms that refer to the obsoleted term to be sure that the names and definitions are consistent.

+

Manual Workflow

+
    +
  1. Find the ID of the term in which the obsoleted term will be merged
      +
    • Navigate to 'winning' term using the Search box. Copy the ID of the winning term somewhere.
    • +
    +
  2. +
  3. Duplicate annotations from the obsoleted terms
      +
    • Navigate to the term to be obsoleted.
    • +
    • Right click on it and select Duplicate class then OK in the pop up window. This should create a class with the exact same name.
    • +
    • On the duplicated class (you can see this by (CL:XXXX) within your range added), right click and select Change IRI (Rename)
    • +
    • Copy the ID of the winning term (obtained in Step 1).
    • +
    • Be sure to use the underscore _ in the identifier instead of the colon :, for example: GO_1234567. Make sure that the 'change all entities with this URI' box is checked.
    • +
    • Navigate to the winning term IRI, all annotations should be merged.
    • +
    +
  4. +
  5. Change obsoleted term label to a synonym
      +
    • In the annotations box of the winning term there are now two terms with labels 'rdfs:label'. Click the o to change the label of the obsoleted term.
    • +
    • In the resulting pop-up window, select the appropriate synonym label from the list on the left:
        +
      1. has_broad_synonym
      2. +
      3. has_exact_synonym
      4. +
      5. has_narrow_synonym
      6. +
      7. has_related_synonym (if unsure, this is the safest choice)
      8. +
      +
    • +
    +
  6. +
  7. Remove duplicated or inappropriate annotations
      +
    • Check the definition, if there are multiple entries, remove the obsoleted one by clicking on the x on the right.
    • +
    • Check the subclasses and remove inappropriate/duplciated ones by clicking on the x on the right.
    • +
    • Check list of synonyms and remove inappropriate/duplciated ones by clicking on the x on the right.
    • +
    • Note down the created_by and created_date (there can only be one value per term for each of these fields; this will be useful if you need to pick one after the merge is done).
    • +
    +
  8. +
  9. Obsolete old term
      +
    • Obsolete the old term by following instructions found in obsoletion how to guide..
    • +
    • Ensure that you add a rdfs:comment that states that term was duplicated and to refer to the new new.
    • +
    • Ensure that you add a term replaced by annotations as per the instructions and add the winning merged term.
    • +
    +
  10. +
  11. Synchronize the reasoner and make sure there are no terms that have identical definitions as a result of the merge. These are displayed with an 'equivalent' sign in the class hierarchy view on the left hand panel.
  12. +
  13. Save changes.
  14. +
+

See Daily Workflow section for commit, push and merge instructions.

+

Merge using owltools

+

To use owltools will need to have Docker installed and running (see instructions here).

+

This is the workflow that is used in Mondo.

+
    +
  1. Create a branch and name it issue-### (for example issue-2864)
  2. +
  3. Open Protege
  4. +
  5. Prepre the owltools command: + owltools --use-catalog mondo-edit.obo --obsolete-replace [CURIE 1] [CURIE 2] -o -f obo mondo-edit.obo
  6. +
+

CURIE 1 = term to be obsoleted
+CURIE 2 = replacement term (ie term to be merged with)

+

For example: +If to merge MONDO:0023052 ectrodactyly polydactyly with MONDO:0009156 ectrodactyly-polydactyly syndrome, the command is:

+

owltools --use-catalog mondo-edit.obo --obsolete-replace MONDO:0023052 MONDO:0009156 -o -f obo mondo-edit.obo

+
    +
  1. In Terminal, navigate to your ontology directory: src/ontology
  2. +
  3. Run your owltools command
  4. +
  5. Check the output in GitHub desktop
  6. +
  7. Open a new version of your ontology edit file in Protege
  8. +
  9. Search for the term that was obsoleted
  10. +
  11. Add 'term tracker item' (type xsd:anyURI) with a link to the GitHub issue that requested the obsoletion.
  12. +
  13. Add an obsoletion reason: use the annotation property 'has obsolescence reason' and write 'terms merged' in the literal field.
  14. +
  15. Search for the 'term replaced by' term
  16. +
  17. Delete the old ID
  18. +
  19. Review the annotations to ensure there are no duplicate annotations. If there are, they should be merged.
  20. +
  21. Review the subClassOf assertions, and make sure there are no duplicates. If there are, they should be merged.
  22. +
  23. When reviewing the diff, make sure there is not an Alt ID. The diff should only show additions to the merged term and the obsoletion
  24. +
+
+

TROUBLESHOOTING: Travis/Jenkins errors

+
    +
  1. Merging a term that is used as 'replaced by' for an obsolete term
  2. +
+

:: ERROR: ID-mentioned-twice:: GO:0030722 + :: ERROR: ID-mentioned-twice:: GO:0048126 + GO:0030722 :: ERROR: has-definition: missing definition for id

+

The cause of this error is that Term A (GO:0048126) was obsoleted and had replace by Term B (GO:0030722). The GO editor tried to merge Term B into a third term term C (GO:0007312). The Jenkins checkk failed because 'Term A replaced by' was an alternative_id rather than by a main_id. +Solution: In the ontology, go to the obsolete term A and replace the Term B by term C to have a primary ID as the replace_by.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/obsolete-term/index.html b/howto/obsolete-term/index.html new file mode 100644 index 000000000..266d60b43 --- /dev/null +++ b/howto/obsolete-term/index.html @@ -0,0 +1,3780 @@ + + + + + + + + + + + + + + + + + + + + + + + + Obsoleting a Term - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Obsoleting an Existing Ontology Term

+

See Daily Workflow for creating branches and basic Protégé instructions.

+

Warning: Every ontology has their procedures on how they obsolete terms (eg notice periods, notification emails, to_be_obsolete tags, etc.), this how-to guide only serves as a guide on how obsolete a term directly on protege.

+

For instructions on how to merge terms (i.e., replace a term with another term in the ontology), see instructions here.

+

PRE OBSOLETION PROCESS (or basic obsoletion etiquette)

+
    +
  1. +

    Check if the term (or any of its children) is being used for annotation:

    +
  2. +
  3. +

    Go to your ontology browser of choice, search for the term, either by label or ID

    +
  4. +
  5. See which other ontologies use the to be obsolete term
  6. +
  7. +

    Notify affected groups (usually by adding an issue in their tracker)

    +
  8. +
  9. +

    Check if the term is used elsewhere in the ontology

    +
  10. +
  11. In Protégé, navigate to the term to be obsolete and go to the 'Usage' tab to see if that ID is used elsewhere.
  12. +
  13. If the term is a parent to other terms or is used in logical definitions, make sure that another term replaces the obsolete term
  14. +
+

OBSOLETION PROCESS (Manual)

+

Warning: some ontologies give advance notice on terms that will be obsoleted through the annotation 'scheduled for obsoletion on or after' instead of directly obsoleting the term. Please check with the conventions of your ontology before obsoleting a term.

+
    +
  1. Navigate to the term to be obsoleted.
  2. +
+

+
    +
  1. Select Edit > Deprecate entity...
  2. +
+

+
    +
  1. A deprecation wizard will pop up, in here, select GO style, and select continue (note this is specifc to GO style ontologies, if you are working with an OBI style ontology, there is an option for that too, if not use basic. For this how to, we will follow GO style)
  2. +
+

+
    +
  1. Next, enter your reason for deprecation. For this, we advice for you to enter the github issue. (eg https://github.com/obophenotype/cell-ontology/issues/####) This will appear as a rdfs:comment
  2. +
+

+
    +
  1. Next enter a replacement entity if there is one. This will automatically replace axioms in the ontology with the term, and add an 'item replaced by' axiom on the obsolete term.
  2. +
+

+
    +
  1. Your obsolete term should now be stripped of its logical axioms and should look similar to the figure below.
  2. +
+

image

+
    +
  1. Add any additional annotations needed - this is specific to ontologies and you should consult the conventions of the ontology you are working on.
  2. +
+

Examples of additional annotations to add:

+
    +
  • +

    IAO:0000233 term tracker item (type xsd:anyURI) - link to GitHub issue

    +
  • +
  • +

    has_obsolence_reason

    +
  • +
  • +

    add ‘OBSOLETE.’ to the term definition: In the 'Description' window, click on the o on the right-hand side of the definition entry. In the resulting window, in the Literal tab, at the beginning of the definition, type: OBSOLETE.

    +
  • +
  • +

    if the obsoleted term was not replaced by another term in the ontology, but there are existing terms that might be appropriate for annotation, add those term IDs in the 'consider' tag: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select consider and enter the ID of the replacement term.

    +
    +

    NOTE: Here you have to add the ID of the entity as an xsd:string, e.g. GO:0005819, not the term label.

    +
    +
  • +
+

Obsolete a class (using Protege 'Make entity obsolete' function)

+
    +
  1. Navigate to the term to be obsoleted.
  2. +
  3. In the Protege edit menu-> Make entity obsolete
  4. +
  5. Prepend the definition with OBSOLETE. For example, OBSOLETE. Chronic form of myeloproliferative neoplasm.
  6. +
  7. +

    Add a statement about why the term was made obsolete: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select rdfs:comment and select Type: Xsd:string. + Consult the wiki documentation for suggestions on standard comments:

    +
     - [http://wiki.geneontology.org/index.php/Curator_Guide:_Obsoletion](http://wiki.geneontology.org/index.php/Curator_Guide:_Obsoletion)
    +
    + - [http://wiki.geneontology.org/index.php/Obsoleting_GO_Terms](http://wiki.geneontology.org/index.php/Obsoleting_GO_Terms)
    +
    + - [http://wiki.geneontology.org/index.php/Editor_Guide](http://wiki.geneontology.org/index.php/Editor_Guide)
    +
    +
  8. +
  9. +

    If the obsoleted term was replaced by another term in the ontology: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select term replaced by and enter the ID of the replacement term.

    +
  10. +
  11. +

    If the obsoleted term was not replaced by another term in the ontology, but there are existing terms that might be appropriate for annotation, add those term IDs in the 'consider' tag: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select consider and enter the ID of the replacement term.

    +
    +

    NOTE: Here you have to add the ID of the entity as an xsd:string, e.g. GO:0005819, not the term label.

    +
    +
  12. +
  13. +

    Add any additional annotations needed - this is specific to ontologies and you should consult the conventions of the ontology you are working on.

    +
  14. +
+

Examples of additional annotations to add:

+
    +
  • IAO:0000233 term tracker item (type xsd:anyURI) - link to GitHub issue
  • +
  • has_obsolence_reason
  • +
+

See Daily Workflow section for commit, push and merge instructions.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/odk-add-orcidio-module/index.html b/howto/odk-add-orcidio-module/index.html new file mode 100644 index 000000000..d2675f842 --- /dev/null +++ b/howto/odk-add-orcidio-module/index.html @@ -0,0 +1,3792 @@ + + + + + + + + + + + + + + + + + + + + + + + + Import ORCIDIO - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Import ORCIDIO

+ +

Adding an ORCIDIO import to your ontology with ODK

+

The Open Researcher and Contributor Identifier (ORCID) is a global, unambiguous way to identify a researcher. +ORCID URIs (e.g., https://orcid.org/0000-0003-4423-4370) can therefore be used to unambigously and actionably attribute various aspects of ontology terms in combination with DC Terms or IAO predicates. However, URIs themselves are opaque and it is difficult to disambiguate to which person an ORCID corresponds when browsing an ontology (e.g., in Protégé).

+

ORCIDIO is an ontology that declares ORCID URIs as named individuals and associates basic metadata (e.g., name, description) to each such that tools like Protégé can display a human-readable label rather than the URI itself as in the following example.

+

+

In this guide, we discuss how to add ORCIDIO to your ODK setup.

+

1. Include ORCIDIO as an import into the ODK config file

+

In your ODK configuration (e.g. src/ontology/myont-odk.yaml), add the following to the import_group:

+
import_group:
+  annotation_properties:
+    - rdfs:label
+    - dc:description
+    - dc:source
+    - IAO:0000115
+  products:
+    - id: orcidio
+      mirror_from: https://w3id.org/orcidio/orcidio.owl
+      module_type: filter
+      base_iris:
+        - https://orcid.org/
+
+

The list of annotation properties, in particular dc:source, is important for the filter module to work (ORCIDIO relies heavily on axiom annotations for provenance).

+

2. Update your catalog

+

TODO: "as usual" should be re-written to cross-link to another guide about updating the catalog (or don't say as usual to keep this more self-contained) +As usual, add a statement into your catalog (src/ontology/catalog-v001.xml):

+
 <uri name="http://purl.obolibrary.org/obo/ro/imports/orcidio_import.owl" uri="imports/orcidio_import.owl"/>
+
+

3. Update the edit file

+

TODO: "as usual" should be re-written to cross-link to another guide about updating the edit file (or don't say as usual to keep this more self-contained) +As usual, add an imports declaration to your edit file (src/ontology/myont-edit.owl):

+
Import(<http://purl.obolibrary.org/obo/ro/imports/orcidio_import.owl>)
+
+

TODO: link to explanation of base merging strategy +Note: This is not necessary when using the base merging strategy (you will know what this means when you do use it).

+

4. Configure your seed:

+

Add a new SPARQL query: src/sparql/orcids.sparql. This is used to query for all ORCIDs used in your ontology.

+
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+prefix owl: <http://www.w3.org/2002/07/owl#>
+SELECT DISTINCT ?orcid
+WHERE {
+  VALUES ?property {
+    <http://purl.org/dc/elements/1.1/creator>
+    <http://purl.org/dc/elements/1.1/contributor>
+    <http://purl.org/dc/terms/creator>
+    <http://purl.org/dc/terms/contributor> 
+  }
+  ?term ?property ?orcid . 
+  FILTER(isIRI(?term))
+}
+
+

Next, overwrite your ORCID seed generation to using this query by adding the following to your src/ontology/myont.Makefile (not Makefile!):

+
$(IMPORTDIR)/orcidio_terms_combined.txt: $(SRCMERGED)
+    $(ROBOT) query -f csv -i $< --query ../sparql/orcids.sparql $@.tmp &&\
+    cat $@.tmp | sort | uniq >  $@
+
+

For your specific use-case, it may be necessary to tweak this SPARQL query, for example if your ORCIDs are used on axiom annotation level rather than entity annotation level.

+

5. Updating Config and ORCIDIO

+

Now run to apply your ODK changes:

+
sh run.sh make update_repo
+
+

This will update a number of files in your project, such as the autogenerated Makefile.

+

Lastly, update your ORCIDIO import to apply the changes:

+
sh run.sh make refresh-orcidio
+
+

Commit all the changes to a branch, wait for continuous integration to finish, and enjoy your new ORCIDIO import module.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/odk-create-repo/index.html b/howto/odk-create-repo/index.html new file mode 100644 index 000000000..cfdf77fe0 --- /dev/null +++ b/howto/odk-create-repo/index.html @@ -0,0 +1,4003 @@ + + + + + + + + + + + + + + + + + + + + + + + + Creating a Repo with ODK - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Creating a new Repository with the Ontology Development Kit

+

This is instructions on how to create an ontology repository in +GitHub. This will only need to be done once per project. You may need +assistance from someone with basic unix knowledge in following +instructions here.

+

We will walk you though the steps to make a new ontology project

+

1. Install requirements

+
    +
  • docker: Install Docker and make sure its runnning properly, for example by typing docker ps in your terminal or command line (CMD). If all is ok, you should be seeing something like:
  • +
+
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
+
+ +

2. Download the wrapper script and pull latest ODK version

+
    +
  • Linux/Mac: seed-via-docker.sh
  • +
  • PC: seed-via-docker.bat
  • +
  • Make sure to save the wrapper script in your working directory and that the filetype is correct.
  • +
  • You should have git installed - for the repo command to work perfectly, it requires a .gitconfig file in your user directory!
  • +
  • First, make sure you have Docker running (you will see the Docker whale in your toolbar on a Mac)
  • +
  • To make sure you have the latest version of the ODK installed, run in the command line
  • +
+

docker pull obolibrary/odkfull

+

NOTE The very first time you run this it may be slow, while docker downloads necessary images. Don't worry, subsequent runs should be much faster!

+

NOTE Windows users, occasionally it has been reported that files downloaded on a Windows machine get a wrong file ending, for example seed-via-docker.bat.txt instead of seed-via-docker.bat, or, as we will see later, project.yaml.txt instead of project.yaml. If you have problems, double check your files are named correctly after the download!

+

3. Run the wrapper script

+

You can either pass in a configuration file in YAML format that specifies your ontology project setup, or you can pass arguments on the command line. You can use dir in your command line on PC to ensure that your wrapper script, .gitconfig, and project.yaml (if you so choose) are all in the correct directory before running the wrapper script.

+

Unix (Max, Linux)

+

Passing arguments on the command line:

+
./seed-via-docker.sh -d po -d ro -d pato -u cmungall -t "Triffid Behavior ontology" triffo
+
+

Using a the predefined project.yaml file:

+
./seed-via-docker.sh -C examples/triffo/project.yaml
+
+

Windows

+

Passing arguments on the command line:

+
seed-via-docker.bat -d po -d ro -d pato -u cmungall -t "Triffid Behavior ontology" triffo
+
+

Using a the predefined project.yaml config file:

+
seed-via-docker.bat -C project.yaml
+
+

General instructions for both Linux and Windows

+
    +
  • Instead of -u cmungall you should be using your own username (i.e. -u nico), for example for your GitHub or GitLab hosting sites.
  • +
  • You can add a -c (lowercase) just before the -C (capital c) in the command to first delete any previous attempt to generate your ontology with the ODK, and then replaces it with a completely new one. So, -c stands for clean or "clean up previous attempts before running again" and -C stands for "the next parameter is the relative path to my config file".
  • +
  • In general, we now always recommend the use of config files. The ODK has a rich set of configuration options, most of which can only be set through the config file, but in general the config also serves as documentation and will help with updating your ontology at later stages. + To create a config file, you can download for example project.yaml by clicking on the link and then typing command+s on Mac or ctrl+s on Windows to save it in the same directory as your seed-via-docker script. + Then you can open the file with a text editor like Notepad++, Atom, Sublime or even nano, and adapt it to your project. Other more comprehensive examples can be found here.
  • +
+

This will create your starter files in +target/triffid-behavior-ontology. It will also prepare an initial +release and initialize a local repository (not yet pushed to your Git host site such as GitHub or GitLab).

+

Problems?

+

There are three frequently encountered problems at this stage:

+
    +
  1. No .gitconfig in user directory
  2. +
  3. Spaces is user path
  4. +
  5. During download, your filenames got changed (Windows)
  6. +
+

No .gitconfig in user directory

+

The seed-via-docker script requires a .gitconfig file in your user directory. If your .gitconfig is in a different directory, you need to change the path in the downloaded seed-via-docker script. For example on Windows (look at seed-via-docker.bat):

+
docker run -v %userprofile%/.gitconfig:/root/.gitconfig -v %cd%:/work -w /work --rm -ti obolibrary/odkfull /tools/odk.py seed %*
+
+

%userprofile%/.gitconfig should be changed to the correct path of your local .gitconfig file.

+

Spaces is user path

+

We have had reports of users having trouble if there paths (say, D:\data) contain a space symbol, like D:/Dropbox (Personal) or similar. In this case, we recommend to find a directory you can work in that does not contain a space symbol.

+

You can customize at this stage, but we recommend to first push the changes to you Git hosting site (see next steps).

+

During download, your filenames got changed (Windows)

+

Windows users, occasionally it has been reported that files downloaded on a Windows machine get a wrong file ending, +for example seed-via-docker.bat.txt instead of seed-via-docker.bat, or, as we will see later, project.yaml.txt +instead of project.yaml. If you have problems, double check your files are named correctly after the download!

+

4. Push to Git hosting website

+

The development kit will automatically initialize a git project, add all files and commit.

+

You will need to create a project on you Git hosting site.

+

For GitHub:

+
    +
  1. Go to: https://github.com/new
  2. +
  3. The owner MUST be the org you selected with the -u option. The name MUST be the one you set with -t, just with lower case letters and dashes instead of spaces. In our example above, the name "Triffid Behavior Ontology" translates to triffid-behavior-ontology.
  4. +
  5. Do not initialize with a README (you already have one)
  6. +
  7. Click Create
  8. +
  9. See the section under "…or push an existing repository from the command line"
  10. +
+

For GitLab:

+
    +
  1. Go to: https://gitlab.com/projects/new
  2. +
  3. The owner MUST be the org you selected with the -u option. The name MUST be the one you set with -t.
  4. +
  5. Do not initialize with a README (you already have one)
  6. +
  7. Click 'Create project'
  8. +
  9. See the section under "Push an existing Git repository"
  10. +
+

Follow the instructions there. E.g. (make sure the location of your remote is exactly correct!).

+
cd target/triffo
+git remote add origin https://github.com/matentzn/triffid-behavior-ontology.git
+git branch -M main
+git push -u origin main
+
+

Note: you can now mv target/triffid-behavior-ontology to anywhere you like in your home directory. Or you can do a fresh checkout from github.

+

Alternative recommendation for GitHub by @matentzn

+

I generally feel its easier and less error prone to deviate from the standard instructions above. I keep having problems with git, passwords, typose etc, so I tend to do it, inofficially, as follows:

+
    +
  1. When my repo is created I go to my GitHub Desktop
  2. +
  3. I then do File > Add local repository, and select the directory which contains my newly created repo (e.g. target/triffo).
  4. +
  5. I then Click on "Publish repository".
  6. +
  7. If I want the code to be public, I deselect "Keep this code private". By default, the repo will be uploaded to my own user profile on GitHub, but I can also select another Organization I have access to in the respective Dropdown menu.
  8. +
  9. NOTE: there seem to be some issues with pushing a GitHub Workflow file recently - you may be asked by GitHub Desktop to provide an additional permission to push the Workflow file.
  10. +
+

Next Steps: Edit and release cycle

+

In your repo you will see a README-editors.md file that has been customized for your project. Follow these instructions.

+

OBO Library metadata

+

The assumption here is that you are adhering to OBO principles and +want to eventually submit to OBO. Your repo will contain stub metadata +files to help you do this.

+

You can create pull requests for your ontology on the OBO Foundry. See the src/metadata file for more details.

+

For more documentation, see http://obofoundry.org

+

Additional

+

You will want to also:

+
    +
  • enable GitHub actions
  • +
+

See the README-editors.md file that has been generated for your project.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/odk-setup/index.html b/howto/odk-setup/index.html new file mode 100644 index 000000000..73f4c2333 --- /dev/null +++ b/howto/odk-setup/index.html @@ -0,0 +1,3832 @@ + + + + + + + + + + + + + + + + + + + + + + + + Setting up the ODK - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Getting set up with Docker and the Ontology Development Kit

+

Installation

+

For Windows

+
    +
  • Follow the instructions here. Note that you should have Windows 10 Professional installed for this to work. We are not sure Docker Desktop works at all with Windows 10 Home, but we have not tried in a while. If you know what you are doing, you could try to configure Docker toolbox, but we have had many issues with it, and do not recommend it unless absolutely necessary.
      +
    • If you are unable to install Docker Desktop on your Windows PC (e.g. no admin rights or pohibited by the IT department of your institution) but you have the ability to use the Windows Hyper-V-Manager (possible w/o admin rights) or another virtualization tool, such as VirtualBox, you could set up a Linux virtual machine (VM) to use ODK. We recommend using Lubuntu, as it won't need much computing resources. Although you cannot install Docker Desktop in such a VM, you can install the Docker Engine, which suffices to proceed with the next step.
    • +
    +
  • +
  • Once installed, you should be able to open your command line and download the ODK.
  • +
  • Click on your Windows symbol (usually in bottom left corner of screen), type "cmd" and you should be able to see and open the Command Line tool.
  • +
  • in the command line type, type docker pull obolibrary/odkfull. This will download the ODK (will take a few minutes, depending on you internet connection).
  • +
  • Executing something in a Docker container can be "wordy", because the docker container requires quite a few parameters to be run. To make this easier, we prepared a wrapper script here. You can download this file by clicking on Raw, and then, when the file is open in your browser, CTRL+S to save it. Ideally, you save this file in your project directory, the directory you will be using for your exercises, as it will only allow you to edit files in that very same directory (or one of its sub-directories).
  • +
  • Setting the memory: + Typical issues (WSL 1 vs 2)
  • +
+

For Mac/Linux

+
    +
  • Install docker: Install Docker following the official instructions.
  • +
  • Make sure its running properly, for example by typing docker ps in your terminal or command line (CMD). If all is ok, you should be seeing something like:
  • +
+
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
+
+
    +
  • Run docker pull obolibrary/odkfull on your command line to install the ODK. This will take while.
  • +
  • Download an ODK wrapper script. The odk.sh has further instruction on how to best use it.
  • +
  • Now you are ready to go to a directory containing the odk.sh wrapper script and running sh odk.sh robot --version to see whether it works.
  • +
  • The ODK wrapper script is generally useful to have: you can for example enter a ODK container, similar to a virtual machine, + by simply running sh odk.sh bash (to leave the ODK container again, simply run exit from within the container). On Windows, use run.bat bash instead. + However, for many of the ontologies we develop, we already ship an ODK wrapper script in the ontology repo, so we dont need the odk.sh or odk.bat file. + That file is usually called run.sh or run.bat and can be found in your ontology repo in the src/ontology directory + and can be used in the exact same way.
  • +
+

+

Problems with memory (important)

+

One of the most frequent problems with running the ODK for the first time is failure because of lack of memory. +There are two potential causes for out-of-memory errors:

+
    +
  1. The application (for example, the ODK release run) needs more memory than assigned to JAVA inside the ODK docker container. This memory is set as part of the ODK wrapper files, i.e. src/ontology/run.bat or src/ontology/run.sh, usually with ODK_JAVA_OPTS.
  2. +
  3. The application needs more memory than is assigned to your docker installation. On most systems (apart from a handful fo Windows ones based on WSL), you have to set docker memory in the docker preferences. That happens here is that the Java memory above may be set to something like 10GB, while the maximum docker memory is set to 8GB. If the application needs, say, 9GB to run, you have assigned enough Java memory, but docker does not permit more than 8 to be used.
  4. +
+

Out-of-memory errors can take many forms, like a Java OutOfMemory exception, +but more often than not it will appear as something like an Error 137.

+

Solving memory issues

+

Setting memory limits:

+

There are two places you need to consider to set your memory:

+
    +
  1. Your ODK wrapper script (see above), i.e. odk.bat, odk.sh or src/ontology/run.sh (or run.bat) file. You can set the memory in there by adding + robot_java_args: '-Xmx8G' to your src/ontology/cl-odk.yaml file, see for example here.
  2. +
  3. Set your docker memory. By default, it should be about 10-20% more than your robot_java_args variable. You can manage your memory settings + by right-clicking on the docker whale in your system bar-->Preferences-->Resources-->Advanced, see picture below.
  4. +
+

dockermemory

+

More intelligent pipeline design

+

If your problem is that you do not have enough memory on your machine, the only solution is to try to engineer the pipelines a bit more intelligently, but even that has limits: large ontologies require a lot of memory to process when using ROBOT. For example, handling ncbitaxon as an import in any meaningful way easily consumes up to 12GB alone. Here are some tricks you may want to contemplate to reduce memory:

+
    +
  • robot query uses an entirely different framework for representing the ontology, which means that whenever you use ROBOT query, for at least a short moment, you will have the entire ontology in memory twice. Sometimes you can optimse memory by seperating query and other robot commands into seperate commands (i.e. not chained in the same robot command).
  • +
  • +

    The robot reason command consumes a lot of memory. reduce and materialise potentially even more. Use these only ever in the last possible moment in a pipeline.

    +
  • +
  • +

    `

    +
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/odk-update/index.html b/howto/odk-update/index.html new file mode 100644 index 000000000..5102a45b9 --- /dev/null +++ b/howto/odk-update/index.html @@ -0,0 +1,3637 @@ + + + + + + + + + + + + + + + + + + + + + + + + Update to a newer ODK version - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Updating ODK

+

A new version of the Ontology Development Kit (ODK) is out? This is what you should be doing:

+
    +
  1. Install the latest version of ODK by pulling the ODK docker images. In your terminal, run:
  2. +
+
docker pull obolibrary/odkfull
+
+
    +
  1. To update your repository, go to your src/ontology directory.
  2. +
+
cd myrepo/src/ontology
+
+
    +
  1. Create a new git branch in your usual way (optional)
  2. +
+

Now run the update command TWICE (the first time it may fail, as the update command needs to update itself).

+
sh run.sh make update_repo
+sh run.sh make update_repo
+
+
    +
  1. Edit the following file: .github/workflows/qc.yml (from the top level of your repository) and make sure that it is using the latest version of the ODK.
  2. +
+

For example, container: obolibrary/odkfull:v1.3.0, if v1.3.0. Is the latest version. If you are unsure what the latest version is, you can find that information here: https://hub.docker.com/r/obolibrary/odkfull/tags

+
    +
  1. +

    OPTIONAL: if you have any other GitHub actions you would like to update to the latest ODK, now is the time! All of your GitHub actions can be found in the .github/workflows/ directory from the top level of your repo.

    +
  2. +
  3. +

    Review all the changes and commit them, and make a PR the usual way. 100% wait for the PR to pass QC - ODK updates can be significant!

    +
  4. +
  5. +

    Send a reminder to all other ontology developers of your repo and tell them to install the latest version of ODK (step 1 only).

    +
  6. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/ontology-overview/index.html b/howto/ontology-overview/index.html new file mode 100644 index 000000000..0f9863233 --- /dev/null +++ b/howto/ontology-overview/index.html @@ -0,0 +1,3783 @@ + + + + + + + + + + + + + + + + + + + + + + + + Create an ontology overview - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

How to prepare OBO Academy ontology overview

+

Overview

+

This 'how to' guide provides a template for an Ontology Overview for your ontology. Please create a markdown file using this template and share it in your ontology repository, either as part of your ReadMe file or as a separate document in your documentation. The Ontology Overview should include the following three sections:

+
    +
  1. Scope
  2. +
  3. Curation and governance workflows
  4. +
  5. How the ontology is used in practice
  6. +
+

Scope

+
    +
  • Describe the domain and scope of ontology.
  • +
  • For example, the Mondo ontology covers concepts in the area of diseases across species and integrates disease terminologies from several underlying sources.
  • +
  • Include a figure of upper level terms (critical: give a list of all the high level terms that the ontology covers (1-2 levels). Eg Mondo: disease or disorder, disease susceptibility, disease characteristic).
  • +
+

image

+
    +
  • Include a figure with exemplary term (using OBO graph)
  • +
+

Curation and governance workflows

+

Ontology Curation

+

Describe the ontology level curation, ie how to add terms. For example, terms are added to the ontology via:

+
    +
  • Manual additions via Protege
  • +
  • ROBOT templates
  • +
  • DOSDP templates
  • +
+

Governance

+
    +
  • How do people request new terms or changes
  • +
  • How do people contribute terms directly (ie ROBOT templates, etc) (if applicable)
  • +
+

Note: There is no need for details about QC, ODK unless it is related to curation (ie pipeline that automatically generates mappings, include that)

+

How the ontology used in practice

+

Include 1-3 actual use cases. Please provide concrete examples.

+

For example:

+
    +
  1. this group uses the ontology to annotate this data for this purpose
  2. +
  3. this group uses the ontology to compute phenotypic similarity for prediction of related diseases
  4. +
  5. The ontology is used for named entity recognition (NER) as a dictionary as a synonym source
  6. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/open-science-engineer/index.html b/howto/open-science-engineer/index.html new file mode 100644 index 000000000..d794321d6 --- /dev/null +++ b/howto/open-science-engineer/index.html @@ -0,0 +1,4110 @@ + + + + + + + + + + + + + + + + + + + + + + + + Maximising impact as an open science engineer - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

How to be an Open Science Engineer - maximising impact for a better world

+

Contributors:

+ +

Status: This is a working document! Feel free to add more content!

+
+

The Open Science Engineer contributes to the collection and standardisation of publicly available scientific knowledge through curation, community-building and data, ontology and software engineering.

+
+

Open Science and all its sub-divisions, including Open Data and Open Ontologies, are central to tackling global challenges from rare disease to climate change. Open licenses are only part of the answer - the really tough part is the standardisation of data (including the unification of ontologies, the FAIRification of data and adoption of common semantic data models) and the organisation of a global, fully decentralised community of Open Science engineers. Here, we will discuss some basic principles on how we can maximise our impact as members of a global community combating the issues of our time:

+
    +
  1. Principle of Collaboration: How do we create a welcoming and inclusive environment for implementing social workflows and deepen our ties across project boundaries?
  2. +
  3. Principle of Upstream Fixing: How can we maximise benefits to the global community by pushing fixes as far upstream as possible?
  4. +
  5. Principle of No-ownership: How do we develop a sense of co-, or -no, ownership for community driven ontologies and ontology tools?
  6. +
+

We discuss how to best utilise social workflows to achieve positive impact. We will try to convince you that building a close collaborative international community by spending time on submitting and answering issues on GitHub, helping on Stack Overflow and other online platforms, or just reaching out and donating small amounts of time to other open science efforts can make a huge difference.

+

Table of contents

+ +

Tutorials

+

ICBO 2022 presentation

+

For a quick 10 minute overview:

+ + +

Monarch OBO training Tutorial

+

How to be an open science ontologist

+ + +

+

Principle of Collaboration

+

The heart and soul of a successful Open Science culture is collaboration. The relative isolation into which many projects are forced due to limitations imposed by certain kinds of funding makes it even more important to develop effective social, collaborative workflows. This involve effective online communication, vocal appreciation (likes, upvotes, comments), documentation and open-ness.

+

Question answering and documentation

+
    +
  1. When you find an answer on Stack Overflow, GitHub issues (or even Hacker News) that helps you, upvote it. It cannot be stressed enough how important this is to let good answers float up to the top (become more visible), and recognise the time and energy people spend formulating answers. If you do not have a Stack Overflow account, make one now.
  2. +
  3. If you cannot find an answer to a question on GitHub or Stack Overflow, and you figure out a solution consider asking the question and answering it yourself! Consider this: if you provide an answer that will result in only 6 open science people spending one hour less solving a problem (a conservative estimate), you saved the taxpayer 6 hours of salary (not to speak of improving the quality of the solutions)!
  4. +
  5. Answer questions on GitHub issues even when on trackers not in your purview. People often falsely assume that they should not try to answer queries in an open source project that they are not directly involved with. This is wrong! Open source developers highly (!) appreciate it when you chip in on answering queries, from dealing with errors and exceptions to "How do I?" kind of queries. Get involved on other peoples issue trackers!
  6. +
  7. Before asking questions on slack or issue trackers, always do a basic search first. Consider (1) the project's documentation, (2) open and closed issues on the issue tracker of the project your query is related to. If you do not find the information you need try and craft questions that are concise yet give sufficient context. To enable future users to find these answers, consider using the issue tracker instead of slack! Also it is important to remember that the people that answer your questions have to spend time they could have spend on other Open Science work!
  8. +
  9. Make yourself responsible for continuously improving open science documentation. If a question was answered on slack or in an issue, consider a 10 minute detour to update the documentation of the project to reflect the solution if you think it could be helpful. This is the only way to scale Open Science projects: as the user base increases, providing support on a 1:1 basis will soon be infeasible.
  10. +
  11. Good documentation is as important as good quality code, and everyone can help out, even if it is "only" about formatting, typos and adding additional links!
  12. +
+

Social Conduct and review

+
    +
  1. Be overly generous with likes. Being a Open Science Engineer can be quite a lonely affair: hundreds of unanswered issues and questions, pull requests that remain un-reviewed for months, projects for which you never really get credit (want to be a QC engineer, anyone?). Even if you do not have time to respond to all issues you scroll through in a day, add a like if you find an answer useful. This goes for slack comments, Tweets and random Pull Requests you have nothing to do with as well. And, perhaps most importantly star all GitHub repos that are useful to you (you could, for example, scroll through https://github.com/topics/obofoundry and star all ontologies and ontology projects useful in your work)! This is a huge deal as it significantly motivates other OSEs and therefore provides fuel to the Open Science movement.
  2. +
  3. Reduce work for others as much as possible by communicating clearly.
      +
    • Take the time to write clear responses with just the right amount of detail. The goal of your communication is to get the point across as swiftly as possible, and misunderstandings are a huge time killer.
    • +
    • Again: Sloppy, quick responses can cause more work than not responding at all!
    • +
    • Use bullet lists to structure your response, and checklists for action items.
    • +
    • Hide unnecessary details with <details> tag: <details><summary>[click arrow to expand]</summary>. See example here
    • +
    • Be generous linking external issues to provide context. Example: +image
    • +
    +
  4. +
  5. Be positive and generous with gratitude and attribution
      +
    • If a member of the community opens an issue, always thank them for the issue right away. We need to encourage people to open issues.
    • +
    • Don't let issues linger without any response. It is better to respond with a thank you and some instructions for the issuer on what to do to fix the issue themselves than to let it linger. We need our stakeholders to be more involved - first time issuers are especially vulnerable and may not bother to come back if they are ignored.
    • +
    • When giving feedback, be positive, friendly and constructive.
    • +
    • Show appreciation: thank users for issues and thank a PR reviewer for their review. Always.
    • +
    • Attribute, attribute, attribute. If someone helped you sort something out emphasise this publicly!
    • +
    +
  6. +
+

Openness

+
    +
  1. Promote truly open communication:
      +
    • Contribute your thoughts openly so other people can benefit from it.
    • +
    • Don't put issues on Slack where the public can't see it. Consider moving interesting discussions on Slack into a more public space, like GitHub discussions.
    • +
    • Create public tickets which can be searched and referred to later.
    • +
    +
  2. +
+

+

Principle of Upstream Fixing

+

Maximising impact of your changes is by far the best way you can benefit society as an Open Science Engineer. Open Science projects are a web of mutually dependent efforts, for example:

+
    +
  • Ontologies re-use terms and axioms from other ontologies
  • +
  • Software packages provide functionality that help building Knowledge Graphs, ensuring the quality of ontology releases and extract new insights from existing knowledge and scientific facts.
  • +
  • Projects use ontologies for indexing data and making them discoverable.
  • +
+

The key to maximising your impact is to push any fixes as far upstream as possible. Consider the following projects and the way they depend on each other (note that this is a gross simplification for illustration; in reality the number of dependencies is much higher):

+

Interdependent projects

+

Let's think of the following (entirely fabricated) scenario based on the image above.

+
    +
  1. Open Targets provides evidence for a gene association with some disease.
  2. +
  3. This association is only supported by the IMPC data source which associates mouse and human phenotypes using the phenodigm algorithm which is based on semantic similarity.
  4. +
  5. The semantic similarity scores are computed using cross-species axioms provided by the Monarch Initiative, especially uPheno.
  6. +
  7. The cross-species logical axioms provided by Monarch depend on a range of lexical and logical approaches. This means the structure of uPheno is directly influenced by the naming and synonyms provided by species specific phenotype ontologies (SSPOs), such as the Human Phenotype Ontology (HPO).
  8. +
+

It is, therefore, possible that:

+
    +
  1. A faulty synonym is accidentally added to the HPO...
  2. +
  3. ...which causes a faulty logical axiom candidate in uPheno (again missed by QC measures)...
  4. +
  5. ...which causes a faulty similarity value in Monarch...
  6. +
  7. ...which causes a wrong disease-gene association in IMPC...
  8. +
  9. ...which ultimately leads to a faulty piece of evidence in Open Targets.
  10. +
+

Imagine a user of Open Targets that sees this evidence, and reports it to Open Targets as a bug. Open Targets could take the easy way out: remove the erroneous record from the database permanently. This means that the IMPC (itself with hundreds of dependent users and tools), Monarch (again with many dependents), uPheno and HPO (with probably thousands of dependents) would still carry forward that (tiny) mistake. +This is the basic idea of maximising impact through Upstream Fixing: The higher up-stream (up the dependency graph) an error is fixed, the more cumulative benefit there is to a huge ecosystem of tools and services.

+

An even better fix would be to have each fix to the ontology result in a new, shared quality control test. For example, some errors (duplicate labels, missing definition, etc) can be caught by automated testing. Here is a cool story.

+

Case Study: External contribution and upstream fixing

+
    +
  • Over time, we have developed QC checks that ensure that the same exact synonym cannot be shared between two classes. However the checks where not perfect..
  • +
  • @vasvir (GitHub name), a member of the global community reached out to us on Uberon: https://github.com/obophenotype/uberon/issues/2424. + vasvir first issue +https://github.com/obophenotype/uberon/pull/2640
  • +
  • Instead of fixing the discovered issue by ourselves, we invited @vasvir to fix the issues himself. We gave him some instructions on how to proceed, leading not only to eight new pull requests, but also an entirely new Quality Control check that augments the existing checks with case-insensitivity (Gasserian ganglion and gasserian ganglion where previously considered distinct). Note: before the PRs, @vasvir did not speak any SPARQL. + vasvir QC PR
  • +
  • Members of our team helped @vasvir to see his first pull requests through by instructing them how to use the technology (robot, ODK, docker, SPARQL), and follow our pull request conventions.
  • +
+

Instead of simply deleting the synonyms for his NLP projects, @vasvir instead decided to report the issues straight to the source. This way, hundreds, if not thousands of projects will directly or indirectly benefit from him!

+

Other examples of upstream fixing

+

Example 1: While curating Mondo, Nicole identified issues relevant to Orphanet and created this issue.

+

image

+
+ +

Example 2: There is overlap between Mondo and Human Phenotype Ontology and the Mondo and HPO curators tag each other on relevant tickets.

+

image

+
+ +

Example 3: In Mondo, if new classifications are made, Mondo curators report this back to the source ontology to see if they would like to follow our classification.

+

image

+

Conclusions: Upstream Fixing

+

Have you ever wondered how much impact changing a synonym from exact to related could have? Or the addition of a precise mapping? The fixing of a typo in a label? It can be huge. And this does not only relate to ontologies, this goes for tool development as well. We tend to work around bugs when we are building software. Instead, or at least in addition to, we should always report the bug at the source to make sure it gets fixed eventually.

+

+

Principle of No-ownership

+

Many of the resources we develop are financed by grants. Grants are financed in the end by the taxpayer. While it is occasionally appropriate to protect open work with creative licenses, it rarely makes sense to restrict access to Open Ontologies work - neither to commercial nor research exploitation (we may want to insist on appropriate attribution to satisfy our grant developers).

+

On the other side there is always the risk of well-funded commercial endeavours simply "absorbing" our work - and then tying stakeholders into their closed, commercial ecosystem. However, this is not our concern. We cannot really call it stealing if it is not really ours to begin with! Instead of trying to prevent unwanted commercialisation and closing, it is better to work with corporations in pre-competitive schemes such as Pistoia Alliance or Allotrope Foundation and lobby for more openness. (Also, grant authorities should probably not allow linking scientific data to less than totally open controlled vocabularies.)

+

Here, we invite you to embrace the idea that ontologies and many of the tools we develop are actually community-driven, with no particular "owners" and "decision makers". While we are not yet there (we don't have sufficiently mature governance workflows for full fledged onto-communism), and most ontologies are still "owned" by an organisation that provides a major source of funding, we invite you to think of this as a preliminary state. It is better to embrace the idea of "No-ownership" and figure out social workflows and governance processes that can handle the problems of decision making.

+

Take responsibility for your community (ontologies)

+
    +
  1. Ensure that you see your issues and pull requests through to the end. No one will do this for you. Remember - contributors to open source projects, especially ontologies, have their own agendas, and do not automatically care about other peoples work.
  2. +
  3. +

    Feel empowered to nudge reviewers or experts to help. Get that issue answered and PR merged whatever it takes!

    +

    Example: After waiting for the PR to be reviewed, Meghan kindly asked Nicole if she should find a different reviewer. +image +1. Find review buddies. For every ontology you seek to contribute to pair up with someone who will review your pull requests and you will review their pull requests. Sometimes, it is very difficult to get anyone to review your pull request. Reach out to people directly, and form an alliance for review. It is fun, and you learn new things (and get to know new people!). +1. Be proactive

    +
      +
    • Problem of decentralization and lack of hierarchial organisation needs proactive and brave decision makers.
    • +
    • No one will do your work for you. See your pull requests and issues through all the way to the release!
    • +
    • Learn the tools necessary to make basic fixes - just try it/do it.
    • +
    • Always have your index finger on the Edit button when reading documentation. There is always something to fix, including typos and content.
      +image
    • +
    +
  4. +
+

Reduce your fear of "breaking the ontology".

+
    +
  1. Most of our ontologies have many checks in place, and GitHub has version control. Nothing has ever been broken to the point where it can't be fixed. (Remember to work on a branch!)
    + Example: The QC checks on this PR failed 6 times before it passed. + image
  2. +
  3. Perfect is the enemy of good enough.
  4. +
  5. It's okay if your PR is rejected. Mentally, prepare yourself for having the PR rejected. This is fine - the community always looks to the best possible way to change the ontology. The next PR will be accepted!
  6. +
  7. If you make a mistake, and it is pointed out during pull request review, consider adding an appropriate QC check to prevent the issue from happening again. And who knows - maybe you have an opportunity to fix past mistakes!
  8. +
+

+

TLDR - Summary

+
    +
  • Principle of Collaboration
      +
    • Upvote answers, on Stack Overflow, GitHub and any other open communication platform.
    • +
    • Get involved on other peoples issue trackers.
    • +
    • Always do a basic search before asking.
    • +
    • Continuously improve Open Science documentation.
    • +
    • Be overly generous with likes.
    • +
    • Always strive to reduce work for other members of the community.
    • +
    • Be positive and generous with gratitude and attribution.
    • +
    • Promote open communication (less slack, more GitHub).
    • +
    +
  • +
  • Principle of Upstream fixing
      +
    • The key to maximising your impact is to push any fixes as far upstream as possible.
    • +
    • When you experience a problem, always report it to the immediate source. If you can report it as high upstream as possible.
    • +
    • In a perfect world, provide a fix in the form of a pull request.
    • +
    +
  • +
  • Principle of No-ownership
      +
    • See your issues and pull requests through to the end (dont drop the ball, no one will do your work for you)
    • +
    • Feel empowered to nudge reviewers until they tell you not to.
    • +
    • Find review buddies (this is really helpful to organise community work).
    • +
    • Be proactive... and brave.
    • +
    • Reduce your fear of breaking the ontology.
    • +
    • Reduce your fear of getting a pull request rejected.
    • +
    • Reduce other peoples fear of breaking the ontology by adding additional QC checks.
    • +
    +
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/prettify/index.html b/howto/prettify/index.html new file mode 100644 index 000000000..ca85ec182 --- /dev/null +++ b/howto/prettify/index.html @@ -0,0 +1,3708 @@ + + + + + + + + + + + + + + + + + + + + + + + + Prettify Markdown Files - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Prettify markdown files

+

Description

+

Prettier standardizes the representation and formatting of Markdown. More information is available at https://prettier.io/. Note, these instructions are for a Mac.

+

Install npm

+

If you do not have npm installed, this can be installed using homebrew (if you have homebrew installed).

+

brew install node

+

Install Prettier locally

+
    +
  1. Run npm install --save-dev --save-exact prettier
  2. +
+

Prettify your files

+
    +
  1. Create a new branch
  2. +
  3. Navigate to your root directory containing obook
  4. +
  5. Run npx prettier --write .
  6. +
  7. Commit to your branch and create a pull request
  8. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/protege-browse-search/index.html b/howto/protege-browse-search/index.html new file mode 100644 index 000000000..4353d971b --- /dev/null +++ b/howto/protege-browse-search/index.html @@ -0,0 +1,3755 @@ + + + + + + + + + + + + + + + + + + + + + + + + Browsing and Searching - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Browsing and Searching

+

Open the ontology in Protégé

+

Note: Windows users should open Protege using run.bat +Note: For the purpose of this how-to, we will be using MONDO as the ontology

+
    +
  1. Navigate to where you downloaded the repository and open the mondo-edit.obo file (src/ontology/mondo-edit.obo)
  2. +
  3. When you open Protege, you will be on the Active Ontology tab
  4. +
  5. Note the Ontology IRI field. The IRI is used to identify the ontology on the Web.
  6. +
+

image

+

The Protégé UI

+

The Protégé interface follows a basic paradigm of Tabs and Panels. By default, Protégé launches with the main tabs seen below. The layout of tabs and panels is configurable by the user. The Tab list will have slight differences from version to version, and depending on your configuration. It will also reflect your customizations.

+

To customize your view, go to the Window tab on the toolbar and select Views. Here you can customize which panels you see in each tab. In the tabs view, you can select which tabs you will see. You will commonly want to see the Entities tab, which has the Classes tab and the Object Properties tab.

+

image

+

Note: if you open a new ontology while viewing your current ontology, Protégé will ask you if you'd like to open it in a new window.  For most normal usage you should answer no. This will open in a new window.

+

The panel in the center is the ontology annotations panel. This panel contains basic metadata about the ontology, such as the authors, a short description and license information.

+

image

+

Running the reasoner

+

Before browsing or searching an ontology, it is useful to run an OWL reasoner first. This ensures that you can view the full, intended classification and allows you to run queries. Navigate to the query menu, and run the ELK reasoner:

+

image

+

Entities tab

+

You will see various tabs along the top of the screen. Each tab provides a different perspective on the ontology. +For the purposes of this tutorial, we care mostly about the Entities tab, the DL query tab and the search tool. OWL Entities include Classes (which we are focussed on editing in this tutorial), relations (OWL Object Properties) and Annotation Properties (terms like, 'definition' and 'label' which we use to annotate OWL entities. +Select the Entities tab and then the Classes sub-tab. Now choose the inferred view (as shown below).

+

image

+

The Entities tab is split into two halves. The left-hand side provides a suite of panels for selecting various entities in your ontology. When a particular entity is selected the panels on the right-hand side display information about that entity. The entities panel is context specific, so if you have a class selected (like Thing) then the panels on the right are aimed at editing classes. The panels on the right are customizable. Based on prior use you may see new panes or alternate arrangements. +You should see the class OWL:Thing. You could start browsing from here, but the upper level view of the ontology is too abstract for our purposes. To find something more interesting to look at we need to search or query.

+

Searching in Protege

+

You can search for any entity using the search bar on the right:

+

image

+

The search window will open on top of your Protege pane, we recommend resizing it and moving it to the side of the main window so you can view together.

+

image

+

Here's an example search for 'COVID-19': +image

+

It shows results found in display names, definitions, synonyms and more. The default results list is truncated. To see full results check the 'Show all results option'. You may need to resize the box to show all results. +Double clicking on a result, displays details about it in the entities tab, e.g.

+

image

+

In the Entities, tab, you can browse related types, opening/closing branches and clicking on terms to see details on the right. In the default layout, annotations on a term are displayed in the top panel and logical assertions in the 'Description' panel at the bottom.

+

Try to find these specific classes:

+
    +
  • 'congenital heart disease'
  • +
  • 'Kindler syndrome'
  • +
  • 'kidney failure'
  • +
+

Note - a cool feature in the search tool in Protege is you can search on partial string matching. For example, if you want to search for ‘down syndrome’, you could search on a partial string: ‘do synd’.

+
    +
  • Try searching for ‘br car and see what kind of results are returned.
  • +
  • Question: The search will also search on synonyms. Try searching for ‘shingles’ and see what results are returned. Were you able to find the term?
  • +
+

Note - if the search is slow, you can uncheck the box ‘Search in annotation values. Try this and search for a term and note if the search is faster. Then search for ‘shingles’ again and note what results you get.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/revert-commit/index.html b/howto/revert-commit/index.html new file mode 100644 index 000000000..e16edbfd7 --- /dev/null +++ b/howto/revert-commit/index.html @@ -0,0 +1,3708 @@ + + + + + + + + + + + + + + + + + + + + + + + + Revert a commit - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

How to revert a commit using GitHub Desktop

+

Prerequisites

+

You need to have a GitHub account GitHub and download GitHub Desktop

+

Background

+

Reversing a commit

+
    +
  1. Create a new branch in GitHub Desktop (Important step! Never make changes to the master branch!)
  2. +
  3. Click on History tab.
  4. +
  5. Find commit you want to revert.
  6. +
  7. Right click. Click on 'Reverse Changes in Commit' from the drop-down list.
  8. +
  9. Fix any conflicts.
  10. +
  11. Commit branch, create pull request and assign a reviewer.
  12. +
+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/review-disease-mappings/index.html b/howto/review-disease-mappings/index.html new file mode 100644 index 000000000..68e380b9e --- /dev/null +++ b/howto/review-disease-mappings/index.html @@ -0,0 +1,3839 @@ + + + + + + + + + + + + + + + + + + + + + + + + How to review disease mappings - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Reviewing disease mappings for Biocurators and Clinicians

+

Description

+

This guide provides guidelines on how to rapidly review large scale efforts to create mappings between ontology classes.

+

Mapping can be created using tools like OAK to generate a bunch of mapping candidates. A reviewer then needs to determines whether the mapping is correct or not.

+

Refer to Are these two entities the same? A guide. for a comprehensive guide on determining a specific mapping.

+

Guidelines

+
    +
  1. Depending on the format of the table you are reviewing, it is recommended that you open the table in a google spreadsheet, to allow for collaborative work and to allow yourself to add notes in a new column, or add formatting or color coding.
  2. +
  3. Hide any columns that are not relevant, to make it easier to quickly compare the mappings. For example, in the table below, you may want to hide the mapping_justification column, mapping_tool. You can also move the columns around so the labels are next to each other.
  4. +
  5. Look at the confidence score for the mapping and look at the lower confidence scores first, as these are more likely to have issues.
  6. +
  7. Review the label of the mappings. Note, matching on the label is not always sufficient to conclude two terms are equivalent. Ideally, reviewers should compare the definitions of each term to ensure they have the same meaning.
  8. +
  9. Review how the match was made. If it is a lexical match, matching on labels, it is likely the mapping is correct but this should ideally be confirmed by reviewing the definitions as mentioned above.
  10. +
  11. If matches are made based on shared xrefs, these should be carefully reviewed because not all mapping between terminologies are intended to be equivalent xrefs. For example: MONDO:0000509 non-syndromic intellectual disability was mapped to DOID:0081098 autosomal recessive intellectual developmental disorder 13 based on the shared xref OMIM:613192. The Mondo class is broader than this DO class and this is not an exact mapping.
  12. +
  13. Watch out for matching on acronyms. Acronyms can mean a lot of different things and sometimes the mapping tools will incorrectly match on acronyms.
  14. +
+

Example mappings

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
subject_idsubject_labelpredicate_idobject_idobject_labelmapping_justificationmapping_toolconfidencesubject_match_fieldobject_match_fieldmatch_stringcomment
IDA oboInOwl:hasDbXref>A oboInOwl:source>A sssom:object_label
MONDO:0000159bone marrow failure syndromeMONDO:equivalentToNCIT:C165614Bone Marrow Failure Syndromesemapv:LexicalMatchingoaklib0.849778895rdfs:labelrdfs:labelbone marrow failure syndromeLEXMATCH
MONDO:0000376respiratory system cancerMONDO:equivalentToNCIT:C4571Malignant Respiratory System Neoplasmsemapv:LexicalMatchingoaklib0.8oio:hasExactSynonymrdfs:labelmalignant respiratory system neoplasmLEXMATCH
MONDO:0000437cerebellar ataxiaMONDO:equivalentToNCIT:C26702Ataxiasemapv:LexicalMatchingoaklib0.8oio:hasExactSynonymrdfs:labelataxiaLEXMATCH
MONDO:0000541jejunal adenocarcinomaMONDO:equivalentToNCIT:C181158Jejunal Adenocarcinomasemapv:LexicalMatchingoaklib0.849778895rdfs:labelrdfs:labeljejunal adenocarcinomaLEXMATCH
MONDO:0000543ovarian melanomaMONDO:equivalentToNCIT:C178441Ovarian Melanomasemapv:LexicalMatchingoaklib0.849778895rdfs:labelrdfs:labelovarian melanomaLEXMATCH
MONDO:0000665apraxiaMONDO:equivalentToNCIT:C180557Apraxiasemapv:LexicalMatchingoaklib0.849778895rdfs:labelrdfs:labelapraxiaLEXMATCH
MONDO:0000705Clostridium difficile colitisMONDO:equivalentToNCIT:C180523Clostridium difficile Infectionsemapv:LexicalMatchingoaklib0.8oio:hasExactSynonymrdfs:labelclostridium difficile infectionLEXMATCH
MONDO:0000736dyschromatosis universalis hereditariaMONDO:equivalentToNCIT:C173131Dyschromatosis Universalis Hereditariasemapv:LexicalMatchingoaklib0.849778895rdfs:labelrdfs:labeldyschromatosis universalis hereditariaLEXMATCH
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/review-pull-request/index.html b/howto/review-pull-request/index.html new file mode 100644 index 000000000..0e193e176 --- /dev/null +++ b/howto/review-pull-request/index.html @@ -0,0 +1,3745 @@ + + + + + + + + + + + + + + + + + + + + + + + + Review a pull request - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + + + + + + + +

How to review a pull request

+

Pull Requests are GitHub's mechanism for allowing one person to propose changes to a file (which could be a chunk of code, documentation, or an ontology) and enabling others to comment on (review) the proposed changes. You can learn more about creating Pull Requests (PRs) here; this document is about reviewing other people's PRs.

+

One key aspect of reviewing pull requests (aka code review or ontology change review) is that the purpose is not just to improve the quality of +the proposed change. It is also about building shared coding habits and practices and improving those practices for all engineers (ontology and software) across a whole organisation (effectively building the breadth of project knowledge of the developers and reducing the amount of hard-to-understand code).

+

Reviewing is an important aspect of open science and engineering culture that needs to be learned and developed. In the long term, this habit will have an effect on the growth and impact of our tools and ontologies comparable to the engineering itself.

+

It is central to open science work that we review other people's work outside our immediate team. We recommend choosing a few people with whom to mutually review your work, whether you develpo ontologies, code or both. It is of great importance that pull requests are addressed in a timely manner, ideally within 24 hours of the request. The requestor is likely in the headspace of being receptive to changes and working hard to get the code fixed when they ask for a code review.

+

Overarching workflow

+
    +
  1. +

    Understand the Context: First, read the description of the pull request (PR). It should explain what changes have been made and why. Understand the linked issue or task related to this PR. This will help you understand the context of the changes.

    +
  2. +
  3. +

    Check the Size: A good PR should not be too large, as this makes it difficult to understand the full impact of the changes. If the PR is very large, it may be a good idea to ask the author to split it into smaller, more manageable PRs.

    +
  4. +
  5. +

    Review the Code: Go through the code changes line by line. Check the code for clarity, performance, and maintainability. Make sure the code follows the style guide and best practices of your project. Look out for any potential issues such as bugs, security vulnerabilities, or performance bottlenecks.

    +
  6. +
  7. +

    Check the Tests: The PR should include tests that cover the new functionality or changes. Make sure the tests are meaningful, and they pass. If the project has a continuous integration (CI) system, all tests should pass in the CI environment. In some cases, manual testing may be helpful (see below).

    +
  8. +
  9. +

    Check the Documentation: If the PR introduces new functionality, it should also update the documentation accordingly. Even for smaller changes, make sure that comments in the code are updated.

    +
  10. +
  11. +

    Give Feedback: Provide constructive feedback on the changes. If you suggest changes, explain why you think they are necessary. Be clear, respectful, and concise. Remember, your goal is to help improve the quality of the code.

    +
  12. +
  13. +

    Follow Up: After you have provided feedback, check back to see if the author of the PR has made the suggested changes. You might need to have a discussion or explain your points further.

    +
  14. +
  15. +

    Approve/Request Changes: If you are satisfied with the changes and all your comments have been addressed, approve the PR. If not, request changes and explain what should be done before the PR can be approved.

    +
  16. +
  17. +

    Merge the PR: Once the PR is approved and all CI checks pass, it can be merged into the main branch. If your project uses a specific merge strategy (like squash and merge or rebase and merge), make sure it's followed.

    +
  18. +
+

How to review the code / ontology changes thoroughly

+
    +
  1. Ensure that the PR links to a related issue that explains the context of the PR. If there is no issue, request that an issue be created to motivate the change in the PR (gently - accept if the answer is negative).
  2. +
  3. Understand the Context: Begin by familiarizing yourself with the purpose of the changes. Read the description of the pull request, any linked issues or tasks, and understand the feature or bug that the pull request is addressing.
  4. +
  5. Ensure that all changes in the PR are intentional. Changes should be small. If there are a lot of unrelated changes, in particular line ending changes, serialisation changes in ontology (e.g. a lot of added xsd:string declarations), request before doing a review to reduce the changes to only the changes pertaining to the specific issue at hand.
  6. +
  7. Review the Code Structure: Look at the overall structure of the code. Check if the code is organized logically and consistently, follows the project's coding conventions, and the changes are made in the right place.
      +
    • For software, consider factors like whether the code is in an approporiate location (files, modules). If there are no specific coding standards for the project, suggest that such standards be created.
    • +
    • For ontologies, check that the change is to the right file (edit file, DOSDP patterns, ROBOT templates etc.).
    • +
    +
  8. +
  9. Check the Code Quality: Review the code in detail. Look for any programming errors, potential performance issues, or security vulnerabilities. The code should be clean, efficient, and easy to understand. Pay attention to the naming conventions, error handling, edge cases, and potential bugs.
      +
    • The two items below are where you should spend most of your time:
    • +
    +
  10. +
  11. Review the Tests: Ensure that the PR includes tests and that they cover all important aspects of the new code. Check if all tests pass, and if the project has a continuous integration (CI) system, ensure all CI checks pass as well.
      +
    • For ontologies, it is essential that a bug fix is augmented by a test that can recognise the same bug happening again in the future!
    • +
    • For code, it is a bit of a judgment call whether a test is needed, but in general, we have to have at least thorough integration tests that touch the feature affected by the pull request.
    • +
    +
  12. +
  13. Test the Changes Manually (use with care): Depending on the change, it may be a good idea to check out the PR branch and test the changes manually. This can help catch issues that are not covered by automated tests, or may be necessary if the diff is too large for a normal review. Note that this is an instance of Guru Testing and should only be used when there is a sense that automated testing is incomplete. If at all possible, an automated test should be run immediately after the manual review is done. Examples of where this kind of manual review may be appropriate are cases where, for example, a lot of the class hierarchy of an ontology is affected by a change. Manual review may catch issues such as missing superclasses which are hard to capture through automated testing.
  14. +
  15. Provide Constructive Feedback: Provide clear, respectful, and constructive feedback. Highlight the parts of the code that you think are good and the parts that need improvement. Request changes if necessary, and approve the PR once you're satisfied with the changes.
  16. +
+

How to review a pull request in 5 min

+

In many cases, we may not have the time to perform a proper code review. In that case, try at least to achieve this:

+
    +
  1. Ensure that the PR has a related issue that explains the context of the PR (see above).
  2. +
  3. Ensure that all changes in the PR are intentional (see above).
  4. +
  5. File and structure overview: Scan through the files and directories that have been modified. Note the overall structure of the changes, and look for any unusual modifications (e.g., changes in areas not related to the stated purpose of the PR, or large diffs that are not explained by the PR description).
  6. +
  7. Random code sampling: Instead of trying to read every line, pick a few sections of code at random to review. Pay attention to the cleanliness of the code, and see if there are any glaring issues or departures from the project's coding conventions.
  8. +
  9. Check automated tests and results: Review the tests that have been added or modified. Check the results of the tests and automated build processes, if available. Even in a quick review, the status of the tests can provide useful information about the quality of the changes.
  10. +
  11. Provide high-level feedback: Based on your quick review, provide high-level feedback. This could include praising good practices you've noticed, pointing out major concerns or areas that seem off, or simply acknowledging the work with a comment.
  12. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/screenshot/index.html b/howto/screenshot/index.html new file mode 100644 index 000000000..aaba9776c --- /dev/null +++ b/howto/screenshot/index.html @@ -0,0 +1,3779 @@ + + + + + + + + + + + + + + + + + + + + + + + + Create Screenshot and paste into an issue - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Create Screenshot and paste into an issue

+

Description

+

The instructions below describe how to capture a screenshot of your screen, either your entire screen or a partial screenshot. These can be pasted into GitHub issues, pull requests or any markdown file.

+

Screenshot Instructions (Mac)

+
    +
  1. Full screen: Hit the Command, Shift and 3 keys together to take a screenshot of the entire screen
  2. +
+

image

+
    +
  1. Partial screen: Hit the Shift, Control, Command and 4 keys together to take a screenshot of a portion of the screen. Crosshairs will appear and select the portion you would like to capture.
  2. +
+

image

+
    +
  1. Paste the partial screenshot into comment box in GitHub.
  2. +
+

Video explanation: Partial screenshot on a Mac

+ + +

Screenshot Instructions (PC)

+

Use the Snipping Tool (available with Windows 10)

+
    +
  1. The easiest way to elicit the tool is to press Windows logo key + Shift + S to open a dialog window to select the type of screen capture you would like to do. 1. Options exist for free form, rectangular, window or full screen snips.
  2. +
  3. After snipping, a notification dialog pops up so the user can select the location to save or annotate the screenshot. Otherwise, the default setting is to save to the clipboard.
  4. +
+

Use your keyboard

+

Different keyboards have different keys. One of the following options should work:

+
    +
  1. Fn + Print Screen is an option on some keyboards
  2. +
  3. PrtScn or PrtSc
  4. +
  5. Hit Shift, Window, S keys together to take a screenshot. You will be able to resize the screenshot as needed.
  6. +
+

Reference

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/set-up-protege/index.html b/howto/set-up-protege/index.html new file mode 100644 index 000000000..dae863a67 --- /dev/null +++ b/howto/set-up-protege/index.html @@ -0,0 +1,3936 @@ + + + + + + + + + + + + + + + + + + + + + + + + Setup Protege 5.5 - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Setup Protege 5.6.2

+

(This was adopted from the Gene Ontology editors guide and Mondo documentation). Updated 2023-08-16 by Nicole Vasilevsky

+

Mac Instructions

+

These instructions are for Mac OS

+

Protege version

+

As of February 2023, OBO ontology editors are using Protege version 5.6.2.

+

Download and install Protege

+ +

Increase memory in Protege 5.6.2

+

Protege needs at least 4G of RAM to cope with large ontologie like Mondo, ideally use 12G or 16G if your machine can handle it. Edits to the Protege configuration files will not take effect until Protege is restarted.

+
    +
  1. If running from Protege.app on a Mac, open the /Applications/Protege-5.6.2/Protégé.app/Contents/conf/jvm.conf file
  2. +
  3. set the heap size to 12G: max_heap_size=12G
  4. +
+

Increase memory in Protege 5.5.0

+
    +
  1. If running from Protege.app on a Mac, open the /Applications/Protege-5.5.0/Protégé.app/Contents/info.plist file
  2. +
  3. Below the line: <string>-Xss16M</string>
  4. +
  5. Insert another line: <string>-Xmx12G</string>
  6. +
+

Some Mac users might find that the edits need to be applied to /Applications/Protégé.app/Contents/Info.plist.

+

PC Instructions

+

Taken in part from Memory Management with Protégé by Michael DeBellis. Updated by Nicole Vasilevsky.

+

The following instructions will probably not work if Protégé was installed from the platform independent version, which does not include the Java Runtime Environment or a Windows .exe launcher.

+
    +
  • Visit https://protege.stanford.edu/
  • +
  • Click orange DOWNLOAD NOW button
  • +
  • Click gray Download for Windows button on subsequent page
  • +
  • Register if desired, or skip registration
  • +
  • Find Protege-<version>-win.zip
  • +
  • most likely in your Downloads directory (or in This PC directory)
  • +
  • current version is Protege-5.5.0-win.zip
  • +
  • Unzip the downloaded file with your favorite file compression utility
  • +
  • You should see the Protege application and a file called 'run'
  • +
  • To open Protege, double-click the 'run' file. This will open cmd.exe and it will take a bit to open the file.
  • +
  • The fonts used by Protégé may be very small, especially on some high resolution monitors. To increase the font size, go to File -> Preferences -> Renderer -> Font size.
  • +
  • Exit Protégé after confirming that it can be launched.
  • +
  • There should be a Protege.l4j.ini in the same directory as Protege.exe. Opening large ontologies like MONDO will require an increase to Protege's default maximum Java heap size, which is symbolized as -Xmx<size>. 4GB is usually adequate for opening MONDO, as long as 4GB of free memory is really available on your system before you launch Protégé! Allocating even more memory will improve some tasks, like reasoning. You can check your available memory by launching the Windows Task Manager, clicking on the More details button on the bottom of the window and then checking the Performance tab at the top of the window.
  • +
  • It's recommended to make a backup of Protege.l4j.ini before editing
  • +
+

Open Protege.l4j.ini with a lightweight text editor like Atom or Sublime. Using notepad.exe instead might work, but may change character encodings or the character(s) used to represent End of Line.

+

After increasing the memory available to Protégé, Protege.l4j.ini might look like this.

+
-Xms200M
+-Xmx4G
+-Xss16M
+
+

Note that there is no whitespace between -Xmx, the numerical amount of memory, and the Megabytes/Gigabytes suffix. Don't forget to save.

+

Taking advantage of the memory increase requires that Protégé is shut down and relaunched, if applicable. The methods discussed here may not apply if Protégé is launched through any method other than double clicking Protege.exe from the folder where the edited Protege.l4j.ini resides.

+

Note on increasing memory

+

If you have issues opening Protege, then reduce the memory, try 10G (or lower) instead.

+

Add ELK reasoner

+

See instructions here. Note: Protege 5.6.1 has the ELK reasoner installed.

+

Instructions for new Protege users

+

Setting your ID range

+

See instructions here.

+

User details

+
    +
  1. User name Click Use supplied user name: add your name (ie nicolevasilevsky)
  2. +
  3. Check Use Git user name when available
  4. +
  5. Add ORCID. Add the ID number only, do not include https://, ie 0000-0001-5208-3432
  6. +
+

Setting username and auto-adding creation date

+
    +
  1. In the Protege menu, go to Preferences > New Entities Metadata tab
  2. +
  3. Check Annotate new entities with creator (user) box
  4. +
  5. Creator property Add http://purl.org/dc/terms/contributor
  6. +
  7. Creator value Select Use ORCID
  8. +
  9. Date property Add http://purl.org/dc/terms/date
  10. +
  11. Date value format Select ISO-8601
  12. +
+

Install Protege OBO plugin

+

This plugin enables some extra functionality, such as the option to obsolete entities from the menu. To install it:

+
    +
  1. Go to File > Check for plugins....
  2. +
  3. Click on OBO Annotations Editor and click on Install.
  4. +
  5. Restart Protege for the plugin to be active.
  6. +
  7. You should now have the option to obsolete entities in Edit > Make entity obsolete.
  8. +
  9. You can see a list of all installed plugins in Preferences > Plugins.
  10. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/setup-docker/index.html b/howto/setup-docker/index.html new file mode 100644 index 000000000..f118a1234 --- /dev/null +++ b/howto/setup-docker/index.html @@ -0,0 +1,3615 @@ + + + + + + + + + + + + + + + + + + + + + + + + Set-up docker - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Set up docker

+
    +
  • Follow the instructions here (note these instructions are for a Mac).
  • +
  • Once installed, you should be able to open your command line and download the ODK.
      +
    • Open Terminal
    • +
    • in the command line type, type docker pull obolibrary/odkfull. This will download the ODK (will take a few minutes, depending on you internet connection).
    • +
    +
  • +
  • Setting the memory: + Set memory ~60% of your system memory, for example, if you have 16GB of RAM, then you should assign 10-11.
  • +
+

dockermemory

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/setup-ontology-development-odk/index.html b/howto/setup-ontology-development-odk/index.html new file mode 100644 index 000000000..6af40a7f3 --- /dev/null +++ b/howto/setup-ontology-development-odk/index.html @@ -0,0 +1,3608 @@ + + + + + + + + + + + + + + + + + + + + + + + + Get set up for ODK-based ontology development - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Getting set up to manage ontology pipelines with the ODK

+
    +
  1. Set up docker and install the ODK (howto)
  2. +
  3. To warm up with ODK development, follow the ODK Tutorial here
  4. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/switching-ontologies/index.html b/howto/switching-ontologies/index.html new file mode 100644 index 000000000..34e74ce3e --- /dev/null +++ b/howto/switching-ontologies/index.html @@ -0,0 +1,3725 @@ + + + + + + + + + + + + + + + + + + + + + + + + Switching Ontologies in Protege - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Switching Ontologies in Protege

+

By: Nicole Vasilevsky

+

Note: This applies to Protege 5.5.0 and below. Protege 5.6 manages ID ranges for you automatically and these instructions are not needed.

+

Description

+

When you edit an ontology, you need to make sure you are using the correct prefix and your assigned ID range for that on ontology. Protege (unfortunately) does +not remember the last prefix or ID range that you used when you switch between ontologies. Therefore we need to manually update this each time we switch ontologies.

+

Instructions

+
    +
  1. When you switch to a new ontology file, open your preferences in Protege (File -> Preferences).
  2. +
  3. Be sure you are on the New entities tab.
  4. +
  5. Add the Prefix for the ontology you are working on.
  6. +
  7. If you don't know your ID range, go to the ID ranges file for that ontology (it should be in src/ontology/[ontology-name]-idranges.owl. (For example, src/ontology/mondo-idranges.owl.)
  8. +
  9. Copy and paste in the start and end values for your ID range.
  10. +
+

image

+

Tips

+
    +
  1. I work on many ontologies, so I keep a note in OneNote (or Evernote) that keeps track of all my ID ranges for quick reference.
  2. +
  3. You don't need to track the last ID that was used, Protege will know to pick the next ID in your range. For example, if your ID range is 8000000 to 8999999, you can enter that as your range, even if you have already added 10 terms within your range. Protege will know to assign the next ID as 8000011.
  4. +
+

Video Explanation

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/term-request/index.html b/howto/term-request/index.html new file mode 100644 index 000000000..c0133edeb --- /dev/null +++ b/howto/term-request/index.html @@ -0,0 +1,3855 @@ + + + + + + + + + + + + + + + + + + + + + + + + Make term requests to existing ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + + + + + + + +

Make term requests to existing ontologies

+

Prerequisites

+

You need to have a GitHub account to make term requests. Sign up for a free GitHub account.

+

Background

+ +

This guide on How to select and request terms from ontologies by Chris Mungall provides some helpful background and tips for making term requests.

+

Why make a new term request?

+

Onologies are under constant development and are continuously expanded and iterated upon. You may discover that a term you need is not available in your preferred ontology. In this case, please make a new term request to the ontology.

+

Making term requests to existing ontologies

+

In the following text below, we describe best practices for making a term request to an ontology. In general, requests for new terms are make on the ontology GitHub issue tracker. For example, this is the GitHub issue tracker for the Uberon Anatomy onology.

+

Note: These are suggestions and not strict rules. We appreciate your contributions to extending and improving ontologies. Following best guidelines is appreciated by the curators and developers, and assists them in addressing your issue more quickly. However, we understand if you are not always able to follow these best practices. Please add as much information as possible, and if there are any questions, the ontology developer may follow up with you for further clarification.

+

Making a new term request

+
    +
  1. Go to the ontology issue tracker in GitHub
  2. +
  3. Select New issue
  4. +
  5. Pick appropriate template (if applicable)
  6. +
  7. If there is a template, fill in the information that is requested on the template below each header.
  8. +
  9. General information that should be included in a new term request:
  10. +
  11. Preferred label: Your preferred name or label for the new term. Note- new term request should not match existing terms or synonyms.
  12. +
  13. Parent: The parent or superclass for that term. Remember that ontologies use subsumption reasoning, meaning that a subclass/child will inherit all the properties of the parent. In most ontologies, terms can have multiple classification, means terms can be classified under more than one parent. + Note: You can use a ontology search enginge like OLS to double check your class does not already exist and to search for parent terms in your respective ontology.
  14. +
  15. Definition: Please write a concise definition of your term (see this guide on writing good ontology definitions).
  16. +
  17. Definition database cross-reference(s): Indicate the source or database cross-reference(s) or source for the definition, such as a PubMed ID (PMID) or reference to a website.
  18. +
  19. Synonym(s): an alternative term that has the same or closely related meaning for your new term. Please indicate the synonym scope (see more details below).
  20. +
  21. Synonym database cross-reference(s): Provide a database cross-reference or source for the synonym, if applicable.
  22. +
  23. Your ORCID or the URL for your working group, if applicable. If you do not have an ORCID, you can sign up for one for free here. + Note: You can link your ORCID in your GitHub profile.
  24. +
  25. Comments: You can add any additional comments at the end. Please indicate if the comment should be included as a 'comment' annotation on the ontology term.
  26. +
  27. Click Submit New Issue
  28. +
  29. An ontology curator will review your issue and follow up with you if more information is needed.
  30. +
+

Synonym scopes:

+
    +
  • Exact - an exact match
  • +
  • Narrow - more specific term
  • +
  • Broad - more general term
  • +
  • Related - a word of phrase has been used synonymously with the primary term name in the literature, but the usage is not strictly correct
  • +
+

Formatting:

+
    +
  1. For most ontologies, the preferred term labels should be lowercase (unless it is a proper name or abbreviation)
  2. +
  3. Write the request below the prompts on the template so the Markdown formatting displays properly
  4. +
  5. Synonyms should be lowercase (with exceptions above)
  6. +
  7. Definition source - if from PubMed, please use the format PMID:XXXXXX (no space)
  8. +
  9. Include the ID and label for the parent term
  10. +
+

Submitting other issues

+
    +
  • Users may want to request other types of changes to an ontology such as Mondo beyond just adding a new term.
  • +
  • Other types of requests may include changes to the classification, typos, bugs, etc.
  • +
  • Some ontologies have other templates available on their issue tracker. Select the appropriate template. If there is not an appropriate template available, scroll to the bottom and select 'open a blank issue'.
  • +
+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/howto/update-import/index.html b/howto/update-import/index.html new file mode 100644 index 000000000..df4b7d9cf --- /dev/null +++ b/howto/update-import/index.html @@ -0,0 +1,3871 @@ + + + + + + + + + + + + + + + + + + + + + + + + Updating Imports with ODK - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Update Imports Workflow

+

This page discusses how to update the contents of your imports using the ODK, like adding or removing terms.

+

Note: This is a specialised how-to for ODK managed ontologies and is replicated from ODK docs to consolidate workflows in the obook. Not all ontologies use ODKs and many ontologies have their own workflows for imports, please also check with your local ontology documents and/or developers.

+

Note: The extract function in ROBOT can also be used to extract subsets from onotlogies for modular imports without the use of the ODK. For details on that, please refer to the ROBOT documentation

+

Importing a new term

+

Note: some ontologies now use a merged-import system to manage dynamic imports, for these please follow instructions in the section title "Using the Base Module approach".

+

Importing a new term is split into two sub-phases:

+
    +
  1. Declaring the terms to be imported
  2. +
  3. Refreshing imports dynamically
  4. +
+

Declaring terms to be imported

+

There are three ways to declare terms that are to be imported from an external ontology. Choose the appropriate one for your particular scenario (all three can be used in parallel if need be):

+
    +
  1. Protege-based declaration
  2. +
  3. Using term files
  4. +
  5. Using the custom import template
  6. +
+

Protege-based declaration

+

This workflow is to be avoided, but may be appropriate if the editor does not have access to the ODK docker container. +This approach also applies to ontologies that use base module import approach.

+
    +
  1. Open your ontology (edit file) in Protege (5.5+).
  2. +
  3. Select 'owl:Thing'
  4. +
  5. Add a new class as usual.
  6. +
  7. Paste the full iri in the 'Name:' field, for example, http://purl.obolibrary.org/obo/CHEBI_50906.
  8. +
  9. Click 'OK'
  10. +
+

Adding Classes

+

Now you can use this term for example to construct logical definitions. The next time the imports are refreshed (see how to refresh here), the metadata (labels, definitions, etc) for this term are imported from the respective external source ontology and becomes visible in your ontology.

+

Using term files

+

Every import has, by default a term file associated with it, which can be found in the imports directory. For example, if you have a GO import in src/ontology/go_import.owl, you will also have an associated term file src/ontology/go_terms.txt. You can add terms in there simply as a list:

+
GO:0008150
+GO:0008151
+
+

Now you can run the refresh imports workflow) and the two terms will be imported.

+

Using the custom import template

+

This workflow is appropriate if:

+
    +
  1. You prefer to manage all your imported terms in a single file (rather than multiple files like in the "Using term files" workflow above).
  2. +
  3. You wish to augment your imported ontologies with additional information. This requires a cautionary discussion.
  4. +
+

To enable this workflow, you add the following to your ODK config file (src/ontology/cl-odk.yaml), and update the repository (using sh run.sh make update_repo):

+
use_custom_import_module: TRUE
+
+

Now you can manage your imported terms directly in the custom external terms template, which is located at src/templates/external_import.owl. Note that this file is a ROBOT template, and can, in principle, be extended to include any axioms you like. Before extending the template, however, read the following carefully.

+

The main purpose of the custom import template is to enable the management off all terms to be imported in a centralised place. To enable that, you do not have to do anything other than maintaining the template. So if you, say current import APOLLO_SV:00000480, and you wish to import APOLLO_SV:00000532, you simply add a row like this:

+
ID  Entity Type
+ID  TYPE
+APOLLO_SV:00000480  owl:Class
+APOLLO_SV:00000532  owl:Class
+
+

When the imports are refreshed see imports refresh workflow, the term(s) will simply be imported from the configured ontologies.

+

Now, if you wish to extent the Makefile (which is beyond these instructions) and add, say, synonyms to the imported terms, you can do that, but you need to (a) preserve the ID and ENTITY columns and (b) ensure that the ROBOT template is valid otherwise, see here.

+

WARNING. Note that doing this is a widespread antipattern (see related issue). You should not change the axioms of terms that do not belong into your ontology unless necessary - such changes should always be pushed into the ontology where they belong. However, since people are doing it, whether the OBO Foundry likes it or not, at least using the custom imports module as described here localises the changes to a single simple template and ensures that none of the annotations added this way are merged into the base file (see format variant documentation for explanation on what base file is)

+

Refresh imports

+

If you want to refresh the import yourself (this may be necessary to pass the travis tests), and you have the ODK installed, you can do the following (using go as an example):

+

First, you navigate in your terminal to the ontology directory (underneath src in your hpo root directory).

+
cd src/ontology
+
+

Then, you regenerate the import that will now include any new terms you have added. Note: You must have docker installed.

+
sh run.sh make PAT=false imports/go_import.owl -B
+
+

Since ODK 1.2.27, it is also possible to simply run the following, which is the same as the above:

+
sh run.sh make refresh-go
+
+

Note that in case you changed the defaults, you need to add IMP=true and/or MIR=true to the command below:

+
sh run.sh make IMP=true MIR=true PAT=false imports/go_import.owl -B
+
+

If you wish to skip refreshing the mirror, i.e. skip downloading the latest version of the source ontology for your import (e.g. go.owl for your go import) you can set MIR=false instead, which will do the exact same thing as the above, but is easier to remember:

+
sh run.sh make IMP=true MIR=false PAT=false imports/go_import.owl -B
+
+

Using the Base Module approach

+

Since ODK 1.2.31, we support an entirely new approach to generate modules: Using base files. +The idea is to only import axioms from ontologies that actually belong to it. +A base file is a subset of the ontology that only contains those axioms that nominally +belong there. In other words, the base file does not contain any axioms that belong +to another ontology. An example would be this:

+

Imagine this being the full Uberon ontology:

+
Axiom 1: BFO:123 SubClassOf BFO:124
+Axiom 1: UBERON:123 SubClassOf BFO:123
+Axiom 1: UBERON:124 SubClassOf UBERON 123
+
+

The base file is the set of all axioms that are about UBERON terms:

+
Axiom 1: UBERON:123 SubClassOf BFO:123
+Axiom 1: UBERON:124 SubClassOf UBERON 123
+
+

I.e.

+
Axiom 1: BFO:123 SubClassOf BFO:124
+
+

Gets removed.

+

The base file pipeline is a bit more complex then the normal pipelines, because +of the logical interactions between the imported ontologies. This is solved by _first +merging all mirrors into one huge file and then extracting one mega module from it.

+

Example: Let's say we are importing terms from Uberon, GO and RO in our ontologies. +When we use the base pipelines, we

+
    +
  1. First obtain the base (ususally by simply downloading it, but there is also an option now to create it with ROBOT)
  2. +
  3. We merge all base files into one big pile
  4. +
  5. Then we extract a single module imports/merged_import.owl
  6. +
+

The first implementation of this pipeline is PATO, see https://github.com/pato-ontology/pato/blob/master/src/ontology/pato-odk.yaml.

+

To check if your ontology uses this method, check src/ontology/cl-odk.yaml to see if use_base_merging: TRUE is declared under import_group

+

If your ontology uses Base Module approach, please use the following steps:

+

First, add the term to be imported to the term file associated with it (see above "Using term files" section if this is not clear to you)

+

Next, you navigate in your terminal to the ontology directory (underneath src in your hpo root directory).

+
cd src/ontology
+
+

Then refresh imports by running

+
sh run.sh make imports/merged_import.owl
+
+

Note: if your mirrors are updated, you can run sh run.sh make no-mirror-refresh-merged

+

This requires quite a bit of memory on your local machine, so if you encounter an error, it might be a lack of memory on your computer. A solution would be to create a ticket in an issue tracker requesting for the term to be imported, and your one of the local devs should pick this up and run the import for you.

+

Lastly, restart Protege, and the term should be imported in ready to be used.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/images/FHKB figures/Capture.PNG b/images/FHKB figures/Capture.PNG new file mode 100644 index 000000000..351fc22d5 Binary files /dev/null and b/images/FHKB figures/Capture.PNG differ diff --git a/images/FHKB figures/class_hierachy_final_1.PNG b/images/FHKB figures/class_hierachy_final_1.PNG new file mode 100644 index 000000000..854237fc3 Binary files /dev/null and b/images/FHKB figures/class_hierachy_final_1.PNG differ diff --git a/images/FHKB figures/class_prop_hierachy_final.png b/images/FHKB figures/class_prop_hierachy_final.png new file mode 100644 index 000000000..d88296e0f Binary files /dev/null and b/images/FHKB figures/class_prop_hierachy_final.png differ diff --git a/images/FHKB figures/cousin.png b/images/FHKB figures/cousin.png new file mode 100644 index 000000000..fb4e17330 Binary files /dev/null and b/images/FHKB figures/cousin.png differ diff --git a/images/FHKB figures/dragon.png b/images/FHKB figures/dragon.png new file mode 100644 index 000000000..1c1a07d16 Binary files /dev/null and b/images/FHKB figures/dragon.png differ diff --git a/images/FHKB figures/grandparent.png b/images/FHKB figures/grandparent.png new file mode 100644 index 000000000..51280e157 Binary files /dev/null and b/images/FHKB figures/grandparent.png differ diff --git a/images/FHKB figures/images/NoteIcon.pdf b/images/FHKB figures/images/NoteIcon.pdf new file mode 100644 index 000000000..217176c11 Binary files /dev/null and b/images/FHKB figures/images/NoteIcon.pdf differ diff --git a/images/FHKB figures/images/NoteIconSmall.png b/images/FHKB figures/images/NoteIconSmall.png new file mode 100644 index 000000000..2e9bd80a0 Binary files /dev/null and b/images/FHKB figures/images/NoteIconSmall.png differ diff --git a/images/FHKB figures/images/TipIcon.pdf b/images/FHKB figures/images/TipIcon.pdf new file mode 100644 index 000000000..5d6c69b73 Binary files /dev/null and b/images/FHKB figures/images/TipIcon.pdf differ diff --git a/images/FHKB figures/images/VocabIcon.pdf b/images/FHKB figures/images/VocabIcon.pdf new file mode 100644 index 000000000..a58d87f27 Binary files /dev/null and b/images/FHKB figures/images/VocabIcon.pdf differ diff --git a/images/FHKB figures/images/WarningIcon.pdf b/images/FHKB figures/images/WarningIcon.pdf new file mode 100644 index 000000000..271a8bd2f Binary files /dev/null and b/images/FHKB figures/images/WarningIcon.pdf differ diff --git a/images/FHKB figures/images/WarningIcon.png b/images/FHKB figures/images/WarningIcon.png new file mode 100644 index 000000000..9bcb17d12 Binary files /dev/null and b/images/FHKB figures/images/WarningIcon.png differ diff --git a/images/FHKB figures/images/black_camera.png b/images/FHKB figures/images/black_camera.png new file mode 100644 index 000000000..ca28c2b18 Binary files /dev/null and b/images/FHKB figures/images/black_camera.png differ diff --git a/images/FHKB figures/images/code.PNG b/images/FHKB figures/images/code.PNG new file mode 100644 index 000000000..45a041d7e Binary files /dev/null and b/images/FHKB figures/images/code.PNG differ diff --git a/images/FHKB figures/licence_logo.png b/images/FHKB figures/licence_logo.png new file mode 100644 index 000000000..c67509f12 Binary files /dev/null and b/images/FHKB figures/licence_logo.png differ diff --git a/images/FHKB figures/mother_in_law.png b/images/FHKB figures/mother_in_law.png new file mode 100644 index 000000000..98678a7c4 Binary files /dev/null and b/images/FHKB figures/mother_in_law.png differ diff --git a/images/FHKB figures/new/childof_property.PNG b/images/FHKB figures/new/childof_property.PNG new file mode 100644 index 000000000..33cc756f7 Binary files /dev/null and b/images/FHKB figures/new/childof_property.PNG differ diff --git a/images/FHKB figures/new/descendent_ancestor_defined_classes.PNG b/images/FHKB figures/new/descendent_ancestor_defined_classes.PNG new file mode 100644 index 000000000..6fb69b16a Binary files /dev/null and b/images/FHKB figures/new/descendent_ancestor_defined_classes.PNG differ diff --git a/images/FHKB figures/new/event_name_hierarchy.PNG b/images/FHKB figures/new/event_name_hierarchy.PNG new file mode 100644 index 000000000..d9ef1d64c Binary files /dev/null and b/images/FHKB figures/new/event_name_hierarchy.PNG differ diff --git a/images/FHKB figures/new/prop_uncle.PNG b/images/FHKB figures/new/prop_uncle.PNG new file mode 100644 index 000000000..ee3a39c75 Binary files /dev/null and b/images/FHKB figures/new/prop_uncle.PNG differ diff --git a/images/FHKB figures/new/prophierarchyinlaw.PNG b/images/FHKB figures/new/prophierarchyinlaw.PNG new file mode 100644 index 000000000..ff12879e9 Binary files /dev/null and b/images/FHKB figures/new/prophierarchyinlaw.PNG differ diff --git a/images/FHKB figures/new/prophierparentage.PNG b/images/FHKB figures/new/prophierparentage.PNG new file mode 100644 index 000000000..f66dcd521 Binary files /dev/null and b/images/FHKB figures/new/prophierparentage.PNG differ diff --git a/images/FHKB figures/old/childof_property.PNG b/images/FHKB figures/old/childof_property.PNG new file mode 100644 index 000000000..5091624cf Binary files /dev/null and b/images/FHKB figures/old/childof_property.PNG differ diff --git a/images/FHKB figures/old/class_hierarchy.PNG b/images/FHKB figures/old/class_hierarchy.PNG new file mode 100644 index 000000000..8be12c21e Binary files /dev/null and b/images/FHKB figures/old/class_hierarchy.PNG differ diff --git a/images/FHKB figures/old/descendent_ancestor_defined_classes.PNG b/images/FHKB figures/old/descendent_ancestor_defined_classes.PNG new file mode 100644 index 000000000..6fb69b16a Binary files /dev/null and b/images/FHKB figures/old/descendent_ancestor_defined_classes.PNG differ diff --git a/images/FHKB figures/old/event_name_hierarchy.PNG b/images/FHKB figures/old/event_name_hierarchy.PNG new file mode 100644 index 000000000..d9ef1d64c Binary files /dev/null and b/images/FHKB figures/old/event_name_hierarchy.PNG differ diff --git a/images/FHKB figures/old/halfsiblings.PNG b/images/FHKB figures/old/halfsiblings.PNG new file mode 100644 index 000000000..a962514a9 Binary files /dev/null and b/images/FHKB figures/old/halfsiblings.PNG differ diff --git a/images/FHKB figures/old/prop_uncle.PNG b/images/FHKB figures/old/prop_uncle.PNG new file mode 100644 index 000000000..2b8c0c831 Binary files /dev/null and b/images/FHKB figures/old/prop_uncle.PNG differ diff --git a/images/FHKB figures/old/property_hierarchy.PNG b/images/FHKB figures/old/property_hierarchy.PNG new file mode 100644 index 000000000..971f6f131 Binary files /dev/null and b/images/FHKB figures/old/property_hierarchy.PNG differ diff --git a/images/FHKB figures/old/prophierarchyinlaw.PNG b/images/FHKB figures/old/prophierarchyinlaw.PNG new file mode 100644 index 000000000..1725b213b Binary files /dev/null and b/images/FHKB figures/old/prophierarchyinlaw.PNG differ diff --git a/images/FHKB figures/old/prophierarchyinlawInf.PNG b/images/FHKB figures/old/prophierarchyinlawInf.PNG new file mode 100644 index 000000000..a3b06cc06 Binary files /dev/null and b/images/FHKB figures/old/prophierarchyinlawInf.PNG differ diff --git a/images/FHKB figures/old/prophierparentage.PNG b/images/FHKB figures/old/prophierparentage.PNG new file mode 100644 index 000000000..407a38536 Binary files /dev/null and b/images/FHKB figures/old/prophierparentage.PNG differ diff --git a/images/FHKB figures/prop_hierarchy2.png b/images/FHKB figures/prop_hierarchy2.png new file mode 100644 index 000000000..5ecc6cca3 Binary files /dev/null and b/images/FHKB figures/prop_hierarchy2.png differ diff --git a/images/FHKB figures/sex.png b/images/FHKB figures/sex.png new file mode 100644 index 000000000..f7d784175 Binary files /dev/null and b/images/FHKB figures/sex.png differ diff --git a/images/FHKB figures/sibling_path.png b/images/FHKB figures/sibling_path.png new file mode 100644 index 000000000..c894cfa42 Binary files /dev/null and b/images/FHKB figures/sibling_path.png differ diff --git a/images/FHKB figures/siblings.png b/images/FHKB figures/siblings.png new file mode 100644 index 000000000..b2089b99d Binary files /dev/null and b/images/FHKB figures/siblings.png differ diff --git a/images/FHKB figures/sister_in_law.png b/images/FHKB figures/sister_in_law.png new file mode 100644 index 000000000..36e5a7a00 Binary files /dev/null and b/images/FHKB figures/sister_in_law.png differ diff --git a/images/FHKB figures/spouse.png b/images/FHKB figures/spouse.png new file mode 100644 index 000000000..d762c81f8 Binary files /dev/null and b/images/FHKB figures/spouse.png differ diff --git a/images/FHKB figures/uncle.png b/images/FHKB figures/uncle.png new file mode 100644 index 000000000..1462df18f Binary files /dev/null and b/images/FHKB figures/uncle.png differ diff --git a/images/Screen Shot 2021-04-22 at 10.04.26 PM.png b/images/Screen Shot 2021-04-22 at 10.04.26 PM.png new file mode 100644 index 000000000..88ac1ff65 Binary files /dev/null and b/images/Screen Shot 2021-04-22 at 10.04.26 PM.png differ diff --git a/images/bash_start.png b/images/bash_start.png new file mode 100644 index 000000000..b656d597d Binary files /dev/null and b/images/bash_start.png differ diff --git a/images/changing_pr.png b/images/changing_pr.png new file mode 100644 index 000000000..b7d154767 Binary files /dev/null and b/images/changing_pr.png differ diff --git a/images/changing_pr_commit.png b/images/changing_pr_commit.png new file mode 100644 index 000000000..2a32f2174 Binary files /dev/null and b/images/changing_pr_commit.png differ diff --git a/images/chatgpt_more_hallucination_aware.png b/images/chatgpt_more_hallucination_aware.png new file mode 100644 index 000000000..93e2e6f98 Binary files /dev/null and b/images/chatgpt_more_hallucination_aware.png differ diff --git a/images/comment.png b/images/comment.png new file mode 100644 index 000000000..5331097f0 Binary files /dev/null and b/images/comment.png differ diff --git a/images/custom_qc_example.png b/images/custom_qc_example.png new file mode 100644 index 000000000..3ae8ac868 Binary files /dev/null and b/images/custom_qc_example.png differ diff --git a/images/custom_qc_example_solved.png b/images/custom_qc_example_solved.png new file mode 100644 index 000000000..43a0c6364 Binary files /dev/null and b/images/custom_qc_example_solved.png differ diff --git a/images/discussions/intro-to-ontologies/cardiac-glial-cell.png b/images/discussions/intro-to-ontologies/cardiac-glial-cell.png new file mode 100644 index 000000000..479b09182 Binary files /dev/null and b/images/discussions/intro-to-ontologies/cardiac-glial-cell.png differ diff --git a/images/discussions/intro-to-ontologies/definition-example.png b/images/discussions/intro-to-ontologies/definition-example.png new file mode 100644 index 000000000..92088d946 Binary files /dev/null and b/images/discussions/intro-to-ontologies/definition-example.png differ diff --git a/images/discussions/intro-to-ontologies/hindwing-subclass.png b/images/discussions/intro-to-ontologies/hindwing-subclass.png new file mode 100644 index 000000000..ac8251228 Binary files /dev/null and b/images/discussions/intro-to-ontologies/hindwing-subclass.png differ diff --git a/images/discussions/intro-to-ontologies/insect-classification.png b/images/discussions/intro-to-ontologies/insect-classification.png new file mode 100644 index 000000000..0041389d9 Binary files /dev/null and b/images/discussions/intro-to-ontologies/insect-classification.png differ diff --git a/images/discussions/intro-to-ontologies/leg-wing.png b/images/discussions/intro-to-ontologies/leg-wing.png new file mode 100644 index 000000000..665b9aa48 Binary files /dev/null and b/images/discussions/intro-to-ontologies/leg-wing.png differ diff --git a/images/discussions/intro-to-ontologies/neuron-multiple-inheritance.png b/images/discussions/intro-to-ontologies/neuron-multiple-inheritance.png new file mode 100644 index 000000000..b8ff334a3 Binary files /dev/null and b/images/discussions/intro-to-ontologies/neuron-multiple-inheritance.png differ diff --git a/images/discussions/intro-to-ontologies/nose-classification.png b/images/discussions/intro-to-ontologies/nose-classification.png new file mode 100644 index 000000000..883bf5e2d Binary files /dev/null and b/images/discussions/intro-to-ontologies/nose-classification.png differ diff --git a/images/discussions/intro-to-ontologies/paramere.png b/images/discussions/intro-to-ontologies/paramere.png new file mode 100644 index 000000000..2a312d647 Binary files /dev/null and b/images/discussions/intro-to-ontologies/paramere.png differ diff --git a/images/discussions/intro-to-ontologies/query-glial-genes.png b/images/discussions/intro-to-ontologies/query-glial-genes.png new file mode 100644 index 000000000..98d4adc8b Binary files /dev/null and b/images/discussions/intro-to-ontologies/query-glial-genes.png differ diff --git a/images/discussions/intro-to-ontologies/tarsal-segments.png b/images/discussions/intro-to-ontologies/tarsal-segments.png new file mode 100644 index 000000000..50c445d33 Binary files /dev/null and b/images/discussions/intro-to-ontologies/tarsal-segments.png differ diff --git a/images/discussions/logical-axiomatization/betz-pyramidal.png b/images/discussions/logical-axiomatization/betz-pyramidal.png new file mode 100644 index 000000000..98bc671cd Binary files /dev/null and b/images/discussions/logical-axiomatization/betz-pyramidal.png differ diff --git a/images/discussions/logical-axiomatization/dl-oxtrneuron.png b/images/discussions/logical-axiomatization/dl-oxtrneuron.png new file mode 100644 index 000000000..86a440ee0 Binary files /dev/null and b/images/discussions/logical-axiomatization/dl-oxtrneuron.png differ diff --git a/images/discussions/logical-axiomatization/oxtrsst-heirachy.png b/images/discussions/logical-axiomatization/oxtrsst-heirachy.png new file mode 100644 index 000000000..eef47e385 Binary files /dev/null and b/images/discussions/logical-axiomatization/oxtrsst-heirachy.png differ diff --git a/images/discussions/writing-tickets/bad-ticket.png b/images/discussions/writing-tickets/bad-ticket.png new file mode 100644 index 000000000..9b9c773ab Binary files /dev/null and b/images/discussions/writing-tickets/bad-ticket.png differ diff --git a/images/discussions/writing-tickets/good-ticket.png b/images/discussions/writing-tickets/good-ticket.png new file mode 100644 index 000000000..b2dd4a8b1 Binary files /dev/null and b/images/discussions/writing-tickets/good-ticket.png differ diff --git a/images/disease-model.png b/images/disease-model.png new file mode 100644 index 000000000..fe5c1f413 Binary files /dev/null and b/images/disease-model.png differ diff --git a/images/docker_memory.png b/images/docker_memory.png new file mode 100644 index 000000000..bbb17f4a1 Binary files /dev/null and b/images/docker_memory.png differ diff --git a/images/dosdp_spotted_coat.png b/images/dosdp_spotted_coat.png new file mode 100644 index 000000000..82ffefb20 Binary files /dev/null and b/images/dosdp_spotted_coat.png differ diff --git a/images/entity-mappings.png b/images/entity-mappings.png new file mode 100644 index 000000000..1a6c26540 Binary files /dev/null and b/images/entity-mappings.png differ diff --git a/images/entity_mapping.png b/images/entity_mapping.png new file mode 100644 index 000000000..6d57bf192 Binary files /dev/null and b/images/entity_mapping.png differ diff --git a/images/exomiser_tutorial_images/10_windows.jpg b/images/exomiser_tutorial_images/10_windows.jpg new file mode 100644 index 000000000..4da91721a Binary files /dev/null and b/images/exomiser_tutorial_images/10_windows.jpg differ diff --git a/images/exomiser_tutorial_images/11_windows.jpg b/images/exomiser_tutorial_images/11_windows.jpg new file mode 100644 index 000000000..878af197a Binary files /dev/null and b/images/exomiser_tutorial_images/11_windows.jpg differ diff --git a/images/exomiser_tutorial_images/1_mac.jpg b/images/exomiser_tutorial_images/1_mac.jpg new file mode 100644 index 000000000..843737c74 Binary files /dev/null and b/images/exomiser_tutorial_images/1_mac.jpg differ diff --git a/images/exomiser_tutorial_images/1_windows.jpg b/images/exomiser_tutorial_images/1_windows.jpg new file mode 100644 index 000000000..731fbccd2 Binary files /dev/null and b/images/exomiser_tutorial_images/1_windows.jpg differ diff --git a/images/exomiser_tutorial_images/2_mac.jpg b/images/exomiser_tutorial_images/2_mac.jpg new file mode 100644 index 000000000..ece431f2b Binary files /dev/null and b/images/exomiser_tutorial_images/2_mac.jpg differ diff --git a/images/exomiser_tutorial_images/2_windows.jpg b/images/exomiser_tutorial_images/2_windows.jpg new file mode 100644 index 000000000..56061d951 Binary files /dev/null and b/images/exomiser_tutorial_images/2_windows.jpg differ diff --git a/images/exomiser_tutorial_images/3_mac.jpg b/images/exomiser_tutorial_images/3_mac.jpg new file mode 100644 index 000000000..6a7596895 Binary files /dev/null and b/images/exomiser_tutorial_images/3_mac.jpg differ diff --git a/images/exomiser_tutorial_images/3_windows.jpg b/images/exomiser_tutorial_images/3_windows.jpg new file mode 100644 index 000000000..2c118592b Binary files /dev/null and b/images/exomiser_tutorial_images/3_windows.jpg differ diff --git a/images/exomiser_tutorial_images/4_windows.jpg b/images/exomiser_tutorial_images/4_windows.jpg new file mode 100644 index 000000000..a9ba46ef6 Binary files /dev/null and b/images/exomiser_tutorial_images/4_windows.jpg differ diff --git a/images/exomiser_tutorial_images/5_windows.jpg b/images/exomiser_tutorial_images/5_windows.jpg new file mode 100644 index 000000000..8fb7d4af7 Binary files /dev/null and b/images/exomiser_tutorial_images/5_windows.jpg differ diff --git a/images/exomiser_tutorial_images/6_mac.jpg b/images/exomiser_tutorial_images/6_mac.jpg new file mode 100644 index 000000000..c3159f572 Binary files /dev/null and b/images/exomiser_tutorial_images/6_mac.jpg differ diff --git a/images/exomiser_tutorial_images/6_windows.jpg b/images/exomiser_tutorial_images/6_windows.jpg new file mode 100644 index 000000000..407f25259 Binary files /dev/null and b/images/exomiser_tutorial_images/6_windows.jpg differ diff --git a/images/exomiser_tutorial_images/7_mac.jpg b/images/exomiser_tutorial_images/7_mac.jpg new file mode 100644 index 000000000..847046361 Binary files /dev/null and b/images/exomiser_tutorial_images/7_mac.jpg differ diff --git a/images/exomiser_tutorial_images/7_windows.jpg b/images/exomiser_tutorial_images/7_windows.jpg new file mode 100644 index 000000000..45d405623 Binary files /dev/null and b/images/exomiser_tutorial_images/7_windows.jpg differ diff --git a/images/exomiser_tutorial_images/8_mac.jpg b/images/exomiser_tutorial_images/8_mac.jpg new file mode 100644 index 000000000..b08937663 Binary files /dev/null and b/images/exomiser_tutorial_images/8_mac.jpg differ diff --git a/images/exomiser_tutorial_images/8_windows.jpg b/images/exomiser_tutorial_images/8_windows.jpg new file mode 100644 index 000000000..19ac9290a Binary files /dev/null and b/images/exomiser_tutorial_images/8_windows.jpg differ diff --git a/images/exomiser_tutorial_images/9_windows.jpg b/images/exomiser_tutorial_images/9_windows.jpg new file mode 100644 index 000000000..d201e49e8 Binary files /dev/null and b/images/exomiser_tutorial_images/9_windows.jpg differ diff --git a/images/exomiser_tutorial_images/HTML_annotated_part2.jpg b/images/exomiser_tutorial_images/HTML_annotated_part2.jpg new file mode 100644 index 000000000..cc21faa72 Binary files /dev/null and b/images/exomiser_tutorial_images/HTML_annotated_part2.jpg differ diff --git a/images/exomiser_tutorial_images/HTML_annotated_part3.jpg b/images/exomiser_tutorial_images/HTML_annotated_part3.jpg new file mode 100644 index 000000000..899fc1d6b Binary files /dev/null and b/images/exomiser_tutorial_images/HTML_annotated_part3.jpg differ diff --git a/images/exomiser_tutorial_images/HTML_annotation_part1.png b/images/exomiser_tutorial_images/HTML_annotation_part1.png new file mode 100644 index 000000000..c1f37cdbe Binary files /dev/null and b/images/exomiser_tutorial_images/HTML_annotation_part1.png differ diff --git a/images/finding-vs-disorder.png b/images/finding-vs-disorder.png new file mode 100644 index 000000000..b0bc708d1 Binary files /dev/null and b/images/finding-vs-disorder.png differ diff --git a/images/github organizations teams repos.png b/images/github organizations teams repos.png new file mode 100644 index 000000000..abb9af223 Binary files /dev/null and b/images/github organizations teams repos.png differ diff --git a/images/github-organizations-teams-repos.png b/images/github-organizations-teams-repos.png new file mode 100644 index 000000000..abb9af223 Binary files /dev/null and b/images/github-organizations-teams-repos.png differ diff --git a/images/github_qc_starting.png b/images/github_qc_starting.png new file mode 100644 index 000000000..1827e2d5d Binary files /dev/null and b/images/github_qc_starting.png differ diff --git a/images/howtoguides/TaxonRestriction/intaxon.png b/images/howtoguides/TaxonRestriction/intaxon.png new file mode 100644 index 000000000..764c2c75e Binary files /dev/null and b/images/howtoguides/TaxonRestriction/intaxon.png differ diff --git a/images/howtoguides/TaxonRestriction/neverintaxon.png b/images/howtoguides/TaxonRestriction/neverintaxon.png new file mode 100644 index 000000000..94e206f40 Binary files /dev/null and b/images/howtoguides/TaxonRestriction/neverintaxon.png differ diff --git a/images/howtoguides/createnewterm/annotations.png b/images/howtoguides/createnewterm/annotations.png new file mode 100644 index 000000000..8e0ac2567 Binary files /dev/null and b/images/howtoguides/createnewterm/annotations.png differ diff --git a/images/howtoguides/createnewterm/logicalaxiom.png b/images/howtoguides/createnewterm/logicalaxiom.png new file mode 100644 index 000000000..739578aa7 Binary files /dev/null and b/images/howtoguides/createnewterm/logicalaxiom.png differ diff --git a/images/howtoguides/createnewterm/newterm.png b/images/howtoguides/createnewterm/newterm.png new file mode 100644 index 000000000..753e0f383 Binary files /dev/null and b/images/howtoguides/createnewterm/newterm.png differ diff --git a/images/howtoguides/createnewterm/ref.png b/images/howtoguides/createnewterm/ref.png new file mode 100644 index 000000000..35e41e9c4 Binary files /dev/null and b/images/howtoguides/createnewterm/ref.png differ diff --git a/images/howtoguides/createnewterm/subclassasserted.png b/images/howtoguides/createnewterm/subclassasserted.png new file mode 100644 index 000000000..29e78d1a5 Binary files /dev/null and b/images/howtoguides/createnewterm/subclassasserted.png differ diff --git a/images/howtoguides/deploy-custom-dashboard-workflow.png b/images/howtoguides/deploy-custom-dashboard-workflow.png new file mode 100644 index 000000000..01fba2c3e Binary files /dev/null and b/images/howtoguides/deploy-custom-dashboard-workflow.png differ diff --git a/images/howtoguides/obsolete/fig1.png b/images/howtoguides/obsolete/fig1.png new file mode 100644 index 000000000..188391f87 Binary files /dev/null and b/images/howtoguides/obsolete/fig1.png differ diff --git a/images/howtoguides/obsolete/fig2.png b/images/howtoguides/obsolete/fig2.png new file mode 100644 index 000000000..c1f209950 Binary files /dev/null and b/images/howtoguides/obsolete/fig2.png differ diff --git a/images/howtoguides/obsolete/fig3.png b/images/howtoguides/obsolete/fig3.png new file mode 100644 index 000000000..8cabd12ba Binary files /dev/null and b/images/howtoguides/obsolete/fig3.png differ diff --git a/images/howtoguides/obsolete/fig4.png b/images/howtoguides/obsolete/fig4.png new file mode 100644 index 000000000..2c34d3f53 Binary files /dev/null and b/images/howtoguides/obsolete/fig4.png differ diff --git a/images/howtoguides/obsolete/fig5.png b/images/howtoguides/obsolete/fig5.png new file mode 100644 index 000000000..0ba7e754e Binary files /dev/null and b/images/howtoguides/obsolete/fig5.png differ diff --git a/images/howtoguides/obsolete/fig6.png b/images/howtoguides/obsolete/fig6.png new file mode 100644 index 000000000..9aedd0398 Binary files /dev/null and b/images/howtoguides/obsolete/fig6.png differ diff --git a/images/image1.png b/images/image1.png new file mode 100644 index 000000000..fa9abd2a8 Binary files /dev/null and b/images/image1.png differ diff --git a/images/image2.png b/images/image2.png new file mode 100644 index 000000000..da5b1e26d Binary files /dev/null and b/images/image2.png differ diff --git a/images/image3.png b/images/image3.png new file mode 100644 index 000000000..08c52fc2d Binary files /dev/null and b/images/image3.png differ diff --git a/images/index.html b/images/index.html new file mode 100644 index 000000000..bb1287e85 --- /dev/null +++ b/images/index.html @@ -0,0 +1,3794 @@ + + + + + + + + + + + + + + + + + + + + + + + + How to add images - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

About using images in Git/GitHub

+

There are two places you'll probaby want to use images in GitHub, in issue tracker and in markdown files, html etc. +The way you handle images in these contexts is quite different, but easy once you get the hang of it.

+

In markdown files (and html etc)

+

All images referenced in static files such as html and markdown need to be referenced using a URL; dragging and dropping is not supported and could actually cause problems. Keeping images in a single directory enables them to be referenced more readily. Sensible file names are highly recommended, preferably without spaces as these are hard to read when encoded.

+

An identical file, named in two different ways is shown as an example below. +They render in the same way, but the source "code" looks ugly when spaces are used in file names.

+

Eg.

+ + + + + + + + + + + + + + + + + +
encoding neededno encoding needed
![](github%20organizations%20teams%20repos.png![](github-organizations-teams-repos.png)
+

In this example, the filename is enough of a 'url' because this file (https://ohsu-library.github.io/github-tutorial/howto/images/index.md) and the images are in the same directory https://ohsu-library.github.io/github-tutorial/howto/images/.

+

To reference/embed an image that is not in the same directory, a more careful approach is needed.

+

Referencing images in your repository and elsewhere

+ + + + + + + + + + + + + + + + + +
Absolute path referencingRelative path referencing
![](https://github.com/OHSU-Library/github-tutorial/raw/master/docs/other-images/owl.jpg)![](other-images/owl.jpg)
+

Each instance of ../ means 'go up one level' in the file tree.

+

It is also possible to reference an image using an external URL outside your control, in another github organization, or anywhere on the web, however this method can be fragile if the URL changes or could lead to unintended changes. Therefore make your own copies and reference those unless:

+
    +
  • You're sure that referencing the originals will not end in broken links or surprising content.
  • +
  • Copying the image is prohibited
  • +
  • The images are too large to make copying worth the hassle/expense.
  • +
+

For example, it is not clear for how long the image below will manage to persist at this EPA link, or sadly, for how long the image will even be an accurate reflection of the current situation in the arctic. https://www.epa.gov/sites/production/files/styles/microsite_banner/public/2016-12/epa-banner-images/science_banner_arctic.png

+

+

In GitHub issue tracker

+

Images that are embedded into issues can be dragged and dropped in the GitHub issues interface. +Once you've done so, it will look something like this with GitHub assigning an arbitrary URL (githubuserassets) for the image.

+

![](screenshot-of-images-in-issues.png)

+

+

Sizing images

+

Ideally, a Markdown document is renderable in a variety of output formats and devices. In some cases, it may be desirable to create non-portable Markdown that uses HTML syntax to position images. This limits the longevity of the artifact, but may be necessary sometimes. We describe how to manage this below.

+

In order to size images, use the native html syntax: width = with the <img src=, as per below.

+

<img src="https://github.com/monarch-initiative/monarch-app/raw/master/image/Phenogrid3Compare.png" width="53">

+

+

Back to Home

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/images/interdependent_projects.png b/images/interdependent_projects.png new file mode 100644 index 000000000..d1a2962ec Binary files /dev/null and b/images/interdependent_projects.png differ diff --git a/images/lexmatch/foodon.png b/images/lexmatch/foodon.png new file mode 100644 index 000000000..e5e503fff Binary files /dev/null and b/images/lexmatch/foodon.png differ diff --git a/images/llm_basic.png b/images/llm_basic.png new file mode 100644 index 000000000..02d8cd696 Binary files /dev/null and b/images/llm_basic.png differ diff --git a/images/llm_learn.png b/images/llm_learn.png new file mode 100644 index 000000000..72958c1d5 Binary files /dev/null and b/images/llm_learn.png differ diff --git a/images/mapping-predicates-cheatsheet.png b/images/mapping-predicates-cheatsheet.png new file mode 100644 index 000000000..c7e607fad Binary files /dev/null and b/images/mapping-predicates-cheatsheet.png differ diff --git a/images/mapping-usecase-counting.png b/images/mapping-usecase-counting.png new file mode 100644 index 000000000..752db3dc5 Binary files /dev/null and b/images/mapping-usecase-counting.png differ diff --git a/images/mapping-usecase-kg.png b/images/mapping-usecase-kg.png new file mode 100644 index 000000000..87723a175 Binary files /dev/null and b/images/mapping-usecase-kg.png differ diff --git a/images/mapping_workflow.png b/images/mapping_workflow.png new file mode 100644 index 000000000..24f16269a Binary files /dev/null and b/images/mapping_workflow.png differ diff --git a/images/odk_docs_cato.png b/images/odk_docs_cato.png new file mode 100644 index 000000000..dcdf4e6cf Binary files /dev/null and b/images/odk_docs_cato.png differ diff --git a/images/odk_docs_pages_settings.png b/images/odk_docs_pages_settings.png new file mode 100644 index 000000000..600b97fb3 Binary files /dev/null and b/images/odk_docs_pages_settings.png differ diff --git a/images/odk_workflow_import.png b/images/odk_workflow_import.png new file mode 100644 index 000000000..94696a43b Binary files /dev/null and b/images/odk_workflow_import.png differ diff --git a/images/odk_workflow_release.png b/images/odk_workflow_release.png new file mode 100644 index 000000000..e08207351 Binary files /dev/null and b/images/odk_workflow_release.png differ diff --git a/images/odk_workflow_testing.png b/images/odk_workflow_testing.png new file mode 100644 index 000000000..485dac894 Binary files /dev/null and b/images/odk_workflow_testing.png differ diff --git a/images/ohmyzsh_start.png b/images/ohmyzsh_start.png new file mode 100644 index 000000000..9ee147cd0 Binary files /dev/null and b/images/ohmyzsh_start.png differ diff --git a/images/open_science_contribution1.png b/images/open_science_contribution1.png new file mode 100644 index 000000000..9bd4cdbce Binary files /dev/null and b/images/open_science_contribution1.png differ diff --git a/images/open_science_contribution2.png b/images/open_science_contribution2.png new file mode 100644 index 000000000..09724d314 Binary files /dev/null and b/images/open_science_contribution2.png differ diff --git a/images/other-images/owl.jpg b/images/other-images/owl.jpg new file mode 100644 index 000000000..42eeea594 Binary files /dev/null and b/images/other-images/owl.jpg differ diff --git a/images/project_ontologies.png b/images/project_ontologies.png new file mode 100644 index 000000000..f399918cb Binary files /dev/null and b/images/project_ontologies.png differ diff --git a/images/prompt-icon.jpg.sb-12c70a1b-fkHh2I b/images/prompt-icon.jpg.sb-12c70a1b-fkHh2I new file mode 100644 index 000000000..485317025 Binary files /dev/null and b/images/prompt-icon.jpg.sb-12c70a1b-fkHh2I differ diff --git a/images/prompt-icon.png b/images/prompt-icon.png new file mode 100644 index 000000000..881672da5 Binary files /dev/null and b/images/prompt-icon.png differ diff --git a/images/reference/managing-issues/milestone.png b/images/reference/managing-issues/milestone.png new file mode 100644 index 000000000..882447ef6 Binary files /dev/null and b/images/reference/managing-issues/milestone.png differ diff --git a/images/reference/managing-issues/project-board.png b/images/reference/managing-issues/project-board.png new file mode 100644 index 000000000..eb9424af7 Binary files /dev/null and b/images/reference/managing-issues/project-board.png differ diff --git a/images/reference/managing-issues/superissue.png b/images/reference/managing-issues/superissue.png new file mode 100644 index 000000000..f1a91b4a0 Binary files /dev/null and b/images/reference/managing-issues/superissue.png differ diff --git a/images/reference/protege/protege-active-ontology-tab.png b/images/reference/protege/protege-active-ontology-tab.png new file mode 100644 index 000000000..28aa101a1 Binary files /dev/null and b/images/reference/protege/protege-active-ontology-tab.png differ diff --git a/images/reference/protege/protege-buttons.png b/images/reference/protege/protege-buttons.png new file mode 100644 index 000000000..7977d7b7b Binary files /dev/null and b/images/reference/protege/protege-buttons.png differ diff --git a/images/reference/protege/protege-entities-tab.png b/images/reference/protege/protege-entities-tab.png new file mode 100644 index 000000000..83b5c1f78 Binary files /dev/null and b/images/reference/protege/protege-entities-tab.png differ diff --git a/images/reference/protege/protege-new-entities-metadata.png b/images/reference/protege/protege-new-entities-metadata.png new file mode 100644 index 000000000..f0631ec9b Binary files /dev/null and b/images/reference/protege/protege-new-entities-metadata.png differ diff --git a/images/repo-landing-page.png b/images/repo-landing-page.png new file mode 100644 index 000000000..ba93d64f6 Binary files /dev/null and b/images/repo-landing-page.png differ diff --git a/images/robot_report.png b/images/robot_report.png new file mode 100644 index 000000000..cadb0d266 Binary files /dev/null and b/images/robot_report.png differ diff --git a/images/robot_report2.png b/images/robot_report2.png new file mode 100644 index 000000000..587acbc12 Binary files /dev/null and b/images/robot_report2.png differ diff --git a/images/screenshot-of-images-in-issues.png b/images/screenshot-of-images-in-issues.png new file mode 100644 index 000000000..aceb8178f Binary files /dev/null and b/images/screenshot-of-images-in-issues.png differ diff --git a/images/semantic_spaces.png b/images/semantic_spaces.png new file mode 100644 index 000000000..64197b545 Binary files /dev/null and b/images/semantic_spaces.png differ diff --git a/images/tradeoff.png b/images/tradeoff.png new file mode 100644 index 000000000..7c19af812 Binary files /dev/null and b/images/tradeoff.png differ diff --git a/images/tutorials/disjointness/Figure42.png b/images/tutorials/disjointness/Figure42.png new file mode 100644 index 000000000..792decfca Binary files /dev/null and b/images/tutorials/disjointness/Figure42.png differ diff --git a/images/tutorials/disjointness/Figure43.png b/images/tutorials/disjointness/Figure43.png new file mode 100644 index 000000000..a0c154e7c Binary files /dev/null and b/images/tutorials/disjointness/Figure43.png differ diff --git a/images/tutorials/disjointness/Figure44.png b/images/tutorials/disjointness/Figure44.png new file mode 100644 index 000000000..d4e1cc68f Binary files /dev/null and b/images/tutorials/disjointness/Figure44.png differ diff --git a/images/tutorials/disjointness/Figure45.png b/images/tutorials/disjointness/Figure45.png new file mode 100644 index 000000000..b6814ab7b Binary files /dev/null and b/images/tutorials/disjointness/Figure45.png differ diff --git a/images/tutorials/disjointness/Figure46.png b/images/tutorials/disjointness/Figure46.png new file mode 100644 index 000000000..82ad003df Binary files /dev/null and b/images/tutorials/disjointness/Figure46.png differ diff --git a/images/tutorials/disjointness/Figure47.png b/images/tutorials/disjointness/Figure47.png new file mode 100644 index 000000000..34874de7f Binary files /dev/null and b/images/tutorials/disjointness/Figure47.png differ diff --git a/images/tutorials/dl-query/Figure57.png b/images/tutorials/dl-query/Figure57.png new file mode 100644 index 000000000..ed9b1a7b7 Binary files /dev/null and b/images/tutorials/dl-query/Figure57.png differ diff --git a/images/tutorials/dl-query/Figure58.png b/images/tutorials/dl-query/Figure58.png new file mode 100644 index 000000000..fb6e0b931 Binary files /dev/null and b/images/tutorials/dl-query/Figure58.png differ diff --git a/images/tutorials/dl-query/Figure59.png b/images/tutorials/dl-query/Figure59.png new file mode 100644 index 000000000..e695ae640 Binary files /dev/null and b/images/tutorials/dl-query/Figure59.png differ diff --git a/images/tutorials/dl-query/Figure60.png b/images/tutorials/dl-query/Figure60.png new file mode 100644 index 000000000..ee943f9b6 Binary files /dev/null and b/images/tutorials/dl-query/Figure60.png differ diff --git a/images/tutorials/dl-query/Figure61.png b/images/tutorials/dl-query/Figure61.png new file mode 100644 index 000000000..a4386a92e Binary files /dev/null and b/images/tutorials/dl-query/Figure61.png differ diff --git a/images/tutorials/dl-query/Figure62.png b/images/tutorials/dl-query/Figure62.png new file mode 100644 index 000000000..ba9eb27cd Binary files /dev/null and b/images/tutorials/dl-query/Figure62.png differ diff --git a/images/tutorials/dl-query/Figure63.png b/images/tutorials/dl-query/Figure63.png new file mode 100644 index 000000000..d357bdd99 Binary files /dev/null and b/images/tutorials/dl-query/Figure63.png differ diff --git a/images/tutorials/dl-query/Figure64.png b/images/tutorials/dl-query/Figure64.png new file mode 100644 index 000000000..caa959593 Binary files /dev/null and b/images/tutorials/dl-query/Figure64.png differ diff --git a/images/tutorials/dl-query/Figure65.png b/images/tutorials/dl-query/Figure65.png new file mode 100644 index 000000000..356bbafab Binary files /dev/null and b/images/tutorials/dl-query/Figure65.png differ diff --git a/images/tutorials/existential-restrictions/ExistentialRestrictionsWithSubclassVSEquivalentTo.png b/images/tutorials/existential-restrictions/ExistentialRestrictionsWithSubclassVSEquivalentTo.png new file mode 100644 index 000000000..286508f79 Binary files /dev/null and b/images/tutorials/existential-restrictions/ExistentialRestrictionsWithSubclassVSEquivalentTo.png differ diff --git a/images/tutorials/existential-restrictions/QualifiedExistentialRestriction.png b/images/tutorials/existential-restrictions/QualifiedExistentialRestriction.png new file mode 100644 index 000000000..a813e5c8f Binary files /dev/null and b/images/tutorials/existential-restrictions/QualifiedExistentialRestriction.png differ diff --git a/images/tutorials/existential-restrictions/QualifiedRestrictionExamples.png b/images/tutorials/existential-restrictions/QualifiedRestrictionExamples.png new file mode 100644 index 000000000..255816bc3 Binary files /dev/null and b/images/tutorials/existential-restrictions/QualifiedRestrictionExamples.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/CsubClassOfD.png b/images/tutorials/subClassOf-vs-equivalentTo/CsubClassOfD.png new file mode 100644 index 000000000..de58473ff Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/CsubClassOfD.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/CsubClassOfDExample.png b/images/tutorials/subClassOf-vs-equivalentTo/CsubClassOfDExample.png new file mode 100644 index 000000000..9485b69b3 Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/CsubClassOfDExample.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/EquivalentTo.png b/images/tutorials/subClassOf-vs-equivalentTo/EquivalentTo.png new file mode 100644 index 000000000..1bb4333a0 Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/EquivalentTo.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/EquivalentToExample.png b/images/tutorials/subClassOf-vs-equivalentTo/EquivalentToExample.png new file mode 100644 index 000000000..bc5453109 Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/EquivalentToExample.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/IndividualOfCnotInD.png b/images/tutorials/subClassOf-vs-equivalentTo/IndividualOfCnotInD.png new file mode 100644 index 000000000..4a343e440 Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/IndividualOfCnotInD.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/IndividualOfDnotInC.png b/images/tutorials/subClassOf-vs-equivalentTo/IndividualOfDnotInC.png new file mode 100644 index 000000000..364e60b22 Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/IndividualOfDnotInC.png differ diff --git a/images/tutorials/subClassOf-vs-equivalentTo/SubClassOfWhenNotToUse.png b/images/tutorials/subClassOf-vs-equivalentTo/SubClassOfWhenNotToUse.png new file mode 100644 index 000000000..3bc0850a4 Binary files /dev/null and b/images/tutorials/subClassOf-vs-equivalentTo/SubClassOfWhenNotToUse.png differ diff --git a/images/under-construction.png b/images/under-construction.png new file mode 100644 index 000000000..f111eab92 Binary files /dev/null and b/images/under-construction.png differ diff --git a/index.html b/index.html new file mode 100644 index 000000000..111f247ed --- /dev/null +++ b/index.html @@ -0,0 +1,3752 @@ + + + + + + + + + + + + + + + + + + + + + + OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+ +
+ + + +
+
+ + + + + + + + + + + + + +

On becoming an OBO Semantic Engineer

+

Welcome to the OBOOK and our OBO Semantic Engineering Training!

+

Introduction to the OBOOK (Open Biological and Biomedical Ontologies Organized Knowledge)

+

Documentation in the OBOOK is organised into 4 distinct sections based on the Diátaxis framework of documentation:

+
    +
  1. Tutorials: Learning-oriented documentation that contains exercises to help a beginner achieve basic competence in a specific area.
  2. +
  3. How-to Guides: Task-oriented documentation that functions as directions to guide the reader through the steps to achieve a specific end.
  4. +
  5. Reference Guides: Information-oriented documentation that describes a single topic in a succinct, technical and orderly way.
  6. +
  7. Explanations: Understanding-oriented documentation that clarifies, deepens and broadens the reader’s understanding of a subject.
  8. +
+

To accommodate for the various training use cases we support, we added the following categories:

+
    +
  1. Courses: A convenience content type that assembles materials from OBOOK for a specific, taught unit, such as the yearly ICBO tutorials.
  2. +
  3. Pathways: A kind of course pertaining to a specific role in the OBO-sphere, such as curator or software developer.
  4. +
  5. Lessons: A collection of materials (tutorials, explanations and how-to guides) that together aim to teach a well defined concept.
  6. +
+

Note: We are in the process of transforming the documentation accordingly, so please be patient if some of the documentation is not yet in the correct place. Feel free to create an issue if you find something that you suspect isn't in place.

+

Editorial Team

+
    +
  • James Overton, Knocean Inc. James has been a developer of software to support ontology development in and around the OBO sphere for more than a decade and delivers services to the OBO community through his company, Knocean Inc.
  • +
  • Becky Jackson, Bend Informatics. Becky has been a Semantic Software developer and Ontology Pipeline specialist since 2016, now working as an independent consultant.
  • +
  • Nicole Vasilevsky, Critical Path Institute. Nicole is the Associate Director of Data Science and an Ontology Curator for the Mondo Disease Ontology, and contributes to several other ontologies including the Human Phenotype Ontology, Uberon Anatomy Ontology, and Cell Ontology.
  • +
  • Nicolas Matentzoglu, Semanticly, Athens, Greece. Nico is an Ontology Engineer and Ontology Pipeline Specialist, being the Principal Ontology Pipeline Developer for the Monarch Initiative.
  • +
  • Shawn Tan, Novo Nordisk
  • +
  • David Osumi-Sutherland, EMBL-EBI
  • +
  • Sabrina Toro, University of Colorado
  • +
+

If you would like to contribute to this training, please find out more here.

+

Content

+ +

Acknowledgements

+

Critical Path Institute

+

+

Critical Path Institute (CPI) is an independent, nonprofit organisation dedicated to bringing together experts from regulatory agencies, industry and academia to collaborate and improve the medical product development process.

+

In April 2021, the CPI has commissioned the first version of this OBO course, contributing not only funding for the preparation and delivery of the materials, but also valuable feedback about the course contents and data for the practical exercises. We thank the CPI for contributing significantly to the OBO community and open science!

+

https://c-path.org/

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/analysing-linked-data/index.html b/lesson/analysing-linked-data/index.html new file mode 100644 index 000000000..71e79476c --- /dev/null +++ b/lesson/analysing-linked-data/index.html @@ -0,0 +1,4549 @@ + + + + + + + + + + + + + + + + + + + + + + + + Analysing Linked Data - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Analysing Linked Data (Fundamentals)

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+ +

Preparation

+ +

Learning objectives

+
    +
  • Advanced SPARQL
  • +
  • Term enrichment
  • +
  • Semantic similarity
  • +
  • Named Entity Recognition
  • +
+

Tutorials

+

The Linked Data landscape from an OBO perspective: Standards, Services and Tools

+

In the following we will look a bit at the general Linked Data landscape, and name some of its flagship projects and standards. It is important to be clear that the Semantic Web field is a very heterogenous one:

+

Flagship projects of the wider Semantic Web community

+
    +
  • Linked Open Data (LOD) cloud: The flagship project of the Semantic Web. An attempt to make all, or anyways a lot, of Linked Data accessible in one giant knowledge graph. A good overview can be found in this medium article. Note that some people seem to think that the Semantic Web is (or should be) the Linked Open Data cloud. I would question this view, but I am not yet decided what my position is.
  • +
  • Schema.org: General purpose vocabulary for entities on the web, founded by Google, Microsoft, Yahoo and Yandex. To get a better sense of the types of entities and relationships covered see here.
  • +
  • DBpedia: Project that extracts structured data from Wikipedia and makes it available as a giant knowledge graph. The associated ontology, similar to schema.org, covers entities encountered in common sense knowledge.
  • +
  • Wikidata: Free and open knowledge base that can be edited in much the same way as Wikipedia is edited.
  • +
+

While these Semantic Web flagship projects are doubtlessly useful, it is sometimes hard to see how they can help for your biomedical research. We rarely make use of them in our day to day work as ontologists, but there are some notable exceptions:

+
    +
  • Where our work involves modelling environmental factors, we sometimes use wikidata as a standard way to refer for example to countries.
  • +
  • For some more common sense knowledge use cases, such as nutrition, consider augmenting your knowledge graph with data from wikidata or dbpedia. While they may be a bit more messy and not directly useful for exploration by humans, it is quite possible that Machine Learning approaches can use the additional context provided by these knowledge graphs to improve embeddings and deliver more meaningful link predictions.
  • +
  • Some OBO ontologies are already on Wikidata - perhaps you can find additional synonyms and labels which help with your data mapping problems!
  • +
+

Where the OBO and Semantic Web communities are slightly at odds

+

The OBO format is a very popular syntax for representing biomedical ontologies. A lot of tools have been built over the years to hack OBO ontologies on the basis of that format - I still work with it on a daily basis. Although it has semantically been proven to be a subset of OWL (i.e. there is a lossless mapping of OBO into OWL) and can be viewed as just another syntax, it is in many ways idiosyncratic. For starters, you wont find many, if any, IRIs in OBO ontologies. The format itself uses CURIEs which are mapped to the general OBO PURL namespace during transformation to OWL. For example, if you see MONDO:0003847 in an OBO file, and were to translate it to OWL, you will see this term being translated to http://purl.obolibrary.org/obo/MONDO_0003847. Secondly, you have a bunch of built-in properties like BROAD or ABBREVIATION that mapped to a vocabulary called oboInOwl (oio). These are pretty non-standard on the general Semantic Web, and often have to be manually mapped to the more popular counterparts in the Dublin Core or SKOS namespaces.

+

Having URIs as identifiers is not generally popular in the life sciences. As discussed elsewhere, it is much more likely to encounter CURIEs such as MONDO:0003847 than URIs such as http://purl.obolibrary.org/obo/MONDO_0003847 in biomedical databases.

+

+

Useful tools for biomedical research

+

Why does the biomedical research, and clinical, community care about the Semantic Web and Linked Data? There are endless lists of applications that try to apply semantic technologies to biomedical problems, but for this week, we only want to look at the broader picture. In our experience, the use cases where Semantic Web standards are applied successfully are:

+
    +
  • Where to find ontologies: Ontology repositories
  • +
  • OBO Foundry Ontology Library
  • +
  • BioPortal
      +
    • CPT Story. The Current Procedural Terminology was the by far most highly accessed Terminology on Bioportal - for many years. Due to license concerns, it had to be withdrawn from the repository. This story serves a cautionary tale of using terminologies with non-open or non-transparent licensing schemes.
    • +
    +
  • +
  • AgroPortal: Like BioPortal, but focussed on the Agronomy domain.
  • +
  • Linked Open Data Vocabularies (LOV): Lists the most important vocabularies in the Linked Data space, such as Dublin Core, SKOS and Friend-of-a-Friend (FOAF).
  • +
  • Where to find terms: Term browsers
  • +
  • OLS: The boss of the current term browsers out there. While the code base is a bit dated, it still gives access to a wide range of relevant open biomedical ontology terms. Note, while being a bit painful, it is possible to set up your own OLS (for your organisation) which only contains those terms/ontologies that are relevant for your work.
  • +
  • Ontobee: The default term browser for OBO term purls. For example, click on http://purl.obolibrary.org/obo/OBI_0000070. This will redirect you directly to Ontobee, to show you the terms location in the hierarchy. A key difference between Ontobee and OLS/Bioportal is that Ontobee limits hierarchical relationships to is_a. This means if you are browsing ontologies such as GO, Uberon, CL, ENVO, you will not see part-of links in the hierarchy, and these links are crucial for understanding these ontologies.
  • +
  • AberOWL: Another ontology repository and semantic search engine. Some ontologies such as PhenomeNet can only be found on AberOWL, however, I personally prefer OLS.
  • +
  • identifiers.org: A centralised registry for identifiers used in the life sciences. This is one of the tools that bridge the gap between CURIEs and URLs, but it does not cover (OBO) ontologies very well, and if so, is not aware of the proper URI prefixes (see for example here, and HP term resolution that does not list the proper persistent URL of the HP identifier (http://purl.obolibrary.org/obo/HP_0000001)). Identifiers.org has mainly good coverage for databases/resources that use CURIE type identifiers. But: you can enter any ID you find in your data and it will tell you what it is associated with.
  • +
  • Curate biomedical data. There are a lot of different tools in this space - which we will discuss in a bespoke unit later in the course. Examples:
  • +
  • isatools: The open source ISA framework and tools help to manage an increasingly diverse set of life science, environmental and biomedical experiments that employing one or a combination of technologies.
  • +
  • RightField: System for curating ontology terms in Excel spreadsheets.
  • +
  • CEDAR Templates: Basically a templating system that allows to create templates to record metadata, for example in a lab setting, of course with ontology integration.
  • +
  • Other examples of tabular data to RDF converters, but new ones coming up every year.
  • +
  • Building ontologies
  • +
  • Populous/Webulous: A system to maintain/generate ontologies from spreadsheets. The idea was to basically to define patterns in a (now mostly dead) language called OPPL, and then apply them to spreadsheets to generate OWL axioms. EBI recently discontinued the service, as there is a general exodus to Google Sheets + ROBOT templates instead.
  • +
  • ROBOT templates + Google Sheets and Cogs: A lightweight approach based on a set of tools that allows curating ontologies in spreadsheets (e.g. Google Sheets) which are converted into OWL using ROBOT.
  • +
  • DOSDP tools + Dead Simple Design Patterns (DOSDP): Similar to ROBOT templates, DOSDPs (which really should be called DOSDTs, because they are not really design patterns; they are ontology templates), another system that allows the generation of OWL axioms based on spreadsheet data.
  • +
  • Cleaning messy data
  • +
  • OpenRefine: I have not myself used this ever, but some of my colleagues have. OpenRefine allows you to upload (spreadsheet) data, explore it and clean it (going as far as reconciling terms using Wikidata concepts).
  • +
+
Which biomedical ontologies should we use?
+

As a rule of thumb, for every single problem/term/use case, you will have 3-6 options to choose from, in some cases even more. The criteria for selecting a good ontology are very much dependent on your particular use case, but some concerns are generally relevant. A good first pass is to apply to "10 simple rules for selecting a Bio-ontology" by Malone et al, but I would further recommend to ask yourself the following:

+
    +
  • Do I need the ontology for grouping and semantic analysis? In this case a high quality hierarchy reflecting biological subsumption is imperative. We will explain later what this means, but in essence, you should be able to ask the following question: "All instances/occurrences of this concept in the ontology are also instances of all its parent classes. Everything that is true about the parent class is always also true about instances of the children." It is important for you to understand that, while OWL semantics imply the above, OWL is difficult and many ontologies "pretend" that the subclass link means something else (like a rule of thumb grouping relation).
  • +
  • Can I handle multiple inheritance in my analysis? While I personally recommend to always consider multiple inheritance (i.e, allow a term to have more than one parent class), there are some analysis frameworks, in particular in the clinical domain, that make this hard. Some ontologies are inherently ploy-hierarchical (such as Mondo), while others strive to be single inheritance (DO, ICD).
  • +
  • Are key resources I am interested in using the ontology? Maybe the most important question that will drastically reduce the amount of data mapping work you will have to do: Does the resource you wish to integrate already annotate to a particular ontology? For example, EBI resources will be annotating phenotype data using EFO, which in turn used HPO identifiers. If your use case demands to integrate EBI databases, it is likely a good idea to consider using HPO as the reference ontology for your phenotype data.
  • +
+

Aside from aspects of your analysis, there is one more thing you should consider carefully: the open-ness of your ontology in question. As a user, you have quite a bit of power on the future trajectory of the domain, and therefore should seek to endorse and promote open standards as much as possible (for egotistic reasons as well: you don't want to have to suddenly pay for the ontologies that drive your semantic analyses). It is true that ontologies such as SNOMED have some great content, and, even more compellingly, some really great coverage. In fact, I would probably compare SNOMED not with any particular disease ontology, but with the OBO Foundry as a whole, and if you do that, it is a) cleaner, b) better integrated. But this comes at a cost. SNOMED is a commercial product - millions are being payed every year in license fees, and the more millions come, the better SNOMED will become - and the more drastic consequences will the lock-in have if one day you are forced to use SNOMED because OBO has fallen too far behind. Right now, the sum of all OBO ontologies is probably still richer and more valuable, given their use in many of the central biological databases (such as the ones hosted by the EBI) - but as SNOMED is seeping into the all aspects of genomics now (for example, it will soon be featured on OLS!) it will become increasingly important to actively promote the use of open biomedical ontologies - by contributing to them as well as by using them.

+

We will discuss ontologies in the medical, phenomics and genomics space in more detail in a later session of the course.

+ + +

Basic Linked data and Semantic Web Concepts for the Semantic Data Engineer in the Biomedical Domain

+

In this section we will discuss the following:

+
    +
  • Introductory remarks
  • +
  • The advantages of globally unique identifiers
  • +
  • Some success stories of the Semantic Web in the biomedical domain
  • +
  • Some basic concepts you should probably have heard about
  • +
  • The ecosystem of the Semantic Web: Standards, Technologies and Research Areas
  • +
  • Typical tasks of Semantic Data Engineers in the biomedical domain
  • +
+

Introduction

+

Note of caution: No two Semantic Web overviews will be equivalent to each other. Some people claim the Semantic Web as an idea is an utter failure, while others praise it as a great success (in the making) - in the end you will have to make up your own mind. In this section I focus on parts of the Semantic Web step particularly valuable to the biomedical domain, and I will omit many relevant topics in the wider Semantic Web area, such as Enterprise Knowledge Graphs, decentralisation and personalisation, and many more. Also, the reader is expected to be familiar with the basic notions of the Semantic Web, and should use this overview mainly to tie some of the ideas together.

+

The goal of this section is to give the aspiring Semantic Data Engineer in the biomedical domain a rough idea of key concepts around Linked Data and the Semantic Web insofar as they relate to their data science and and data engineering problems. Even after 20 years of Semantic Web research (the seminal paper, conveniently and somewhat ironically behind a paywall, was published in May 2001), the area is still dominated by "academic types", although the advent of the Knowledge Graph is already changing that. As I already mentioned above, no two stories of what the Semantic Web is will sound the same. However, there are a few stories that are often told to illustrate why we need semantics. The OpenHPI course names a few:

+
    +
  • "From the web of documents to the web of data" tells the story of how the original web is essentially a huge heap of (interlinked) natural language text documents which are very hard to understand for search engines: Does the word "Jaguar" on this site refer to the car or the cat? Clarifying in your web page that the word Jaguar refers to the concept of "Jaguar the cat", for example like this: <span about="dbpedia:Jaguar">Jaguar</span>, will make it easier for the search engine to understand what your site is about and link it to other relevant content. From this kind of mark-up, structured data can be extracted and integrate into a giant, worldwide database, and exposed through SPARQL endpoints, that can then be queried using a suitable query language.
  • +
  • "From human to machine understandable": as a Human, we know that a Jaguar is a kind of cat, and all cats have four legs. If you ask a normal search engine: "Does a Jaguar have four legs?" it will have a tough time to answer this question correctly (if it cannot find that exact statement anywhere). That is why we need proper semantics, some kind of formalism such that a "machine" can deduce from the statements "Jaguar is a cat; Cat has four legs" that "Jaguar has four legs".
  • +
  • The "Semantic Layer Cake": a box/brick diagram showing how Semantic Web Technologies are stacked on top of each other. An engineering centric view that has been used countless times to introduce the Semantic Web, but rarely helped anyone to understand what it is about.
  • +
+

I am not entirely sure anymore that any of these ways (web of data, machine understanding, layered stack of matching standards) to motivate the Semantic Web are particularly effective for the average data scientists or engineer. +If I had to explain the Semantic Web stack to my junior self, just having finished my undergraduate, I would explain it as follows (no guarantee though it will help you).

+
+

The Semantic Web / Linked Data stack comprises roughly four components that are useful for the aspiring Semantic (Biomedical) Data Engineer/Scientist to distinguish:

+
A way to refer to things (including entities and relations) in a global namespace.
+

You, as a scientist, might be using the term "gene" to refer to basic physical and functional unit of heredity, but me, as a German, prefer the term "Gen". In the Semantic Web, instead of natural language words, we prefer to use URIs to refer to things such as https://www.wikidata.org/wiki/Q7187: if you say something using the name https://www.wikidata.org/wiki/Q7187, both your German and Japanese colleagues will "understand" what you are referring to. More about that in the next chapter.

+
Lots (loaaaads!) of ways to make statements about things.
+

For example, to express "a mutation of SHH in humans causes isolated microphthalmia with coloboma-5" you could say something like (http://purl.obolibrary.org/obo/MONDO_0012709 | "microphthalmia, isolated, with coloboma 5")--[http://purl.obolibrary.org/obo/RO_0004020 | "has basis in dysfunction of"]-->(https://identifiers.org/HGNC:10848 | "SSH (gene)"). Or you could say: (http://purl.obolibrary.org/obo/MONDO_0012709 | "microphthalmia, isolated, with coloboma 5")--[http://www.w3.org/2000/01/rdf-schema#subClassOf | "is a"]-->(http://purl.obolibrary.org/obo/MONDO_0003847 | "Mendelian Disease"). If we use the analogy of "language", then the URIs (above) are the words, and the statements are sentences in a language. Unfortunately, there are many languages in the Semantic Web, such as OWL, RDFS, SKOS, SWRL, SHACL, SHEX, and dialects (OWL 2 EL, OWL 2 RL) and a plethora of formats, or serialisations (you can store the exact same sentence in the same language such as RDF, or OWL, in many different ways)- more about that later. In here lies also one of the largest problems of the Semantic Web - lots of overlapping standards means, lots of incompatible data - which raises the bar for actually being able to seamlessly integrate "statements about things" across resources.

+
Collections of statements about things that somehow belong together and provide some meaning, or context, for those things.
+

Examples include:

+
    +
  • controlled vocabularies, that define, for example, how to refer to a disease (e.g., we use http://purl.obolibrary.org/obo/MONDO_0012709 to refer to "isolated microphthalmia with coloboma 5"),
  • +
  • terminologies which describe how we humans refer to a disease (How is it called in German? Which other synonyms are used in the literature? How is the term defined in the medical literature?),
  • +
  • taxonomies which define how diseases are related hierarchically ("microphthalmia, isolated, with coloboma 5 is a kind of Mendelian disease"),
  • +
  • ontologies which further define how diseases are defined in terms of other entities, for example "microphthalmia, isolated, with coloboma 5 is a Mendelian disease that has its basis in the dysfunction of SSH".
  • +
  • Note: In practice, when we say "ontology", we mean all of the above together - it is, however, good to know that they are somewhat distinct, and that there are different "languages" that can be used for each of these distinctions.
  • +
+
Tools that do something useful with these collections of statements.
+

For example (as always, non exhaustive):

+
    +
  • Efficient storage (triple stores, in-memory ontology APIs, other databases). Similar to traditional SQL databases, the Semantic Web comes with a number of database solutions that are optimised to deliver "semantic content".
  • +
  • Semantically aware querying: Very similar to traditional SQL (which, incidentally is often great to query semantic data), there are various ways to "interrogate", or query, your Linked Data, such as SPARQL, DL Querying, Ontology-based data access (OBDA).
  • +
  • Subsetting (module/subset extraction): Often, ontologies (or other collections of Linked Data statements) are very large and cover a lot of entities and knowledge that is not important to your work. There are a number of techniques that allow you to extract meaningful subsets for your use case; for example, you may be interested to get all the information you can about Mendelian diseases, but you don't care about common diseases (e.g. see ROBOT extract).
  • +
  • Visualisation: As a Data Scientist, you are used to looking at your data in tabular form - while a lot of information stored in ontologies can still be inspected this way, in general semantic data is best perceived as a graph - which are notoriously hard to visualise. Fortunately, a lot of Linked Data, in particular ontologies in the biomedical domain are predominantly tree-shaped (you have a disease, and underneath sub-diseases). Term browsers like OLS typically render ontologies as trees.
  • +
  • Data linking/matching: This is key in particular in the biomedical sciences, as there is almost never just one way to refer to the same thing. In my experience, a good rule of thumb is that there are 3-6, e.g. 3-6 URIs that refer to "Mendelian Disease", all of which need to be matched together to integrate data across resources. There are many approaches to ontology matching - none of which are anywhere near perfect.
  • +
  • Automated error checking and validation (Syntax, Structure (SHEX, SHACL), logical Consistency (DL Reasoner)): Naturally, writing sentences in any language is hard in the beginning, but this is even more true for highly complex languages such as OWL. In my experience, no-one can write flawless OWL without the help of automatic syntax and semantics checking, at least not consistently. Validation tools are a crucial part of your Semantic Engineering toolbox.
  • +
  • Translate between languages: Often we need to translate from one language, for example OWL, to another, for example SKOS to integrate divergent resources. Translations in the Semantic Web context are nearly always lossy (there are always things you can say in one language, but not in another), but they may be necessary nevertheless.
  • +
  • Discovery of terms (OLS, BioPortal): If you are curating terms, you need to know what ID (URI) to use for "isolated microphthalmia with coloboma 5". For that, term browsers such as OLS are perfect. Just type in your natural language search term, and you will find a series of suggestions for URIs you can use for your curation.
  • +
  • Discovery of vocabularies OBO Foundry ontology library, BioPortal): we will have a section later on on how to select appropriate ontologies for your use case, but the general problem of finding vocabularies, or ontologies, is answered by ontology repositories or libraries. Naturally, our favourite ontology library is the OBO Foundry ontology library which contain a lot of high quality ontologies for the biomedical domain.
  • +
  • Make implicit knowledge explicit, aka reasoning:
  • +
  • Deductive (DL Reasoning, Rule-based reasoning such as Datalog, SWRL). One of the major selling points for OWL, for example, in the biomedical domain is the ability to use logical reasoning in a way that is sound (only gives you correct inferences, at all times) and complete (all hidden implications are found, at all times, by the reasoner) - this is particularly great for medical knowledge where mistakes in computer algorithms can have devastating effects. However, I am slowly coming to the conviction that sound and complete reasoning is not the only form of deductive reasoning that is useful - many rule languages can offer value to your work by unveiling hidden relationships in the data without giving such strong "logical guarantees".
  • +
  • Inductive (Machine Learning approaches, Knowledge Graph Representation Learning). The new frontier - we will discuss later in the course how our ontology-powered Knowledge Graphs can be leveraged to identify drug targets, novel gene to phenotype associations and more, using a diverse set of Machine Learning-based approaches.
  • +
+

This week will focus on 1 (identifiers) and 4 (applications) - 2 (languages and standards) and 3 (controlled vocabularies and ontologies) will be covered in depth in the following weeks.

+

Note on the side: Its not always 100% clear what is meant by Linked Data in regular discourse. There are some supposedly "clear" definitions ("method for publishing structured data", "collection of interrelated datasets on the Web"), but when it comes down to the details, there is plenty of confusion (does an OWL ontology constitute Linked Data when it is published on the Web? Is it Linked Data if it does not use RDF? Is it Linked Data if it is less than 5-star - see below). In practice all these debates are academic and won't mean much to you and your daily work. There are entities, statements (context) being said about these entities using some standard (associated with the Semantic Web, such as OWL or RDFS) and tools that do something useful with the stuff being said.

+

When I say "Mendelian Disease" I mean http://purl.obolibrary.org/obo/MONDO_0003847

+

One of the top 5 features of the Semantic Web (at least in the context of biomedical sciences) is the fact that we can use URIs as a global identifier scheme that is unambiguous, independent of database implementations, independent of language concerns to refer to the entities in our domain.

+

For example, if I want to refer to the concept of "Mendelian Disease", I simply refer to http://purl.obolibrary.org/obo/MONDO_0003847 - and everyone, in Japan, Germany, China or South Africa, will be able to "understand" or look up what I mean. I don't quite like the word "understanding" in this context as it is not actually trivial to explain to a human how a particular ID relates to a thing in the real world (semiotics). In my experience, this process is a bit rough in practice - it requires that there is a concept like "Mendelian Disease" in the mental model of the person, and it requires some way to link the ID http://purl.obolibrary.org/obo/MONDO_0003847 to that "mental" concept - not always as trivial as in this case (where there are standard textbook definitions). The latter is usually achieved (philosophers and linguists please stop reading) by using an annotation that somehow explains the term - either a label or some kind of formal definition - that a person can understand. In any case, not trivial, but thankfully not the worst problem in the biomedical domain where we do have quite a wide range of shared "mental models" (more so in Biology than Medical Science..). Using URIs allows us to facilitate this "understanding" process by leaving behind some kind of information at the location that is dereferenced by the URI (basically you click on the URI and see what comes up). Note that there is a huge deal of compromise already happening across communities. In the original Semantic Web community, the hope was somehow that dereferencing the URI (clicking on it, navigating to it) would reveal structured information about the entity in question that could used by machines to understand what the entity is all about. In my experience, this was rarely ever realised in the biomedical domain. Some services like Ontobee expose such machine readable data on request (using a technique called content negotiation), but most URIs simply refer to some website that allow humans to understand what it means - which is already a huge deal. For more on names and identifiers I refer the interested reader to James Overton's OBO tutorial here.

+

Personal note: Some of my experienced friends in the bioinformatics world say that "IRI have been more pain than benefit". It is clear that there is no single thing in the Semantic Web is entirely uncontested - everything has its critics and proponents.

+
The advent of the CURIE and the bane of the CURIE map
+

In reality, few biological resources will contain a reference to http://purl.obolibrary.org/obo/MONDO_0003847. More often, you will find something like MONDO:0003847, which is called a CURIE. You will find CURIEs in many contexts, to make Semantic Web languages easier to read and manage. The premise is basically that your document contains a prefix declaration that says something like this:

+
PREFIX MONDO: <http://purl.obolibrary.org/obo/MONDO_>
+
+

which allows allows the interpreter to unfold the CURIE into the IRI:

+
MONDO:0003847 -> http://purl.obolibrary.org/obo/MONDO_0003847
+
+

In reality, the proliferation of CURIEs has become a big problem for data engineers and data scientists when analysing data. Databases rarely, if ever, ship the CURIE maps with their data required to understand what a prefix effectively stands for, leading to a lot of guess-work in the daily practice of the Semantic Data Engineer (if you ever had to distinguish ICD: ICD10: ICD9: UMLS:, UMLSCUI: without a prefix map, etc you will know what I am talking about). Efforts to bring order to this chaos, essentially globally agreed CURIE maps (e.g. prefixcommons), or ID management services such as identifiers.org exist, but right now there is no one solution - prepare yourself to having to deal with this issue when dealing with data integration efforts in the biomedical sciences. More likely than not, your organisation will build its own curie map and maintain it for the duration of your project.

+

Semantic Web in the biomedical domain: Success stories

+

There are probably quite a few divergent opinions on this, but I would like to humbly list the following four use cases as among the most impactful applications of Semantic Web Technology in the biomedical domain.

+
Light Semantics for data aggregation.
+

We can use hierarchical relations in ontology to group data. For example, if I know that http://purl.obolibrary.org/obo/MONDO_0012709 ("microphthalmia, isolated, with coloboma 5") http://www.w3.org/2000/01/rdf-schema#subClassOf ("is a") http://purl.obolibrary.org/obo/MONDO_0003847 ("Mendelian Disease"), then a specialised Semantic Web tool called a reasoner will know that, if I ask for all genes associated with Mendelian diseases, you also want to get those associated with "microphthalmia, isolated, with coloboma 5" specifically (note that many query engines such as SPARQL with RDFS entailment regime have simple reasoners embedded in them, but we would not call them "reasoner" - just query engine).

+
Heavy Semantics for ontology management.
+

Ontologies are extremely hard to manage and profit from the sound logical foundation provided by the Web Ontology Language (OWL). We can logically define our classes in terms of other ontologies, and then use a reasoner to classify our ontology automatically. For example, we can define abnormal biological process phenotypes in terms of biological processes (Gene Ontology) and classify our phenotypes entirely using the classification of biological processes in the Gene Ontology (don't worry if you don't understand a thing - we will get to that in a later week).

+
Globally unique identifiers for data integration.
+

Refer to the same thing the same way. While this goal was never reached in total perfection, we have gotten quite close. In my experience, there are roughly 3-6 ways to refer to entities in the biomedical domain (like say, ENSEMBL, HGNC, Entrez for genes; or SNOMED, NCIT, DO, MONDO, UMLS for diseases). So while the "refer to the same thing the same way" did not truly happen, a combination of standard identifiers with terminological mappings, i.e. links between terms, can be used to integrate data across resources (more about Ontology Matching later). Again, many of my colleagues disagree - they don't like IRIs, and unfortunately, you will have to build your own position on that.

+

Personal note: From an evolutionary perspective, I sometimes think that having 2 or 3 competing terminological systems is better than 1, as the competition also drives the improvements in quality, but there is a lot of disagreement on this.

+
Coordinated development of mutually compatible ontologies across the biomedical domain: The Open Biological and Biomedical Ontologies (OBO) Foundry.
+

The OBO Foundry is a community-driven effort to coordinate the development of vocabularies and ontologies across the biomedical domain. It develops standards for the representation of terminological content (like standard properties), and ontological knowledge (shared design patterns) as well as shared systems for quality control. Flagship projects include:

+
    +
  • The Relation Ontology (RO) for the standardisation of relationships that connect entities in biomedical ontologies.
  • +
  • The Core Ontology for Biology and Biomedicine (COB): upper ontology to align key entities used throughout biomedical ontologies.
  • +
  • The OBO Metadata Ontology for aligning ontology metadata properties across OBO ontologies.
  • +
  • The OBO Persistent Identifier System: an Identifier scheme for persistent URIs used by many ontologies on the web. The system is used to refer to terms as well as ontologies and their versions.
  • +
  • OBO Dashboard: a system for the monitoring and continued improvement of OBO ontologies with automated Quality Control checks.
  • +
+

Semantic Web and Linked Data: Things you should have heard about

+
    +
  • The Semantic Web Layer Cake: A iconic, colourful graphic that describes the layered design of the semantic web, from URIs to Logic. Its not particularly useful, but as a Semantic Web Explorer, you should have seen it.
  • +
  • Linked Data is mostly referred to as a "method for publishing data", a key concept in the Semantic Web domain, coined by Tim Berners Lee in 2006. Related concepts:
  • +
  • Linked Data Principles:
      +
    • Use URIs as names for things
    • +
    • Use HTTP URIs so that people can look up those names.
    • +
    • When someone looks up a URI, provide useful information.
    • +
    • Include links to other URIs. so that they can discover more things.
    • +
    +
  • +
  • 5-Star system
      +
    1. make your stuff available on the Web (whatever format) under an open license
    2. +
    3. make it available as structured data (e.g., Excel instead of image scan of a table)
    4. +
    5. use non-proprietary formats (e.g., CSV instead of Excel)
    6. +
    7. use URIs to denote things, so that people can point at your stuff
    8. +
    9. link your data to other data to provide context
    10. +
    +
  • +
  • FAIR data: Principles defined in 2016, somewhat orthogonal to Linked Data Principles. A nice tutorial, also going a bit more in depth into identifiers than what we did in this section, can be found here. The idea of FAIR data is probably more impactful in the biomedical and pharmaceutical world then the idea of Linked Data. While there are some (slighltly irritating) voices on the sidelines that say that "It can't be FAIR if its not RDF", it is probably true that a nicely formatted CSV file on the Web is at least as useful as a (hard to understand) RDF dump containing the same data. Worldwide collaborations between major pharmaceutical corporations promoting FAIR data, such as the Pistoia Alliance do mention Semantic Web Technologies in their White papers, but keep the jargon a bit more hidden from the general public. Data, according to the FAIR principles, should be:
  • +
  • Findable (machine readable metadata, etc)
  • +
  • Accessible (open authentication, authorisation)
  • +
  • Interoperable (integrated with other data, closely related to controlled vocabularies and linked data)
  • +
  • Reusable (metadata, license, provenance)
  • +
  • World Wide Web Consortium (W3C): The World Wide Web Consortium (W3C) is an international community that develops open standards, in particular many of those (but not all!) pertaining to the Semantic Web.
  • +
+

The Ecosystem of Linked Data and Semantic Web: Standards, Technologies and Research Areas

+

In the following, we will list some of the technologies you may find useful, or will be forced to use, as a Semantic Data Engineer. Most of these standards will be covered in the subsequent weeks of this course.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
StandardPurposeUse case
Web Ontology Language (OWL)Representing Knowledge in Biomedical OntologiesAll OBO ontologies must be provided in OWL as well.
Resource Description Framework (RDF)Model for data interchange.Triples, the fundamental unit of RDF, are ubiquitous on the Semantic Web
SPARQL Query Language for RDFA standard query language for RDF and RDFS.Primary query language to interrogate RDF/RDFS/Linked Data on the Web.
Simple Knowledge Organization System (SKOS)Another, more lightweight, knowledge organisation system in many ways competing with OWL.Not as widely used in the biomedical domain as OWL, but increasing uptake of "matching" vocabulary (skos:exactMatch, etc).
RDF-starA key shortcoming of RDF is that, while I can in principle say everything about everything, I cannot directly talk about edges, for example to attribute provenance: "microphthalmia, isolated, with coloboma 5 is kind of Mendelian disease"--source: WikipediaUse cases here.
JSON-LDA method to encoding linked data in JSON format.(Very useful to at least know about).
RDFaW3C Recommendation to embed rich semantic metadata in HTML (and XML).I have to admit - in 11 years Semantic Web Work I have not come across much use of RDFa in the biomedical domain. But @jamesaoverton is using it in his tools!
+

A thorough overview of all the key standards and tools can be found on the Awesome Semantic Web repo.

+

For a rough sense of current research trends it is always good to look at the accepted papers at one of the major conferences in the area. I like ISWC (2020 papers), but for the aspiring Semantic Data Engineering in the biomedical sphere, it is probably a bit broad and theoretical. Other interesting specialised venues are the Journal of Biomedical Semantics and the International Conference on Biomedical Ontologies, but with the shift of the focus in the whole community towards Knowledge Graphs, other journals and conferences are becoming relevant.

+

Here are a few key research areas, which are, by no means (!), exhaustive.

+
    +
  • How can we combine data and knowledge from different ontologies/knowledge graphs?
  • +
  • Ontology/Knowledge graph alignment: How can we effectively link to ontologies, or knowledge graphs, together?
  • +
  • Ontology merging: combine two ontologies by corresponding concepts and relations.
  • +
  • Ontology matching: A sub-problem of ontology alignment, namely the problem of determining whether two terms (for example two diseases) from different ontologies should be linked together or not.
  • +
  • How can we integrate data from unstructured and semistructured sources such as documents or spreadsheets?
  • +
  • Named Entity Recognition (NER): the process of identifying a named "thing" in a text.
  • +
  • Entity linking: The task of associating a named entity, for example the result of a Named Entity Recognition algorithm, or the column of a spreadsheet, to a concept in an ontology. For example, the value "Mendelian Disease" is linked to the concept http://purl.obolibrary.org/obo/MONDO_0003847.
  • +
  • Relationship extraction: Once you have identified the genes and diseases in your Pubmed abstracts, you will want to understand how they related to each other. Is the gene the "basis in dysfunction of" the disease? Or just randomly co-occurs in the sentence?
  • +
  • Note: Many of the problems in this category are typically associated with the domain of Natural Language Processing rather than Semantic Web.
  • +
  • How can we generate insight from semantically integrated data?
  • +
  • Knowledge Graphs and Machine Learning
      +
    • Knowledge Graph Embeddings. The number one hype topic in recent years: How do you get from a graph of interrelated entities to a faithful representation in a vector space (basically numbers), so that Machine Learning algorithms can do their magic?
    • +
    • Link predication: Based on what we know, which are the best drug targets for my rare disease of interest?
    • +
    +
  • +
  • Logical reasoning: While the research on deductive reasoning, at least the more "hard-core" Description Logic kind, seems to be a bit more quiet in recent years (maybe I am wrong here, I just see much less papers coming through my Google Scholar alerts now then I used to), there is still a lot going on in this domain: more efficient SPARQL engines, rule-based reasoning such as the recently commercialised RDFox reasoner and many more.
  • +
  • Other research areas (not in any way exhaustive):
  • +
  • Web decentralisation and privacy:
      +
    • Solid: Solid (Social Linked Data) is a web decentralization project led by Tim Berners-Lee, with the aim of true ownership of personal data and improved privacy. "Pods" are like secure personal web servers for data from which application can request data.
    • +
    • Shape validation: It is very difficult to validate huge Knowledge Graphs of interrelated data efficiently (by validate we can mean a lot of things, such as making sure that your cat does not accidentally end up as someone's "Mendelian Disease"). Shape languages such as Shex and SHACL are poised to solve this problem, but the research is ongoing.
    • +
    +
  • +
  • New standards and tools: There is always someone proposing a new semantic standard for something or building a new kind of triple store, SPARQL extension or similar.
  • +
+

Typical Jobs of Semantic Data Engineers in the biomedical domain

+

It is useful to get a picture of the typical tasks a Semantic Data Engineer faces when building ontologies are Knowledge Graphs. In my experience, it is unlikely that any particular set of tools will work in all cases - most likely you will have to try and assemble the right toolchain for your use case and refine it over the lifetime of your project. The following are just a few points for consideration of tasks I regularly encountered - which may or may not overlap with the specific problems you will face.

+
Finding the right ontologies
+

There are no simple answers here and it very heavily depends on your use cases. We are discussing some places to look for ontologies here, but it may also be useful to simply upload the terms you are interested in to a service like Zooma and see what the terms map to at a major database provider like EBI.

+
Finding the right data sources
+

This is much harder still than it should have to be. Scientific databases are scattered across institutions that often do not talk to each other. Prepare for some significant work in researching the appropriate databases that could benefit your work, using Google and the scientific literature.

+
Extending existing ontologies
+

It is rare nowadays that you will have to develop an ontology entirely from scratch - most biomedical sub-domains will have some kind of reasonable ontology to build upon. However, there is often a great need to extend existing ontologies - usually because you have the need of representing certain concepts in much more detail, or your specific problem has not been modelled yet - think for example when how disease ontologies needed to be extended during the Coronavirus Crisis. Extending ontologies usually have two major facets:

+
    +
  1. If at all possible you should seek to contribute new terms, synonyms and relationships to the ontologies you seek to extend directly. Here, you can use GitHub to make issues requesting new terms, but more boldly, you can also add new terms yourself. We will teach you how to do that in one of the next weeks.
  2. +
  3. If the knowledge is considered out of scope for the ontology to be extended (for example because the terms are considered too detailed), then you will maintain your own "branch" of the ontology. Many tools such as the Ontology Development Kit and ROBOT can help you maintain such a branch but the general instinct should be:
  4. +
  5. Make a public GitHub repo.
  6. +
  7. Reach out to the developers of the main ontology
  8. +
  9. Stay in touch and coordinate releases
  10. +
+
Mapping data into ontologies/knowledge graphs
+

Also sometimes more broadly referred to as "data integration", this problem involves a variety of tasks, such as:

+
    +
  1. Named Entity Recognition. If you have a set of documents, such as PubMed abstracts or clinical notes, you may have to first identify the parts of speech that refer to clinical entities.
  2. +
  3. Entity Linking: Once you have identified the biomedical entities of interest, you may want to link them to your existing knowledge graph. This process is sometimes called entity mapping or data mapping as well. Very often, this task is not fully automated. We have worked on projects where we used approaches to Entity Linking to suggest good mappings to users, which then had to confirm or reject them. It is also good to understand that not all entity linking must be vertical (i.e. between "equivalent" entities). Very often, there is no equivalent entity in your knowledge graph to map to, and here you need to decide whether to (a) create a new entity in the knowledge graph to map to or (b) map to a broader entity (for example "microphthalmia, isolated, with coloboma 5" to "Mendelian Disease"). What is more efficient / useful solely depends on your use case!
  4. +
+
Build application ontologies
+

To make your data discoverable, it is often useful to extract a view from the ontologies you are using (for example, Gene Ontology, Disease Ontology) that only contains the terms and relationships of relevance to your data. We usually refer to this kind of ontology as an application ontology, or an ontology specific to your application, which will integrate subsets of other ontologies. This process will typically involve the following:

+
    +
  • Define a seed, or a set of terms you want to import from your external ontologies of interest.
  • +
  • Extract relevant subsets from ontologies using this seed (for example using ROBOT extract).
  • +
  • Combine and potentially link these subsets together.
  • +
  • Frameworks such as the Ontology Development Kit can help with this task, see for example the Coronavirus Vocabulary maintained by EBI.
  • +
+
Leverage ontologies and knowledge graphs for you data analysis problems
+

There are many ways your semantic data can be leveraged for data analysis, but in my experience, two are particularly central:

+
    +
  1. Data grouping and search: make data about "microphthalmia, isolated, with coloboma 5" available when searching for data about "Mendelian Disease".
  2. +
  3. Link prediction: Figure out what additional knowledge is hidden in your data that can drive your research (e.g. possible new therapies or drug targets).
  4. +
+

Additional materials and resources

+

The open courses of the Hasso Plattner Institute (HPI) offer introductions into the concepts around Linked Data, Semantic Web and Knowledge Engineering. There are three courses of relevance to this weeks topics, all of which overlap significantly.

+ +

Contributors

+
    +
  • add name/ORCID here
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/automating-ontology-workflows/index.html b/lesson/automating-ontology-workflows/index.html new file mode 100644 index 000000000..a0a434a12 --- /dev/null +++ b/lesson/automating-ontology-workflows/index.html @@ -0,0 +1,4935 @@ + + + + + + + + + + + + + + + + + + + + + + + + Automating Ontology Workflows - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Automating Ontology Development Workflows: Make, Shell and Automation Thinking

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+
    +
  • Ontology Pipelines
  • +
+

What is delivered as part of the course

+

In this course, you will learn the basics of automation in and around the OBO ontology world - and beyond. The primary goal is to enable ontology pipeline developers to plan the automation of their ontology workflows and data pipelines, but some of the materials are very general and apply to scientific computing more widely. The course serves also as a prerequisite for advanced application ontology development.

+

Learning objectives

+
    +
  • Unix shell
  • +
  • make
  • +
  • Advanced Git, GitHub
  • +
+

Preparation

+

Please complete the following tutorials.

+ +

Tutorials

+

Thinking "Automation"

+

By: James Overton

+

Automation is part of the foundation of the modern world. +The key to using and building automation +is a certain way of thinking about processes, +how they can be divided into simple steps, +and how they operate on inputs and outputs +that must be exactly the same in some respects but different in others.

+

In this article I want to make some basic points about automation +and how to think about it. +The focus is on automation with software and data, +but not on any particular software or data. +Some of these points may seem too basic, +especially for experienced programmers, +but in 20+ years of programming +I've never seen anybody lay out these basic points in quite this way. +I hope it's useful.

+

The Basics

+
+

"automatos" from the Greek: "acting of itself"

+
+

Automation has two key aspects:

+
    +
  1. make the input the same
  2. +
  3. process the inputs in the same way
  4. +
+

The second part is more visible, +and tends to get more attention, +but the first part is at least as important. +While automation makes much of the modern world possible, +it is not new, +and there are serious pitfalls to avoid. +No system is completely automatic, +so it's best to think of automation on a spectrum, +and starting thinking about automation +at the beginning of a new project.

+

Examples of Automation

+

To my mind, the word "automation" brings images of car factories, +with conveyor belts and robotic arms moving parts and welding them together. +Soon they might be assembling self-driving ("autonomous") cars. +Henry Ford is famous for making cars affordable +by building the first assembly lines, +long before there were any robots. +The essential steps for Ford were standardizing the inputs and the processes +to get from raw materials to a completed car. +The history of the 20th century is full of examples of automation +in factories of all sorts.

+

Automation was essential to the Industrial Revolution, +but it didn't start then. +We can look to the printing press. +We can look to clocks, which regimented lives in monasteries and villages. +We can think of recipes, textiles, the logistics of armies, +advances in agriculture, banking, the administration of empires, +and so on. +The scientific revolution was built on repeatable experiments +published in letters and journal articles. +I think that the humble checklist is also an important relative of automation.

+

Automation is not new, +but it's an increasingly important part +of our work and our lives.

+

Software Automation is Special

+

Software is almost always written as source code in text files +that are compiled and/or interpreted as machine code +for a specific set of hardware. +Software can drive machines of all sorts, +but a lot of software automation stays inside the computer, +working on data in files and databases, +and across networks. +We'll be focused on this kind of software automation, +transforming data into data.

+

The interesting thing about this is that source code is a kind of data, +so there are software automation workflows +that operate on data that defines software. +The upshot is that you can have automation that modifies itself. +Doing this on a large scale introduces a lot of complexity, +but doing it on a small scale can be a clean solution to certain problems.

+

Another interesting thing about software is that +once we solve an automation problem once +we can copy that solution and apply it again and again +for almost zero cost. +We don't need to build a new factory or a new threshing machine. +We can just download a program and run it. +Henry Ford could make an accurate estimate +of how long it would take to build a car on his assembly line, +but software development is not like working on the assembly line, +and estimating time and budget for software development is notoriously hard. +I think this is because software developers +aren't just executing automation, +they're building new automation for each new project.

+

Although we talk about "bit rot", +and software does require maintenance of a sort, +software doesn't break down or wear out +in the same ways that physical machines do. +So while the Industrial Revolution eliminated many jobs, +it also created different jobs, +building and maintaining the machines. +It's not clear that software automation will work the same way.

+

Software automation is special because it can operate on itself, +and once complete can be cheaply copied. +Software development is largely about building automated systems of various sorts, +usually out of many existing pieces. +We spend most of our time building new systems, +or modifying an existing system to handle new inputs, +or adapting existing software to a new use case.

+

The Dangers of Automation

+
+

To err is human; to really foul things up requires a computer.

+
+

An obvious danger of automation is that +machines are faster than humans, +so broken automation can often do more damage +more quickly than a human can. +A related problem is that humans usually have much more +context and depth of experience, +which we might call "common sense", +and a wider range of sensory inputs than most automated systems. +This makes humans much better at recognizing +that something has gone wrong with a process +and that it's time to stop.

+

New programmers soon learn that a simple program +that performs perfectly when the input is in exactly the right format, +becomes a complex program once it's updated to handle +a wide range of error conditions. +In other words, it's almost always much harder +to build automation that can gracefully handler errors and problems +than it is to automate just the "happy path". +Old programmers have learned through bitter experience +that it's often practically impossible to predict +all the things that can go wrong with an automated system in practise.

+
+

I suppose it is tempting, if the only tool you have is a hammer, +to treat everything as if it were a nail. +-- Abraham Maslow

+
+

A less obvious danger of automation comes from the sameness requirement. +When you've built a great piece of automation, +perfectly suited to inputs of a certain type, +it's very tempting to apply that automation more generally. +You start paying too much attention to how things are the same, +and not enough attention to their differences. +You may begin to ignore important differences. +You may surrender your common sense and good judgment, +to save yourself the work of changing the automated system or making an exception.

+

Bureaucracies are a form of automation. +Everyone has had a bad experience +filling out some form that ignores critical information, +and with some bureaucrat who would not apply common sense and make an exception.

+

Keep all this in mind as you build automated systems: +a broken machine can do a lot of damage very quickly, +and a system built around bad assumptions +can do a lot of hidden damage.

+

A Spectrum of Automation

+

Let's consider a simple case of automation with software, +and build from the most basic sort of automation +to a full-fledged system.

+

Say you have a bunch of text files in a directory, +each containing minutes from meetings that we had together over the years. +You can remember that I talked about a particular software package +that might solve a problem that you just discovered, +but you can't remember the name.

+
1. Ad Hoc
+

The first thing you try is to just search the directory. +On a Mac you would open the Finder, +navigate to the directory, +and type "James" into the search bar. +Unfortunately that gives too many results: +all the files with the minutes for a meeting where I said something.

+

The next thing to do is double click some text files, +which would open them in Text Edit program, +and skim them. +You might get lucky!

+

You know that I the meeting was in 2019, +so you can try and filter for files modified in that year. +Unfortunately the files have been updated at different times, +so the file dates aren't useful.

+

Now if each file was named with a consistent pattern, +including the meeting date, +then it would be simple to filter for files with "2019" in the name. +This isn't automation, +but it's the first step in the right direction. +Consistent file names are one way to make inputs the same +so that you can process them in the same way.

+

Let's say it works: +you filter for files from 2019 with "James" in them, +skim a few, +and find a note where I recommended using Pandoc +to convert between document formats. +Mission accomplished!

+
2. Notes
+

Next week you need to do something very similar: +Becky mentioned a website where you can find an important dataset. +It's basically the same problem with different inputs. +If you remember exactly what you did last time, +then you can get the job done quickly. +As the job gets more complicated and more distant in time, +and as you find yourself doing similar tasks more often, +it's nice to have notes about what you did and how you did it.

+

If I'm using a graphical user interface (GUI) +then for each step I'll note +the program I used, +and the menu item or button I clicked, +e.g. "Preferences > General > Font Size", +or "Search" or "Run". +If I'm using a command-line interface (CLI) +then I'll copy-paste the commands into my notes.

+

I often keep informal notes like this in a text file +in the relevant directory. +I name the file "notes.txt". +A "README" file is similar. +It's used to describe the contents of a directory, +often saying which files are which, +or what the column headers for a given table mean.

+

Often the task is more complicated +and requires one or more pieces of software that I don't use every day. +If there's relevant documentation, +I'll put a link to it in my notes, +and then a short summmary of exactly what I did.

+

In this example +I look in the directory of minutes and see my "notes.txt" file. +I read that and remember how I filtered on "2019" and searched for "James". +This time I filter on "2020" and search for "Becky", +and I find the website for the dataset quickly enough.

+

As a rule of thumb, +it might take you three times longer +to find your notes file, +write down the steps you took, +and provide a short description, +than it would to just do the job without taking notes. +When you're just taking notes for yourself, +this often feels like a waste of time +(you'll remember, right?!), +and sometimes it is a bit of a waste. +If you end up using your notes +to help with similar tasks in the future, +then this will likely be time well spent.

+

As a rule of thumb, +it might take three times longer +to write notes for a broader audience +than notes for just yourself. +This is because you need to take into account +the background knowledge of your reader, +including her skills and assumptions and context, +and especially the possible misunderstandings +that you can try to avoid with careful writing. +I often start with notes for just myself +and then expand them for a wider audience only when needed.

+
3. Checklist
+

When tasks get more complicated +or more important +then informal notes are not enough. +The next step on the spectrum of automation is the humble checklist.

+

The most basic checklists are for making sure that each item has been handled. +Often the order isn't important, +but lists are naturally ordered from top to bottom, +and in many cases that order is useful. +For example, +my mother lays out her shopping lists +in the order of the aisles in her local grocery store, +making it easier to get each item and check it off +without skipping around and perhaps having to backtrack.

+

I think of a checklist as a basic form of automation. +It's like a recipe. +It should lay out the things you need to start, +then proceed through the required steps +in enough detail that you can reproduce them. +In some sense, +by using the checklist you are becoming the "machine". +You are executing an algorithm +that should take you from the expected inputs to the expected output.

+

Humble as the checklist is, +there's a reason that astronauts, pilots, and surgical teams +live by their checklists. +Even when the stakes are not so high, +it's often nice to "put your brain on autopilot" +and just work the checklist +without having to remember and reconsider the details of each step.

+

A good checklist is more focused than a file full of notes. +A checklist has a goal at the end. +It has specific starting conditions. +The steps have been carefully considered, +so that they have the proper sequence, +and none are missing. +Perhaps most importantly, +a checklist helps you break a complex task down +into simple parts. +If one of the parts is still too complex, +then break it down again +into a nested checklist +(really a sort of tree structure).

+

Checklists sometimes include another key element of automation: conditionals. +A shopping list might say +"if there's a sale on crackers, then buy three boxes". +If-then conditions let our automated systems adapt to circumstances. +The "then" part is just another step, +but the "if" part is a little different. +It's a test to determine whether a condition holds. +We almost always want the result of the test +to be a simple True or False. +Given a bunch of inputs, +some of which pass the test and some of which fail it, +we can think of the test as determining some way in which +all the things that pass are the same +and all the things that fail are the same. +Programmers will also be familiar with more complex conditionals +such as if-then-else, if-elseif-else, and "case", +which divide process execution across multiple "branches".

+

As a rule of thumb, +turning notes into a checklist will likely take +at least three times as long +as simply writing the notes. +If the checklist is for a wider audience, +expect it to take three times as long to write, +for the same reasons mentioned above for notes.

+

If a task is simple +and I can hold all the steps in my head, +and I can finish it in one sitting without distractions, +then I won't bother with a checklist. +But more and more I find myself writing myself a checklist +before I begin any non-trivial tasks. +I use bullet points in my favourite text editor, +or sometimes the Notes app on my iPhone. +I lay out the steps in the expected order, +and I check them off as I go. +Sometimes I start making the checklist days before I need it, +so I have lots of time to think about it and improve it. +If there's a job that I'm worried about, +breaking it down into smaller pieces +usually helps to make the job feel more manageable. +Actually, I try to start every workday +by skimming my (long) To Do list, +picking the most important tasks, +and making a checklist for what I want to get done +by quitting time.

+
3. Checkscript
+

"Checkscript" is a word that I think I made up, +based on insights from a couple of sources, +primarily this blog post on +"Do-nothing scripting: the key to gradual automation" +This is where "real" automation kicks in, +writing "real" code and stuff, +but hopefully you'll see that it's just one more step +on the spectrum of automation that I'm describing.

+

The notes and checklists we've been discussing +are just text in your favourite text editor. +A checkscript is a program. +It can be written in whatever programming language you prefer. +I'll give examples in Posix Shell, +but that blog post uses Python, +and it really doesn't matter. +You start with a checklist +(in your mind at least). +The first version of your program +should just walk you through your checklist. +The program should walk you through each step of your checklist, +one by one. +That's it.

+

Here's a checkscript based on the example above. +It just prints the first step (echo), +waits for you to press any key (read), +then prints the next step, and so on.

+
###!/bin/sh
+
+echo "1. Use Finder to filter for files with '2019' in the name"
+read -p "Press enter to continue"
+
+echo "2. Use finder to search file content for 'James'"
+read -p "Press enter to continue"
+
+echo "3. Open files in Text Edit and search for 'James'"
+read -p "Press enter to continue"
+
+echo "Done!"
+
+

So far this is just a more annoying way to use a checklist. +The magic happens once you break the steps down into small enough pieces +and realize that you know how to tell the computer +to do some of the steps +instead of doing them all yourself.

+

For example, +you know that the command-line tool grep +is used for searching the contents of files, +and that you can use "fileglob"s to select +just the files that you want to search, +and that you can send the output of grep +to another file to read in your favourite text editor. +Now you know how to automate the first two steps. +The computer can just do that work without waiting for you:

+
###!/bin/sh
+
+grep "James" *2019* > search_results.txt
+
+echo "1. Open 'search_results.txt' in Text Edit and search for 'James'"
+read -p "Press enter to continue"
+
+echo "Done!"
+
+

Before we were using the Finder, +and it is possible to write code to tell the Finder +to filter and seach for files. +The key advantage of grep here +is that we send the search results to another file +that we can read now or save for later.

+

This is also a good time to mention the advantage of text files +over word processor files. +If the minutes were stored in Word files, for example, +then Finder could probably search them +and you could use Word to read them, +but you wouldn't be able to use grep +or easily output the results to another file. +Unix tools such as grep treat all text files the same, +whether they're source code or meeting minutes, +which means that these tools work pretty much the same on any text file. +By keeping your data in Word +you restrict yourself to a much smaller set of tools +and make it harder to automate you work +with simple scripts like this one.

+

Even if you can't get the computer +to run any of the steps for you automatically, +a checkscript can still be useful +by using variables instead of repeating yourself:

+
###!/bin/sh
+
+FILE_PATTERN="*2019*"
+FILE_CONTENTS="James"
+
+echo "1. Use Finder to filter for files with '${FILE_PATTERN}' in the name"
+read -p "Press enter to continue"
+
+echo "2. Use finder to search file content for '${FILE_CONTENTS}'"
+read -p "Press enter to continue"
+
+echo "3. Open files in Text Edit and search for '${FILE_CONTENTS}'"
+read -p "Press enter to continue"
+
+echo "Done!"
+
+

Now if I want to search for "Becky" +I can just change the FILE_CONTENTS variable in one place. +I find this especially useful for dates and version numbers.

+

This is pretty simple for a checkscript, +with very few steps. +A more realistic example would be +if there were many directories containing the minutes of many meetings, +maybe in different file formats +and with different naming conventions. +In order to be sure that we're searching all of them +we might need a longer checkscript.

+

Writing and using a checkscript instead of a checklist +will likely take (you guessed it) about three times as long. +But the magic of the checkscript +is in the title of the blog post I mentioned: +"gradual automation". +Once you have a checkscript, +you can run through it all manually, +but you can also automate bits a pieces of the task, +saving yourself time and effort next time.

+
5. Script
+

A "script" is a kind of program that's easy to edit and run. +There are technical distinctions to be made +between "compiled" programs and "interpreted" programs, +but they turn out to be more complicated and less helpful than they seem at first. +Technically, a checkscript is just a script +that waits for you to do the hard parts. +In this section I want to talk about "fully automated" or "standalone" scripts +that you just provide some input and execute.

+

Most useful programs are useful +because they call other programs (in the right ways). +I like shell scripts because they're basically just +commands that are copied and pasted +from work I was doing on the command-line. +It's really easy to call other programs.

+

To continue our example, +say that our minutes were stored in Word files. +There are Python libraries for this, +such as python-docx. +You can write a little script using this library +that works like grep +to search for specified text in selected files, +and output the results to a search results file.

+

As you add more and more functionality to a script +it can become unwieldy. +Scripts work best when they have a simple "flow" +from beginning to end. +They may have some conditionals and some loops, +but once you start seeing nested conditionals and loops, +then your script is doing too much. +There are two main options to consider:

+
    +
  1. break your script into smaller, simpler scripts
  2. +
  3. build a specialized tool: the next step on the spectrum of automation
  4. +
+

The key difference between a checkscript and a "standalone" script +is handling problems. +A checkscript relies on you to supervise it. +A standalone script is expected to work properly without supervision. +So the script has to be designed to handle +a wider range of inputs +and fail gracefully when it gets into trouble. +This is a typical case of the "80% rule": +the last 20% takes 80% of the time. +As a rule of thumb, +expect it to take three times as long +to write a script that can run unsupervised +than it takes you to write a checkscript +that does "almost" the same thing.

+
6. Specialized Tool
+

When your script needs nested conditionals and loops, +then it's probably time to reach for a programming language +that's designed to write code "in the large". +Some languages such as Python can make a pretty smooth transition +from a script in a single file +to a set of files in a module, +working together nicely. +You might also choose another language +that can provide better performance or efficiency.

+

It's not just the size and the logical complexity of your script, +consider its purpose. +The specialized tools that I have in mind +have a clear purpose that helps guide their design. +This also makes them easier to reuse +across multiple projects.

+

I often divide my specialized tools into two parts: +a library and a command-line interface. +The library can be used in other programs, +and contains the most distinctive and important functionality. +But the command-line interface is essential, +because it lets me use my specialized tool +in the shell and in scripts, +so I can build more automation on top of it.

+

Writing a tool in Java or C++ or Rust +usually takes longer than a script in shell or Python +because there are more details to worry about +such as types and efficient memory management. +In return you usually get more reliability and efficiency. +But as a rule of thumb, +expect it to take three times as long +to write a specialized tool +than it would to "just" write the script. +On the other hand, +if you already have a script that does most of what you want, +and you're already familiar with the target you are moving to, +then it can be fairly straightforward to translate +from the script to the specialized tool. +That's why it's often most efficient +to write a prototype script first, +do lots of quick experiments to explore the design space, +and when you're happy with the design +then start on the "production" version.

+
7. Workflow
+

The last step in the spectrum of automation +is to bring together all your scripts +into a single "workflow". +My favourite tool for this is the venerable +Make. +A Makefile is essentially a bunch of small scripts +with their input and output files carefully specified. +When you ask Make to build a given output file, +it will look at the whole tree of scripts, +figure out which input files are required to build your requested output file, +then which files are required to build those files, +and so on until it has determined a sequence of steps. +Make is also smart enough to check whether some of the dependencies +are already up-to-date, +and can skip those steps. +Looking at a Makefile you can see everything +broken down into simple steps +and organized into a tree, +through which you can trace various paths. +You can make changes at any point, +and run Make again to update your project.

+

I've done this all so many times +that now I often start with a Makefile in an empty directory +and build from there. +I try experiments on the command line. +I make notes. +I break the larger task into parts with a checklist. +I automate the easy parts first, +and leave some parts as manual steps with instructions. +I write little scripts in the Makefile. +I write larger scripts in the src/ directory. +If these get too big or complex, +I start thinking about building a specialized tool. +(And of course, I store everything in version control.) +It takes more time at the beginning, +but I think that I usually save time later, +because I have a nice place to put everything from the start.

+

In other words, I start thinking about automation +at the very beginning of the project, +assuming from the start that it will grow, +and that I'll need to go back and change things. +With a mindset for automation, +from the start I'm thinking about how +the inputs I care about are the same and different, +which similarities I can use for my tests and code, +and which differences are important or unimportant.

+

Conclusion

+

In the end, my project isn't ever completely automated. +It doesn't "act of itself". +But by making everything clear and explicit +I'm telling the computer how to do a lot of the work +and other humans (or just my future self) +how to do the rest of it. +The final secret of automation, +especially when it comes to software and data, +is communication: +expressing things clearly for humans and machines +so they can see and do exactly what you did.

+

Scientific Computing: An Overview

+

By: James Overton

+

By "scientific computing" we mean +using computers to help with key aspect of science +such as data collection, cleaning, interpretation, analysis, and visualization. +Some people use "scientific computing" to mean something more specific, +focusing on computational modelling or computationally intensive analysis. +We'll be focusing on more general and day-to-day topics: +how can a scientist make best use of a computer +to do their work well?

+

These three things apply to lots of fields, +but are particularly important to scientists:

+
    +
  • reliability
  • +
  • reproducibility
  • +
  • communication
  • +
+

It should be no surprise that +automation can help with all of these. +When working properly, computers make fewer mistakes than people, +and the mistakes they do make are more predictable. +If we're careful, our software systems can be easily reproduced, +which means that an entire data analysis pipeline can be copied +and run by another lab to confirm the results. +And scientific publications are increasingly including data and code +as part of the review and final publication process. +Clear code is one of the best ways to communicate detailed steps.

+

Automation is critical to scientific instruments and experiments, +but we'll focus on the data processing and analysis side: +after the data has been generated, +how should you deal with it.

+

Basic information management is always important:

+
    +
  • community standard file formats
  • +
  • consistent file naming
  • +
  • documentation, READMEs
  • +
  • backups
  • +
  • version control
  • +
+

More advanced data management is part of this course:

+
    +
  • consistent use of versioned
  • +
  • software
  • +
  • reference data
  • +
  • terminology
  • +
  • controlled vocabularies
  • +
  • data dictionaries
  • +
  • ontologies
  • +
+

Some simple rules of thumb can help reduce complexity and confusion:

+
    +
  • make space
  • +
  • firm foundations
  • +
  • one-way data flow
  • +
  • plan for change
  • +
  • test from the start
  • +
  • documentation is also for you
  • +
+

Make Space

+

When starting a new project, +make a nice clean new space for it. +Try for that "new project smell".

+
    +
  • I always create a new directory on my computer.
  • +
  • I almost always create a new GitHub repository.
  • +
  • I usually create a README and a Makefile, right away.
  • +
+

It's not always clear when a project is really "new" +or just a new phase of an old project. +But try to clear some space to make a fresh start.

+

Firm Foundations

+

A lot of data analysis starts with a reference data set. +It might be a genome or a proteome. +It might be a corpus. +It might be a set of papers or data from those papers.

+

Start by finding that data +and selecting a particular version of it. +Write that down clearly in your notes. +If possible, include a unique identifier such as a (persistent) URL or DOI. +If that's not possible, write down the steps you took. +If the data isn't too big, +keep a copy of it in your fresh new project directory. +If the data is a bit too big, +keep a compressed copy in a zip or gz file. +A lot of software is perfectly happy to read directly from compressed files, +and you can compress or uncompress data using piped commands in your shell or script. +If the data is really too big, +then be extra careful to keep notes +on exactly where you can find it again. +Consider storing just the +hashes +of the big files, +so you can confirm that they have exactly the same contents.

+

If you know from the start +that you will need to compare your results with someone else's, +make sure that you're using the same reference data +that they are. +This may require a conversation, +but trust me that it's better to have this conversation now than later.

+

One-Way Data Flow

+

It's much easier to think about processes +that flow in one direction. +Branches are a little trickier, but usually fine. +The real trouble comes with loops. +Once a process loops back on itself +it's much more difficult to reason about what's happening. +Loops are powerful, +but with great power comes great responsibility. +Keep the systems you design +as simple as possible +(but no simpler).

+

In practical terms:

+
    +
  • Try not to read then write to the same file. + If you have to, try to append rather than overwrite. + This is one reason why I prefer tables on disk to databases.
  • +
  • Don't hesitate to write intermediate files. + These are very useful for testing and debugging. + When you're "finished" you can comment out these steps.
  • +
+

Plan for Change

+

It's very tempting: +you could automate this step, +or you could just do it manually. +It might take three times as long to automate it, right? +So you can save yourself some precious time +by just opening Excel and "fixing" things by hand.

+

Sometimes that bet will pay off, +but I lose that bet most of the time. +I tend to realize my mistake only at the last minute. +The submission deadline is tomorrow +but the core lab "fixed" something +and they have a new version of the dataset +that we need to use for the figures. +Now I really don't have time to automate, +so I'm up late clicking through Excel again +and hoping that I remembered to redo +all the changes that I made last time.

+

Automating the process would have actually saved me time, +but more importantly it would have avoided a lot of stress. +By now I should know that the dataset +will almost certainly be revised at the last minute. +If I have the automation set up, +then I just update the data, +run the automation again, +and quickly check the results.

+

Test from the Start

+

Tests are another thing that take time to implement.

+

One of the key benefits to tests is (again) communication. +When assessing or trying out some new piece of software +I often look to the test files to see examples +of how the code is really used, +and the shape of the inputs and outputs.

+

There's a spectrum of tests +that apply to different parts of your system:

+
    +
  • unit tests: individual functions and methods
  • +
  • regression tests: ensure that fixed bugs do not reappear
  • +
  • integration tests: end-to-end functionality
  • +
  • performance tests: system speed and resource usage
  • +
  • acceptance tests: whether the overall system meets its design goals
  • +
+

Tests should be automated. +The test suite should either pass or fail, +and if it fails something needs to be fixed +before any more development is done. +The automated test suite should run +before each new version is committed to version control, +and ideally more often during development.

+

Tests come with costs:

+
    +
  • development cost of writing the tests
  • +
  • time and resources spent running the tests
  • +
  • maintenance costs of updating the tests
  • +
+

The first is obvious but the other two often more important. +A slow test suite is annoying to run, +and so it won't get run. +A test suite that's hard to update won't get updated, +and then failures will be ignored, +which defeats the entire purpose.

+

Documentation is also for You

+

I tend to forget how bad a memory I have. +In the moment, when I'm writing brilliant code +nothing could be more obvious than the perfect solution +that is pouring forth from my mind all over my keyboard. +But when I come back to that code weeks, months, or years later, +I often wonder what the heck I was thinking.

+

We think about the documentation we write as being for other people, +but for a lot of small projects +it's really for your future self. +Be kind to your future self. +They may be even more tired, even more stressed than you are today.

+

There's a range of different forms of documentation, +worth a whole discussion of its own. +I like this four-way distinction:

+
    +
  • tutorials: getting started, basic concepts, an overview
  • +
  • how-to guides: how to do common tasks
  • +
  • explanation: why does it work this way?
  • +
  • reference: looking up the details
  • +
+

You don't need all of these for your small project, +but consider a brief explanation of why it works the way it does +(aimed at a colleague who knows your field well), +and some brief notes on how-to do the stuff this project is for. +These could both go in the README of a small project.

+

Additional materials and resources

+ +

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/chatgpt-ontology-curation/index.html b/lesson/chatgpt-ontology-curation/index.html new file mode 100644 index 000000000..c8aa88c15 --- /dev/null +++ b/lesson/chatgpt-ontology-curation/index.html @@ -0,0 +1,4499 @@ + + + + + + + + + + + + + + + + + + + + + + + + Leveraging ChatGPT for ontology curation - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Leveraging ChatGPT for ontology curation

+ +

Lesson: Leveraging ChatGPT for ontology curation

+

+

In this lesson, we will take a look at the generative capabilities of LLM's in general and ChatGPT in particular, to try and get a beginning sense on how to leverage it to enhance ontology curation workflows.

+

The goal of the lesson is to give a mental model of what ChatGPT and LLMs are used for (ignoring details on how they work), contextualise the public discourse a bit, and then move on to looking at some concrete examples at its potential for improving curation activties.

+

To achieve this we engaged in a dialog with ChatGPT to generate almost the entire content of the lesson. The lesson authors provide the general "structure" of the lesson, provided to ChatGPT as a series of prompts, and get ChatGPT to provide the content. This content is obviously not as good as it could have been if it was created by a human with infinite resources, but we hope it does get the following points across:

+
    +
  1. You can get 80% of the way in 20% (or less, in my case) of the time (it took me 90 minutes to write the lesson, while the same scope of lesson would have taken me 8-10 hours without ChatGPT
  2. +
  3. Beware of hallucinations in particular
  4. +
  5. ChatGPT is not only good for generating natural language text, but also structured content
  6. +
  7. Using ChatGPT is fun, which drastically reduces the mental barrier of using it in a professional context
  8. +
+

We believe that from a user perspective, prompt engineering will be the most important skill that need to be learned when dealing with generative AI. Not just ChatGPT (which generates text), but also tools that generate images from text such as DALL-E or Midjourney, so this is what we will focus on. In the long term, applications like Monarchs OntoGPT will do some of the heavy lifting around writing perfect prompts, but it seems pretty clear that some basic knowledge of prompt engineering will be useful, or even necessary, for a long time to come.

+

For a reference of effective ChatGPT prompts for ontology development see here.

+

Note: +- ChatGPT is rapidly evolving. The moment we add an answer, it will probably be outdated. For example, I created the first version of this tutorial on April 17th 2023. On May 27th, almost all answers ChatGPT is giving are completely different from the ones given in the first round. This is also important to remember when building applications around ChatGPT. +- Note: https://open-assistant.io/chat is free and can be used to follow this tutorial instead of ChatGPT.

+

Contributors

+ +

Skills you will learn in this lesson

+
    +
  • Write basic prompts for ChatGPT and similar LLM-based chatbots
  • +
  • Understand the basic principles of text in -> text out of LLM-based programs
  • +
  • Understand practically the risks of hallucination
  • +
  • Motivate yourself to explore the question: "How, if at all, can I use this technology to become more efficient/effective in my work? (there is no general answer to that yet!)"
  • +
+

Conventions

+

Prompts

+
+

+

We use quote syntax with the prompt icon to indicate a concrete prompt for ChatGPT

+
+

Comments

+
+

+

We use quote syntax with the comment icon to indicate a comment by the author

+
+

Replies by ChatGPT

+

Replies are given in normal text form. All text after the table of contents, apart from comments, prompts and the section on executable workflows are generated by ChatGPT.

+

Prequisites

+ +

Preparation

+
    +
  • If you have a tiny bit of a technical inclination, we recommend the ca. 60 minute OpenAI/DeepLearning.ai course. It has zero fluff, and is very focussed on some of the core use cases of using ChatGPT as an API.
  • +
  • We recommend to spend 30-60 minutes studying the excellent Learn Prompting, a Free, Open Source Course on Communicating with Artificial Intelligence.
  • +
  • Take a look at this nice introduction to prompt engineering by anthropic
  • +
  • If you want to replicate the contents of this lession, you have to make an account at https://chat.openai.com/
  • +
+

Lesson

+ +

+
+

+

None of the text in this section is generated with ChatGPT.

+
+

In essence, an LLM takes as an input a piece of text, and returns text as an output. A "prompt" is a +piece of text that is written by an agent. This can be a human, or a software tool, or a combination of the two. In most cases, a human agent will pass the prompt to a specialised tool that pre-processes the prompt in certain ways (like translating it, adding examples, structuring it and more) before passing it to the large language model (LLM). For example, a when a chatbot tool like ChatGPT receives a prompt, it processes the prompt in certain ways, than leveraging the trained LLM to generate the text (which is probably postprocessed) and passed back to the human agent.

+

+

There are an infinite number of possible tools you can imagine following this rough paradigm. Monarch's own ontogpt, for example, receives the prompt from the human agent, then augments the prompt in a certain way (by adding additional instructions to it) before passing the augmentd prompt to an LLM like gpt3.5 (or lately even gpt4), which generates an instance of a curation schema. This is a great example for an LLM generating not only human readable text, but structured text. Another example for this is to ask an LLM to generate, for example, a SPARQL query to obtain publications from Wikidata.

+

Given the wide range of applications LLMs can serve, it is important to get a mental model of how these can be leveraged to improve our ontology and data curation workflows. It makes sense for our domain (semantic engineering and curation) to distinguish four basic models of interacting with LLMs (which are technically not much different):

+
    +
  1. Using LLM-based tools as advisors (endpoint humans)
  2. +
  3. Using LLM-based tools as assistants (endpoint humans)
  4. +
  5. Using LLM-based tools to extract information for automated processing (endpoint application)
  6. +
+

Using LLMs as advisors has a huge number of creative applications. An advisor in this sense is a machine that "knows a lot" and helps you with your own understanding of the world. +Large language models trained on a wide range of inputs are particularly interesting in this regard because of the immense breadth of their knowledge (rather than depth), which is something that can be difficult to get from human advisors. +For example, the authors of this article have used ChatGPT and other LLM-based chatbots to help with understanding different domains, and how they might relate to knowledge management and ontologies in order to give specific career advice or to prepare for scientific panel discussions. For ontology curators, LLMs can be used to generate arguments for certain classification decisions (like a disease classification) or even suggest a mapping.

+

Using LLMs as assistants is probably the most important use of LLM-based tools at the moment, which includes aspects like summarising texts, generating sometimes boring, yet important, creative work (documentation pages, tutorials, blog-posts etc). It is probably not a good idea, at least as of May 2023, to defer to LLM-based tools to classify a term in an ontology, for example because of its tendency to hallucinate. Despite many arguments to the contrary LLMs are not databases. They are programs to generate text.

+

Using LLMs to extract information, similar to "LLMs as assistants", is, similar to the above, also about automating certain tasks, but the endpoint is not a software program rather than a human. It is the most important basic model of LLMs for us curators and software engineers to understand, because it is, in essence, the one that threatens our current work-life the most: What happens if LLMs become better at extracting structured knowledge from papers (or similarly generate software codes for user stories) than us? It is important that this thought is not ignored out of fear, but approached with a realistic and positive mindset.

+

Training. Apart from the fact that LLMs take text as an input and return text as an output, it is important to be aware how they are trained.

+

+

The basic technique for trainig is called "next token prediction". In essence, tokens in the text +such as words or phrases are masked out by the training function and the LLM is trained to correctly predict these masked out phrases given the previous words in the sentence (or paragraph). +The corpus used for this training ranges from specialised databases all the way to a large chunk of the publicly accessible textual information on the internet. +Again, it is important to realise that text does not have to be composed of natural language sentences - learning how to generate programming code and structured data works much the same way.

+

In the following, we will ask ChatGPT or Open Assistant a few questions that are relevant to this lesson, which allows us to make certain points. The main point is that a lot of the work for preparing a useful tutorial can be deferred to ChatGPT is an assistant! +Many of the questions explore how these tools could relate to us biocurators and semantic engineers in particular, but non of this should be viewed as written in stone. +The most important take away from this lesson is that you should play with these tools yourself!

+
+

+

Can you explain in 3 simple sentences what an LLM is and how it works? [Note this question was asked to [Open Assistant](https://open-assistant.io/chat/) instead of ChatGPT.]

+
+

An LLM (Langauge Modell) is a AI model that can be trained to perform specific tasks such as speech recognition, text generation or machine translation. It's called a "model" because it is being trained on large sets of data to predict the next step based on previously learned relationships between inputs and outputs. +LLMs are designed to recognize patterns in human language by processing input data through multiple layers of artificial neural networks that simulate the way neurons communicate in the brain. The training process involves feeding vast amounts of text into the model so that it can learn to identify underlying structures within the language itself. This allows the model to make predictions about likely next words or phrases given previous context. By continually adjusting its internal weights and biases using gradient descent techniques, the LLM becomes increasingly proficient at generating coherent text based on statistical probabilities derived from its knowledge of the language.

+
+

+

What is interesting here: the LLM actually made a typo, or rather, three: Langauge Modell - missing the first L (large), Langauge instead of Language and Modell with double L (which is German). Note that both words are spellied correctly later in the text.

+

+

What are the 5 core concepts relevant for end-users to understand LLMs?

+
+
    +
  1. Language Understanding and Generation: LLMs can understand human language inputs and generate text-based responses, allowing for interactive conversations.
  2. +
  3. Contextual Understanding: LLMs consider the context of the conversation to provide relevant and coherent responses, taking into account previous messages or prompts.
  4. +
  5. Pretraining: LLMs learn from vast amounts of text data during pretraining, which helps them acquire a general understanding of language, grammar, and context.
  6. +
  7. Limitations and Potential Bias: LLMs may provide incorrect or biased information as they generate responses based on patterns learned from training data. Users should be mindful of these limitations and critically evaluate the information provided.
  8. +
  9. Responsible Use and Privacy: Users should use LLMs responsibly, following platform guidelines and being cautious when sharing personal or sensitive information during interactions. Data privacy should be considered while engaging with LLMs.
  10. +
+

+

What is prompt engineering?

+
+

+

Describe the idea of prompt engineering in simple terms for an audience of domain experts

+
+

Prompt engineering is the process of carefully crafting input queries, or "prompts," to guide the behavior of a large language model (LLM) like GPT-4, ensuring that it provides useful, relevant, and accurate responses. As domain experts, you understand the importance of asking the right questions to extract valuable information. Similarly, with prompt engineering, the goal is to design questions or statements in a way that maximizes the LLM's ability to generate meaningful, high-quality output.

+

Essentially, prompt engineering serves as a "communication bridge" between humans and the LLM, allowing the model to better understand the intent behind the query and generate the desired response. This can involve refining the wording, providing context, or specifying the format of the desired answer, among other techniques.

+

By focusing on the art and science of prompt engineering, researchers and practitioners can better harness the potential of LLMs and overcome some of the challenges related to biases, incomplete knowledge, and misleading responses.

+
+

Providing an effective prompt to ChatGPT is an art form, and as resources like learnprompting.org testify, one that requires cultivation and care. The better you become at writing prompts, the more value you will draw from ChatGPT for your daily ontology curation tasks. How effective our prompts are depends on the exact language models used in ChatGPT (at the moment 3.5 or 4), which means that this lesson will keep evolving.

+
+

What are some basic tips for writing good prompts for ChatGPT?

+
+

In the excellent 60 minute OpenAI, Deeplearning.ai course on Prompt Engineering, we learn that we should be (1) writing clear an specific instructions and (2) give ChatGPT "time to think".

+
+
    +
  • Talking to a LLM is like talking to a teenager
  • +
  • Give clear and specific instructions.
  • +
  • Use different words to get better results the second time.
  • +
  • Give the LLM time to think.
  • +
+

+

Applications of ChatGPT for ontology development

+
+

+

What are some potential applications of ChatGPT for ontology development?

+
+

ChatGPT can be a valuable tool for ontology development in various ways. Some potential applications include:

+
    +
  1. Concept identification: ChatGPT can help identify and extract relevant concepts from large volumes of unstructured text, providing a list of entities, relationships, and attributes that can be included in an ontology.
  2. +
  3. Semantic relation extraction: ChatGPT can be employed to detect semantic relationships between concepts, such as "is-a" or "part-of" relations, facilitating the construction of the ontology's hierarchical structure.
  4. +
  5. Ontology validation: ChatGPT can assist in validating and refining the structure of an ontology by providing human-like feedback on its consistency and coherence, suggesting improvements, or identifying potential gaps or redundancies.
  6. +
  7. Automated ontology population: ChatGPT can be used to generate instances of entities and relationships based on examples or descriptions, helping to populate the ontology with relevant data.
  8. +
  9. Ontology alignment and merging: ChatGPT can help identify similarities and differences between different ontologies, supporting the process of ontology alignment and merging, which is essential when integrating information from diverse sources.
  10. +
  11. Natural language interfaces: ChatGPT can be utilized to develop natural language interfaces for interacting with ontologies, allowing users to query and explore the ontology using conversational language rather than complex formal queries.
  12. +
  13. Ontology documentation: ChatGPT can assist in generating human-readable documentation for ontologies, including explanations of concepts, relationships, and properties, making it easier for users to understand and work with the ontology.
  14. +
  15. Ontology learning: ChatGPT can be trained to learn from examples or other sources of knowledge, supporting the semi-automatic or automatic creation of ontologies based on the input data.
  16. +
+

By leveraging the capabilities of ChatGPT, ontology developers can streamline the development process, enhance the quality of their ontologies, and facilitate their adoption and use across various domains.

+

+

How can we, concretely, enhance the ontology curation process?

+
+

+

A normal workflow of ontology curation is this:

+
    +
  1. A concept is required by a biocurator to describe a piece of data, for example, a disease concept, or an anatomical entity.
  2. +
  3. The biocurator requests the new concept (or term) from the ontology curator, providing a label and perhaps a scientific reference
  4. +
  5. The ontology curator then adds that concept to the ontology using a tool like Protege, adding a human-readable definition, synonyms and provenance metadata. Most importantly, they define the concept logically, often using a formalism such as OWL specifying super-classes, and other logical relationships
  6. +
  7. Lastly, the ontology curator runs a number of quality checks to ensure that the added concepts is logically coherent (e.g. the reasoner places it in the intended part of of the class hierarchy).
  8. +
+

How can ChatGPT be used concretely to help with that process?

+
+

ChatGPT can be incorporated into various stages of the ontology curation workflow to assist biocurators and ontology curators in streamlining and improving the process. Here's how ChatGPT can be used concretely at each step:

+
    +
  1. Concept identification: ChatGPT can help the biocurator identify relevant concepts based on the data they are working with. By providing information or descriptions related to the data, the biocurator can receive a list of potential concepts or terms, including disease concepts or anatomical entities, that might be suitable for the ontology.
  2. +
  3. Term request and communication: ChatGPT can facilitate communication between the biocurator and the ontology curator. It can be used to draft the term request, including the label, scientific reference, and any other relevant information, ensuring that the request is clear and complete.
  4. +
  5. Concept addition and metadata generation: ChatGPT can assist ontology curators in generating human-readable definitions, synonyms, and provenance metadata for the new concept. By providing the initial label and scientific reference, ChatGPT can produce candidate definitions, suggest synonyms, and even help draft metadata descriptions. Additionally, it can provide suggestions for logical relationships, such as super-classes and other connections, using its understanding of the formalism, like OWL.
  6. +
  7. Quality checks and coherence: While ChatGPT may not directly run quality checks like a reasoner, it can help ontology curators verify the coherence of the added concepts by providing human-like feedback on the logical relationships and overall structure. It can suggest potential issues, such as redundancies or inconsistencies, that the curator may want to address to ensure that the concept is logically coherent and correctly placed in the class hierarchy.
  8. +
+

By integrating ChatGPT into the ontology curation workflow, biocurators and ontology curators can benefit from its natural language understanding and generation capabilities, making the process more efficient and accurate. However, it is essential to keep in mind that ChatGPT should be used as a complementary tool and not as a replacement for human expertise or specialized software designed for ontology development and curation.

+

+

Using ChatGPT for ontology mappings

+
+

+

What about ontology mappings?

+
+

LLMs like ChatGPT can be used to identify equivalent or similar concepts across different ontologies by analyzing concept labels, definitions, and other metadata. They can understand and process natural language descriptions and compare them to find potential matches or alignments between concepts. Specifically, LLMs can:

+
    +
  • Perform text similarity analysis: By comparing the textual descriptions of concepts, LLMs can calculate similarity scores, identifying closely related concepts across different ontologies.
  • +
  • Understand contextual relationships: LLMs can identify and consider the context in which concepts are used, making it easier to match concepts that have similar meanings or roles within their respective ontologies.
  • +
  • Leverage synonyms and alternative terms: LLMs can use synonyms or alternative terms provided in the ontology metadata to improve concept matching, ensuring that equivalent concepts with different labels can still be identified.
  • +
  • Exploit structured knowledge: LLMs can be trained to understand and work with formalisms like OWL and RDF, which can help them identify matching concepts based on the structured information within ontologies.
  • +
+

By leveraging these capabilities, LLMs can assist ontology curators in the challenging task of concept matching, ultimately enhancing the ontology mapping and alignment process.

+
+

+

Can you provide an example of mapping a concept from the Human Phenotype Ontology to the Mammalian Phenotype Ontology?

+
+

Let's consider the concept "Abnormality of the ear" in HPO.

+
    +
  1. HPO Concept:
  2. +
  3. ID: HP:0000598
  4. +
  5. Label: Abnormality of the ear
  6. +
  7. Definition: A structural or functional anomaly of the ear.
  8. +
+

Our goal is to find a matching or similar concept in the Mammalian Phenotype Ontology (MPO).

+
    +
  1. After analyzing the MPO, we find the following concept:
  2. +
  3. ID: MP:0002161
  4. +
  5. Label: abnormal ear morphology
  6. +
  7. Definition: any structural anomaly of the external or middle ear
  8. +
+

In this case, both concepts describe abnormalities of the ear in their respective domains (human and mammalian). The labels and definitions are similar, indicating that these concepts might be considered equivalent or closely related.

+

Thus, we can propose the following mapping:

+
    +
  • HPO: HP:0000598 (Abnormality of the ear) <=> MPO: MP:0002161 (abnormal ear morphology)
  • +
+
+

COMMENT. The 27th May version of ChatGPT is giving a different answer:

+
+

Sure, let's consider an example for this mapping:

+

Human Phenotype Ontology (HPO) is designed to classify and annotate the phenotypic abnormalities encountered in human disease. Each term in HPO describes a specific phenotypic abnormality, such as 'HP:0004322 - Short stature' which describes an abnormality of body height that is less than -2 standard deviations compared to the appropriate reference population.

+

Mammalian Phenotype Ontology (MPO), on the other hand, is used in the annotation of data from mammalian phenotyping experiments, typically in model organisms like mice. Its equivalent term for short stature might be 'MP:0001265 - decreased body size' which describes a mammal with an overall smaller body size.

+

So, in this case, 'HP:0004322 - Short stature' in HPO could be mapped to 'MP:0001265 - decreased body size' in MPO.

+

Please note that this is a simplified example and the actual mapping process could be more complex, due to the nuanced differences between human and mammalian phenotypes and the structure of these ontologies. For actual mappings, it is essential to ensure the descriptions and definitions align appropriately, and the context of use is correctly considered.

+

Also, there may not always be a one-to-one correspondence between the terms in different ontologies. Sometimes, one term in an ontology may correspond to multiple terms in another, or there may not be an equivalent term at all. This is why ontological mapping is a complex task requiring domain knowledge and careful consideration.

+
+

+

Can you express the above mapping in SSSOM?

+
+

The Simple Standard for Sharing Ontology Mappings (SSSOM) is a standard that enables sharing and comparing ontology mappings using a simple tabular format (TSV). Here's the example mapping from Human Phenotype Ontology (HPO) to Mammalian Phenotype Ontology (MPO) expressed in SSSOM format:

+
subject_id  subject_label                 predicate_id  object_id  object_label            match_type  confidence
+HP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  Lexical     0.90
+
+

In this case, I have used skos:closeMatch as the predicate to represent the close relationship between the two concepts. The match_type is "Lexical" since the mapping is based on similar labels and definitions. The confidence score is set to 0.90 to reflect a high degree of similarity between the concepts, but this value may vary depending on the actual similarity estimation method used.

+

Please note that the SSSOM format includes metadata and other required fields in a TSV header. The provided example only focuses on the core mapping information. For a complete SSSOM file, you would need to include the appropriate header and metadata.

+
+

+

The SSSOM example you gave is using an old version of the SSSOM standard. In particular, match_type now is mapping_justification. Can you try to rewrite the mapping using the new standard?

+
+

Apologies for the confusion. Here's the example mapping from Human Phenotype Ontology (HPO) to Mammalian Phenotype Ontology (MPO) expressed in the updated SSSOM format:

+
subject_id  subject_label                 predicate_id  object_id  object_label            mapping_justification  confidence
+HP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  Lexical                0.90
+
+

In this revised example, the match_type field has been replaced with mapping_justification, which is now set to "Lexical" to indicate that the mapping is based on similar labels and definitions. The remaining fields are unchanged from the previous example.

+
+

+

mapping_justification values should be populated from a controlled vocabulary, called the Semantic Mapping Vocabulary (SEMAPV). You can look at the vocabulary in RDF here: https://raw.githubusercontent.com/mapping-commons/semantic-mapping-vocabulary/main/semapv.owl. Given that vocabulary, can you revise the value for the mapping_justification?

+
+

My apologies for the oversight. Based on the Semantic Mapping Vocabulary (SEMAPV), I will revise the mapping justification for the example. Here's the updated SSSOM mapping using the SEMAPV:

+
subject_id  subject_label                 predicate_id  object_id  object_label            mapping_justification     confidence
+HP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  semapv:LexicalMatch        0.90
+
+

In this updated example, I have replaced the previous mapping_justification value with semapv:LexicalMatch from the Semantic Mapping Vocabulary (SEMAPV) to represent the lexical similarity between the two concepts based on their labels and definitions. The remaining fields are unchanged.

+
+

+

You were hallucinating earlier. Here is the semapv vocabulary as a tsv:

+
+
IRI skos:prefLabel  skos:definition dc:source   skos:example    rdfs:comment    altLabel    Parent
+ID  A skos:prefLabel    A skos:definition   AI dc:source    A skos:example  A rdfs:comment  A skos:altLabel SC %
+semapv:MappingActivity  mapping activity    A process that relates to the creation, confirmation, rejection or curation of a mapping.       Matching is a mapping activity that results in the creating of a mapping; mapping review is an activity that results in the confirmation of a mapping.          
+semapv:Matching matching process    An process that results in a mapping between a subject and an object entity.        The label of a subject entity matches to an exact synonym of an object entity.      matching operation|matching task    semapv:MappingActivity
+semapv:Mapping  mapping A triple <s,p,o> comprising a subject entity s, an object entity o and a mapping predicate p.       The subject entity NCI:C9305 is mapped to the object entity ICD10:C80.9 using the skos:relatedMatch mapping predicate.          
+semapv:LexicalMatching  lexical matching process    A matching process based on a lexical comparison between one or more syntactic features of the subject with one or more syntactic features of the object.       The label of a subject entity matches to an exact synonym of an object entity.          semapv:Matching
+semapv:LogicalReasoning logical reasoning process   A matching process based on the inferences made by a logical reasoner.      Two classes across ontologies are determined equivalent by an OWL reasoner such as ELK.         semapv:Matching
+semapv:CompositeMatching    composite matching process  A matching process based on multiple, possibly intertwined, matching approaches.        An ontology matching tool determines that a subject should be mapped to an object by employing a range of techniques, including lexical, semantic and structural.           semapv:Matching
+semapv:UnspecifiedMatching  unspecified matching process    A matching process based on an unspecified comparison.      A mapping between a subject and an object was established, but it is no longer clear how or why.            semapv:Matching
+semapv:SemanticSimilarityThresholdMatching  semantic similarity threshold-based matching process    A matching process based on a minimum threshold of a score from a comparison based on a semantic similarity algorithm.      A match between a subject and an object entity was established because they had a Jaccard score higher than 0.8 based on the set of (common) superclasses.          semapv:Matching
+semapv:LexicalSimilarityThresholdMatching   lexical similarity threshold-based matching process A lexical matching process based on a minimum threshold of a score from a comparison based on a lexical similarity algorithm.       A match between a subject and an object was established because they had a Levenshtein score higher than 0.8.           semapv:Matching
+semapv:StructuralMatching   structural matching process     https://doi.org/10.1016/j.websem.2009.11.002    A match between a subject and an object was established because of the similarity of their structural features, e.g., the number of direct property of a class. Structural matching does not involve looking at "values" of properties.     semapv:Matching
+semapv:InstanceBasedMatching    instance-based matching process A matching process based on individual representations (or instances).  https://doi.org/10.1007/978-3-642-38721-0   A match between a subject A and an object B was established because they share the same instances.          semapv:Matching
+semapv:BackgroundKnowledgeBasedMatching background knowledge-based matching process A matching process that exploits background knowledge from external resources, commonly referred to as background knowledge resources. This approach is also known as indirect matching, BK-based matching or context-based matching.   https://doi.org/10.1016/j.websem.2018.04.001    A match between a subject A and an object B was established because they appear equivalent under consideration of externally provided background knowledge.         semapv:Matching
+semapv:MappingChaining  mapping chaining-based matching process A matching process based on the traversing of multiple mappings.        A match between a subject A and an object B was established because A was mapped to C, C was mapped to D and D was mapped to B.         semapv:Matching
+semapv:MappingReview    mapping review  A process that is concerned with determining if a mapping “candidate” (otherwise determined) is reasonable/correct.     A match between a subject A and an object B was established elsewhere, and a human reviewer determined that the mapping is true (or false) based on an independent evaluation.          semapv:MappingActivity
+semapv:ManualMappingCuration    manual mapping curation An matching process that is performed by a human agent and is based on human judgement and domain knowledge.        A human curator determines that a subject should be mapped to an object by virtue of their domain expertise.            semapv:Matching
+semapv:MatchingPreprocessing    matching process pre-processing A preliminary processing of inputs prior to performing matching.                    semapv:MappingActivity
+semapv:Stemming stemming    The process of reducing a word to its word stem.                    semapv:Normalization
+semapv:Lemmatization    lemmatization   The process of reducing the different forms of a word to one single form.   https://doi.org/10.1007/978-3-642-38721-0               semapv:Normalization
+semapv:StopWordRemoval  stop-word removal   A preprocessing method transforming a string by removing a list of stop words.  https://doi.org/10.1007/978-3-642-38721-0   The stop-words “of, and, is, a” are removed from the label field of the subject entity in the mapping.          semapv:Normalization
+semapv:RegexRemoval regex removal   A preprocessing method transforming a string by matching a regular expression and then removing that match.     The regex match “[ -]phenotype” is removed from the label field of the subject entity in the mapping.           semapv:Normalization
+semapv:RegexReplacement regex replacement   A preprocessing method transforming a string by matching a regular expression and then replacing that match with a specified substitution string.       The regex match “[ -]phenotype” is replaced by “-disease” for the label field of the subject entity in the mapping.         semapv:Normalization
+semapv:MatchingPostProcessing   matching process post-processing    A process applied to a set of mappings, usually with the intention of changing it.                  semapv:MappingActivity
+semapv:ThresholdFiltering   threshold filtering                     semapv:MatchingPostProcessing
+semapv:StableMarriageFiltering  stable marriage filtering                       semapv:MatchingPostProcessing
+semapv:CardinalityFiltering cardinality filtering                       semapv:MatchingPostProcessing
+semapv:LogicalConsistencyFiltering  logical consistency filtering                       semapv:MatchingPostProcessing
+semapv:Normalization    normalization   A family of preprocessing techniques for reducing strings to be compared to a common format.    https://doi.org/10.1007/978-3-642-38721-0               semapv:MatchingPreprocessing
+semapv:CaseNormalization    case normalization  A normalization technique converting each alphabetic character in a string to their lower case counterpart. https://doi.org/10.1007/978-3-642-38721-0   The string 'Ontology' is normalised to 'ontology' (lower case).         semapv:Normalization
+semapv:DiacriticsSuppression    diacritics suppression  A normalization technique replacing diactritic signs (e.g. accents, hats) with their most frequent replacements.    https://doi.org/10.1007/978-3-642-38721-0   The string 'Protégé' is normalised to 'Protege'.            semapv:Normalization
+semapv:BlankNormalisation   blank normalisation A normalization technique replacing all blank characters, such as space, tabulation, carriage return (or sequences of these) into a single blank character. https://doi.org/10.1007/978-3-642-38721-0   The string 'ontology  matching' (two spaces between 'ontology' and 'matching) becomes 'ontology matching' (one space).          semapv:Normalization
+semapv:LinkStripping    link stripping  A normalization technique replacing specific links between words, such as apostrophes, dashes, underscore, etc into dashes or blanks.   https://doi.org/10.1007/978-3-642-38721-0   The string 'alzheimer's' becomes 'alzheimers'.          semapv:Normalization
+semapv:DigitSuppression digit suppression   A normalization technique removing all numbers in a string.     https://doi.org/10.1007/978-3-642-38721-0   The string 'ontology1' becomes 'ontology'.          semapv:Normalization
+
+
+

+

Can you use this to pick the right mapping justification?

+
+

Apologies for the confusion earlier. Based on the provided SEMAPV vocabulary as a TSV, I will revise the mapping justification for the example. Here's the updated SSSOM mapping using the correct SEMAPV:

+
subject_id  subject_label                 predicate_id  object_id  object_label            mapping_justification                    confidence
+HP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  semapv:LexicalMatching                    0.90
+In this updated example, I have replaced the previous mapping_justification value with semapv:LexicalMatching from the provided Semantic Mapping Vocabulary (SEMAPV) to represent the lexical similarity between the two concepts based on their labels and definitions. The remaining fields are unchanged.
+
+

Please remember that a complete SSSOM file would require the appropriate header and metadata in addition to the core mapping information provided in the example.

+
+

+

Can you add 4 more examples to that SSSOM table

+
+

Sure, here are 4 more examples of mappings between the Human Phenotype Ontology (HPO) and the Mammalian Phenotype Ontology (MPO) using SSSOM format:

+
subject_id  subject_label                         predicate_id  object_id  object_label                      mapping_justification                    confidence
+HP:0000598  Abnormality of the ear                skos:closeMatch  MP:0002161  abnormal ear morphology            semapv:LexicalMatching                    0.90
+HP:0000365  Hearing impairment                    skos:closeMatch  MP:0006325  hearing loss                      semapv:LexicalMatching                    0.92
+HP:0001382  Joint hypermobility                   skos:closeMatch  MP:0004927  increased joint flexibility       semapv:LexicalMatching                    0.85
+HP:0001392  Hepatomegaly                          skos:closeMatch  MP:0002764  enlarged liver                    semapv:LexicalMatching                    0.88
+HP:0001250  Seizures                              skos:closeMatch  MP:0002064  seizures                          semapv:LexicalMatching                    0.95
+
+

These examples illustrate mappings between HPO and MPO concepts based on lexical matching, where the similarity between the labels and definitions is considered. Note that the confidence values are provided as an example and may differ in real-world scenarios.

+
+

+

Can you print only the table using markdown table syntax in a way that I can copy paste it

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
subject_idsubject_labelpredicate_idobject_idobject_labelmapping_justificationconfidence
HP:0000598Abnormality of the earskos:closeMatchMP:0002161abnormal ear morphologysemapv:LexicalMatching0.90
HP:0000365Hearing impairmentskos:closeMatchMP:0006325hearing losssemapv:LexicalMatching0.92
HP:0001382Joint hypermobilityskos:closeMatchMP:0004927increased joint flexibilitysemapv:LexicalMatching0.85
HP:0001392Hepatomegalyskos:closeMatchMP:0002764enlarged liversemapv:LexicalMatching0.88
HP:0001250Seizuresskos:closeMatchMP:0002064seizuressemapv:LexicalMatching0.95
+
+

+

Can you add 100 more examples, this time only providing a markdown table that I can copy paste, with no further comments around it?

+
+

Creating 100 mappings with accuracy requires domain expertise and a comprehensive understanding of the ontology mappings. However, I can provide you with 20 examples to help you understand the format. Please note that these examples may not be completely accurate and should not be used for any critical applications.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
subject_idsubject_labelpredicate_idobject_idobject_labelmapping_justificationconfidence
HP:0000010Megabladderskos:closeMatchMP:0000547enlarged bladdersemapv:LexicalMatching0.85
HP:0000014Renal agenesisskos:closeMatchMP:0000548absent kidneysemapv:LexicalMatching0.82
HP:0000015Bladder diverticulumskos:closeMatchMP:0000556bladder diverticulasemapv:LexicalMatching0.88
HP:0000016Urethral atresiaskos:closeMatchMP:0000565closed urethrasemapv:LexicalMatching0.90
HP:0000020Renal duplicationskos:closeMatchMP:0000571duplex kidneysemapv:LexicalMatching0.84
HP:0000021Hypospadiasskos:closeMatchMP:0000573abnormal penis morphologysemapv:LexicalMatching0.76
HP:0000022Urethral strictureskos:closeMatchMP:0000574urethral obstructionsemapv:LexicalMatching0.86
HP:0000025Polycystic kidney dysplasiaskos:closeMatchMP:0000576polycystic kidneysemapv:LexicalMatching0.92
HP:0000026Hyperechogenic kidneysskos:closeMatchMP:0000581abnormal kidney echogenicitysemapv:LexicalMatching0.81
HP:0000027Renal cortical microcystsskos:closeMatchMP:0000584renal cortical cystssemapv:LexicalMatching0.89
HP:0000028Renal tubular atrophyskos:closeMatchMP:0000585atrophic renal tubulessemapv:LexicalMatching0.87
HP:0000031Renal hypoplasiaskos:closeMatchMP:0000591small kidneysemapv:LexicalMatching0.79
HP:0000032Renal hypoplasia/aplasiaskos:closeMatchMP:0000592renal hypoplasiasemapv:LexicalMatching0.91
HP:0000033Proximal tubulopathyskos:closeMatchMP:0000593abnormal proximal tubulesemapv:LexicalMatching0.75
AT THIS POINT CHATGPT JUST STOPPED GENERATING CONTENT.
+

+

Generating pre-coordinated expressions and schema instances

+
+

+

Here are a few slots in a schema: quality, anatomical_entity and chemical_entity

+
+
quality:
+description: The property being measured, or changes in this property, for example, amount, level, increased amount, decreased concentration
+annotations:
+    prompt.example: amount, level, increased amount, decreased concentration
+range: Quality
+
+anatomical_entity:
+description: The anatomical location that the chemical entity is measured in
+range: AnatomicalEntity
+annotations:
+    prompt.example: liver, heart, brain, finger
+
+chemical_entity:
+description: The chemical entity that is being measured
+range: ChemicalEntity
+annotations:
+    prompt.example: lysine, metabolite
+
+
+

+

Can you create a YAML file with those three elements as keys, and extract the contents of the string "increased blood glucose levels" into as values to these keys? Output should be just a simple yaml file, like:

+
+
quality: concentration
+anatomical_entity: liver
+chemical_entity: lysine
+
+

TODO FINISH THIS SECTION

+

+

+

From Chat to exectutable workflows: what we need to do to leverage LLMs

+

The above tutorial was a fun case study using ChatGPT with GPT-4. 95% of the content provided was generated by ChatGPT with GPT-4. While certainly not as great as possible, it took a solid ontology engineer (@matentzn) about 90 minutes to write this lesson, which would have usually cost him more than 8 hours.

+

It is clear that learning how to talk to AI, the process we refer to as "prompt engineering" is going to be absolutely essential for ontology curators moving forward - as LLMs improve and understand even complex languages like OWL better, perhaps as important as ontology modelling itself. I dont think there is any doubt that enganging is a good amount of play and study on this subject is both fun and hugely beneficial.

+

All that said, perceiving LLMs through the lens of a chat bot leaves a lot of potential unexplored. For example, if ChatGPT (or LLMs in general) can generate structured data, why not implement this directly into our curation tools (like Protege)? Tools like GitHub co-pilot are already used to making good programmers a lot more effective, but so far, these tools focus on development environments where the majority of the generated content is text (e.g. software code), and not so much heavily UI driven ones like Protege.

+

A lot of blog posts have circulated recently on Twitter and LinkedIn explored the potential of LLMs to generate RDF and OWL directly. It is already clear that LLMs can and will do this moving forward. For ontology curation specifically, we will need to develop executable workflows that fit into our general ontology curation process. As a first pass, some members of our community have developed OntoGPT. We will explore how to use OntoGPT in a future lesson.

+

Some more thoughts on hallucinations

+

Update 27 May 2023: It seems that complaints wrt to hallucinations, the chat part of ChatGPT is a bit more sensitive to database like queries:

+

+

Cool applications the authors of this tutorial used

+
    +
  • The key is that it is generative: the key thing is that we are generating text that is human like
  • +
  • As databases, LLMs are very inefficient (see excellent talk by Denny Vrandecic) and Hallucinate too often (Chat)
  • +
  • Writing emails: shortening
  • +
  • Writing documentations:
  • +
  • Writing docs for a softare tool. Adding background info and context.
  • +
  • Find a good human-readable name for a cluster in ML clustering
  • +
  • Named entity recognition and knowledge extraction
  • +
  • Career planning and discovering stuff you didnt know about at all
  • +
  • ChatGPT for contextualising work and writing use cases
  • +
  • Using it for curation research - but doing it right
  • +
  • Don't ask it to do the curation for you, get it to help you find arguments for and against a modelling decision ("I will always have to recurate anyways, so what is the point?")
  • +
  • Always remember that ChatGPT is not a database. It hallucinates and changes its mind all the time. Get it to generate text for you that could be useful in your work.
  • +
+

Additional materials

+ +

(Current) Limitations:

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/contributing-to-obo-ontologies/index.html b/lesson/contributing-to-obo-ontologies/index.html new file mode 100644 index 000000000..376403cfa --- /dev/null +++ b/lesson/contributing-to-obo-ontologies/index.html @@ -0,0 +1,5210 @@ + + + + + + + + + + + + + + + + + + + + + + + + Contributing to OBO ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Contributing to OBO ontologies

+

+

Prerequisites

+

Participants will need to have access to the following resources and tools prior to the training:

+
    +
  • GitHub account - register for a free GitHub account here
  • +
  • Protege - Install the latest version of Protege, download it from the GitHub repository here
  • +
  • Install GitHub Desktop Please make sure you have some kind of git client installed on your machine. If you are new to Git, please install GitHub Desktop
  • +
+

Preparation

+ +

What is delivered as part of the course

+

Description: How to contribute terms to existing ontologies.

+

Learning objectives

+ +

Tutorials

+

Monarch OBO training Tutorials

+

Contributing to Ontologies Part 1

+ + +

Contributing to Ontologies Part 2

+ + +

Additional materials and resources

+

Contributors

+ +

Use GitHub

+

+

GitHub workflows

+

GitHub - distributed version control (Git) + social media for geeks who like to build code/documented collaboratively.

+

A Git repo consists of a set of branches each with a complete history of all changes ever made to the files and directories. This is true for a local copy you check out to your computer from GitHub or for a copy (fork) you make on GitHub.

+

image

+

A Git repo typically has a master or main branch that is not directly editing. Changes are made by creating a branch from Master (complete copy of the Master + its history).

+

+

Branch vs Fork

+

You can copy (fork) any GitHub repo to some other location on GitHub without having to ask permission from the owners.  If you modify some files in that repo, e.g. to fix a bug in some code, or a typo in a document, you can then suggest to the owners (via a Pull Request) that they adopt (merge) you your changes back into their repo.

+

If you have permission from the owners, you can instead make a new branch. For this training, we gave you access to the repository. See the Appendix for instructions on how to make a fork.

+

+

Create GitHub Issues

+
    +
  1. Go to GitHub tracker for the ontology where you'd like to create an issue
  2. +
  3. Select New issue
  4. +
  5. Pick appropriate template (if applicable)
  6. +
  7. Fill in the information that is requested on the template below each header
  8. +
  9. For a new term request, please include:
  10. +
  11. The parent ID and label
  12. +
  13. A definition in the proper format
  14. +
  15. Sources/cross references for synonyms
  16. +
  17. Your ORCID
  18. +
  19. Add any additional comments at the end
  20. +
  21. If you are requesting changes to an existing term, include as much information as possible, including the term ID and label.
  22. +
  23. If you use a template, an ontology curator may automatically be assigned.
  24. +
+

Tip: you can easily obtain term metadata like OBO ID, IRI, or the term label by clicking the three lines above the Annotations box (next to the term name) in Protege, see screenshot below. You can also copy the IRI in markdown, which is really convenient for pasting into GitHub.

+

image

+

Video Explanation

+

See this example video on creating a new term request to the Mondo Disease Ontology:

+ + +

+

Basic Open Source etiquette

+
    +
  • Keep in mind that open source ontology repositories on GitHub are public and open to all.
  • +
  • Be respectful in your requests and comments.
  • +
  • Do not include any private information.
  • +
  • GitHub sends notifications to your email, and you can respond via your email client. Keep in mind, the responses are posted publicly. Be sure to delete your email signature that includes any personal information, like your email address or phone number.
  • +
  • Many ontologies have limited resources and personnel for development and maintenance. Please be patient with your requests.
  • +
  • If your ticket/request has been unanswered for a long period of time, feel free to kindly check in by commenting on the ticket.
  • +
  • Including a deadline or priority on the ticket can help the ontology curators with triaging tickets.
  • +
+

+

Reading READMEs

+

A README is a text file that introduces and explains a project. It is intended for everyone, not just the software or ontology developers. Ideally, the README file will include detailed information about the ontology, how to get started with using any of the files, license information and other details. The README is usually on the front page of the GitHub repository.

+

+

Basics of ontology development workflows

+

Ontology development workflows

+

The steps below describe how to make changes to an ontology.

+
    +
  1. Go to the GitHub repository for your ontology, and clone the repository. The example below describes how to clone the Mondo Disease Ontology repo, but this can be applied to any ontology that is stored in GitHub.
  2. +
+

Clone the Mondo repo

+
    +
  1. Open the Mondo GitHub repository
  2. +
  3. Click Code
  4. +
+

image

+
    +
  1. Click 'Open with GitHub Desktop'
  2. +
+

image

+
    +
  1. You will be given an option as to where to save the repository. I have a folder called 'git' where I save all of my local repos.
  2. +
  3. This will open GitHub Desktop and the repo should start downloading. This could take some time depending on how big the file is and how much memory your computer has.
  4. +
+

Create a branch using GitHub Desktop

+
    +
  1. Click the little arrow in Current Branch
  2. +
  3. Click New Branch
  4. +
  5. Give your branch a name: training-initials (ie training-NV)
  6. +
+

image

+

Open the Ontology edit file in Protege

+
    +
  1. Open Protege
  2. +
  3. Go to: File -> Open
  4. +
  5. Navigate to [ontology-name]/src/ontology/[ontology-name]-edit.obo and open this file in Protege. For example: mondo/src/ontology/mondo-edit.obo
  6. +
  7. Note: all ontologies that use the Ontology Development Kit (ODK) will have the 'edit' files stored in the same folder path: src/ontology/[ontology-name]-edit.owl (or [ontology-name]-edit.obo)
  8. +
+

+

Browsing and Searching in Protege

+

The instructions below are using the Mondo Disease Ontology as an example, but this can be applied to any ontology.

+

Open the Mondo in Protégé

+

Note: Windows users should open Protege using run.bat

+
    +
  1. Navigate to where you downloaded the repository and open the mondo-edit.obo file (src/ontology/mondo-edit.obo)
  2. +
  3. When you open Protege, you will be on the Active Ontology tab
  4. +
  5. Note the Ontology IRI field. The IRI is used to identify the ontology on the Web.
  6. +
+

image

+

The Protégé UI

+

The Protégé interface follows a basic paradigm of Tabs and Panels. By default, Protégé launches with the main tabs seen below. The layout of tabs and panels is configurable by the user. The Tab list will have slight differences from version to version, and depending on your configuration. It will also reflect your customizations.

+

To customize your view, go to the Window tab on the toolbar and select Views. Here you can customize which panels you see in each tab. In the tabs view, you can select which tabs you will see. You will commonly want to see the Entities tab, which has the Classes tab and the Object Properties tab.

+

image

+

Note: if you open a new ontology while viewing your current ontology, Protégé will ask you if you'd like to open it in a new window.  For most normal usage you should answer no. This will open in a new window.

+

The panel in the center is the ontology annotations panel. This panel contains basic metadata about the ontology, such as the authors, a short description and license information.

+

image

+

Running the reasoner

+

Before browsing or searching an ontology, it is useful to run an OWL reasoner first. This ensures that you can view the full, intended classification and allows you to run queries. Navigate to the query menu, and run the ELK reasoner:

+

image

+

For more details on why it is important to have the reasoner on when using the editors version of an ontology, see the Reasoning reference guide. But for now, you don't need a deeper understanding, just be sure that you always have the reasoner on.

+

Entities tab

+

You will see various tabs along the top of the screen. Each tab provides a different perspective on the ontology. +For the purposes of this tutorial, we care mostly about the Entities tab, the DL query tab and the search tool. OWL Entities include Classes (which we are focussed on editing in this tutorial), relations (OWL Object Properties) and Annotation Properties (terms like, 'definition' and 'label' which we use to annotate OWL entities. +Select the Entities tab and then the Classes sub-tab. Now choose the inferred view (as shown below).

+

image

+

The Entities tab is split into two halves. The left-hand side provides a suite of panels for selecting various entities in your ontology. When a particular entity is selected the panels on the right-hand side display information about that entity. The entities panel is context specific, so if you have a class selected (like Thing) then the panels on the right are aimed at editing classes. The panels on the right are customizable. Based on prior use you may see new panes or alternate arrangements. +You should see the class OWL:Thing. You could start browsing from here, but the upper level view of the ontology is too abstract for our purposes. To find something more interesting to look at we need to search or query.

+

Searching in Protege

+

You can search for any entity using the search bar on the right:

+

image

+

The search window will open on top of your Protege pane, we recommend resizing it and moving it to the side of the main window so you can view together.

+

image

+

Here's an example search for 'COVID-19': +image

+

It shows results found in display names, definitions, synonyms and more. The default results list is truncated. To see full results check the 'Show all results option'. You may need to resize the box to show all results. +Double clicking on a result, displays details about it in the entities tab, e.g.

+

image

+

In the Entities, tab, you can browse related types, opening/closing branches and clicking on terms to see details on the right. In the default layout, annotations on a term are displayed in the top panel and logical assertions in the 'Description' panel at the bottom.

+

Try to find these specific classes:

+
    +
  • 'congenital heart disease'
  • +
  • 'Kindler syndrome'
  • +
  • 'kidney failure'
  • +
+

Note - a cool feature in the search tool in Protege is you can search on partial string matching. For example, if you want to search for ‘down syndrome’, you could search on a partial string: ‘do synd’.

+
    +
  • Try searching for ‘br car and see what kind of results are returned.
  • +
  • Question: The search will also search on synonyms. Try searching for ‘shingles’ and see what results are returned. Were you able to find the term?
  • +
+

Note - if the search is slow, you can uncheck the box ‘Search in annotation values. Try this and search for a term and note if the search is faster. Then search for ‘shingles’ again and note what results you get.

+

+

Use GitHub: make pull requests

+

Committing, pushing and making pull requests

+
    +
  1. +

    Changes made to the ontology can be viewed in GitHub Desktop.

    +
  2. +
  3. +

    Before committing, check the diff. Examples of a diff are pasted below. Large diffs are a sign that something went wrong. In this case, do not commit the changes and ask the ontology editors for help instead.

    +
  4. +
+

Example 1:

+

+
    +
  1. Commit: Add a meaningful message in the Commit field in the lower left, for example: add new class MONDO:0001012 episodic angioedema with eosinophilia
  2. +
+

NOTE: You can use the word 'fixes' or 'closes' in the description of the commit message, followed by the corresponding ticket number (in the format #1234) - these are magic words in GitHub; when used in combination with the ticket number, it will automatically close the ticket. Learn more on this GitHub Help Documentation page about Closing issues via commit messages.

+
    +
  1. +

    Note: 'Fixes' and "Closes' are case-insensitive.

    +
  2. +
  3. +

    If you don't want to close the ticket, just refer to the ticket # without the word 'Fixes' or use 'Adresses'. The commit will be associated with the correct ticket but the ticket will remain open. NOTE: It is also possible to type a longer message than allowed when using the '-m' argument; to do this, skip the -m, and a vi window (on mac) will open in which an unlimited description may be typed.

    +
  4. +
  5. +

    Click Commit to [branch]. This will save the changes to the cl-edit.owl file.

    +
  6. +
  7. +

    Push: To incorporate the changes into the remote repository, click Publish branch.

    +
  8. +
+

+

Add New Terms to an Ontology:

+

The instructions below are using the Mondo Disease Ontology as an example, but this can be applied to any ontology.

+

+

Setup

+

Setting Preferences for New entities

+

Ontology terms have separate names and IDs. The names are annotation values (labels) and the IDs are represented using IRIs. The OBO foundry has a policy on IRI (or ID) generation (http://www.obofoundry.org/principles/fp-003-uris.html). You can set an ID strategy using the "New Entities" tab under the Protégé Preferences -- on the top toolbar, click the "Protégé dropdown, then click Preferences.

+

image

+

Set your new entity preferences precisely as in the following screenshot of the New Entities tab.

+

Note - you have been assigned an ID range in the Mondo idranges file  - you should be able to find your own range assigned there.

+

DIY (only if you know what you are doing!)

+

To add your own ID ranges:

+

Go into src/ontology

+

create a branch

+

Find and edit mondo-idranges.owl by adding the following:

+
Datatype: idrange:10 #update this to next following integer from previous
+
+    Annotations:
+        allocatedto: "Your Name" #change to your name
+
+    EquivalentTo:
+    xsd:integer[>= 0806000 , <= 0806999]. #add a range of 999 above the previous integer
+
+

Be sure to change "Your Name" to your actual name! And note that this value should almost always be an individual, and not an organization or group.

+

create a pull request and add matentzn or nicolevasilevsky as a reviewer

+

proceed to setting up as below:

+

image

+

Specified IRI: http://purl.obolibrary.org/obo/

+

Note - if you edit more than one ontology in Protege, you will need to update your Preferences for each ontology before you edit.

+

Setting Preferences for User details

+

User name: click Use supplied user name and enter your username in the field below

+

Click Use Git user name when available

+

In the ORCID field, add your ORCID ID (in the format 0000-0000-0000-0000)

+

+

Setting Preferences for New entities metadata

+

The current recommendation of the OBO Foundry Technical Working Group is that an editor who creates a new term SHOULD add a http://purl.org/dc/terms/contributor annotation, set to the ORCID or GitHub username of the editor, and a http://purl.org/dc/terms/date annotation, set to the current date.

+

You can have Protégé automatically add those annotations by setting your preferences to match the screenshot below, in the New entities metadata tab (under preferences).

+

If you do not have an ORCID, register for for free here: https://orcid.org/

+

+

+

Protege editing

+

Creating a new class

+

Before you start:

+
    +
  • +

    make sure you are working on a branch - see quick guide here.

    +
  • +
  • +

    make sure you have the editor's file open in Protege as detailed here.

    +
  • +
+

New classes are created in the Class hierarchy panel on the left.

+

There are three buttons at the top of the class hierarchy view. These allow you to add a subclass (L-shaped icon), add a sibling class (c-shaped icon), or delete a selected class (x'd circle).

+

Practice adding a new term:

+

We will work on these two tickets:

+
    +
  1. https://github.com/monarch-initiative/mondo/issues/616
  2. +
  3. https://github.com/monarch-initiative/mondo/issues/2541
  4. +
+

https://github.com/monarch-initiative/mondo/issues/616

+
    +
  • +

    Search for the parent term 'hypereosinophilic syndrome' (see search guide if you are unsure how to do this).

    +
  • +
  • +

    When you are clicked on the term in the Class hierarchy pane, click the add subclass button to add a child class to 'hypereosinophilic syndrome'

    +
  • +
+

+

A dialog will popup. Name this new subclass: migratory muscle precursor. Click "OK" to add the class.

+

+

+

Adding annotations

+

Using Protégé you can add annotations such as labels, definitions, synonyms, database cross references (dbxrefs) to any OWL entity. The panel on the right, named Annotations, is where these annotations are added. CL includes a pre-declared set of annotation properties. The most commonly used annotations are below.

+
    +
  • rdfs:label
  • +
  • definition
  • +
  • has_exact_synonym
  • +
  • has_broad_synonym
  • +
  • has_narrow_synonym
  • +
  • has_related synonym
  • +
  • database_cross_reference
  • +
  • rdfs:comment
  • +
+

Note, most of these are bold in the annotation property list:

+

+

Use this panel to add a definition to the class you created. Select the + button to add an annotation to the selected entity. Click on the annotation 'definition' on the left and copy and paste in the definition to the white editing box on the right. Click OK.

+

Definition: A disorder characterized by episodes of swelling under the skin (angioedema) and an elevated number of the white blood cells known as eosinophils (eosinophilia). During these episodes, symptoms of hives (urticaria), fever, swelling, weight gain and eosinophilia may occur. Symptoms usually appear every 3-4 weeks and resolve on their own within several days. Other cells may be elevated during the episodes, such as neutrophils and lymphocytes. Although the syndrome is often considered a subtype of the idiopathic hypereosinophilic syndromes, it does not typically have organ involvement or lead to other health concerns.

+

+

+

Definitions in Mondo should have a 'database cross reference' (dbxref), which is a reference to the definition source, such as a paper from the primary literature or another database. For references to papers, we cross reference the PubMed Identifier in the format, PMID:XXXXXXXX. (Note, no space)

+

To add a dbxref to the definition:

+
    +
  • Click the @ symbol next to the definition
  • +
  • Click the + button next in the pop-up window
  • +
  • Scroll up on the left hand side until you find 'database_cross_reference', and click it
  • +
  • Add the PMID in the editing box (PMID:25527564). _Note: the PMID should not have any spaces)
  • +
  • Click OK
  • +
  • Add the additional dbxref: GARD:0013029
  • +
  • The dbxrefs should appear as below.
  • +
+

+

+

Add Synonyms and Database cross reference

+
    +
  1. Add synonyms
  2. +
  3. Click the add annotations button
  4. +
  5. Add the following synonyms as 'has_exact_synonym':
      +
    • EAE
    • +
    • Gleich's syndrome
    • +
    • Gleich syndrome
    • +
    +
  6. +
  7. All synonyms in Mondo should have a dbxref on the synonym
  8. +
  9. Click the @ symbol next to the synonym
  10. +
  11. Click the + button
  12. +
  13. Add the dbxref to each synonym: GARD:0013029
  14. +
  15. Add database cross reference
  16. +
  17. Click the add annotations button
  18. +
  19. Add the following database_cross_reference':
      +
    • GARD:0013029
    • +
    +
  20. +
  21. Click the @ symbol next to the synonym
  22. +
  23. Click the + button
      +
    • Add source: MONDO:equivalentTo
    • +
    +
  24. +
+

+

The Class description view

+

We have seen how to add sub/superclasses and annotate the class hierarchy. Another way to do the same thing is via the Class description view. When an OWL class is selected in the entities view, the right-hand side of the tab shows the class description panel. If we select the 'vertebral column disease' class, we see in the class description view that this class is a "SubClass Of" (= has a SuperClass) the 'musculoskeletal system disease' class. Using the (+) button beside "SubClass Of" we could add another superclass to the 'skeletal system disease' class.

+

Note the Anonymous Ancestors. This is a difficult concept we will return to later, and the contents of this portion may seem confusing at first (some of these may be clearer after you complete the "Basics of OWL" section below). These are OWL expressions that are inherited from the parents. If you hover over the Subclass Of (Anonymous Ancestor) you can see the parent that the class inherited the expression from. For many ontologies, you will see some quite abstract expressions in here inherited from upper ontologies, but these can generally be ignored for most purposes.

+

+

Revising a superclass:

+
    +
  1. +

    If you want to revise the superclass, click the 'o' symbol next to the superclass and replace the text. Try to revise 'musculoskeletal system disease' to  'disease by anatomical system'.

    +
  2. +
  3. +

    If you want to delete a superclass, click the 'x' button next to the superclass. Delete the 'disease by anatomical system' superclass.

    +
  4. +
+

Close this window without saving.

+

Save your work.

+

Make a Pull Request

+
    +
  1. +

    Click: Create Pull Request in GitHub Desktop

    +
  2. +
  3. +

    This will automatically open GitHub Desktop

    +
  4. +
  5. +

    Click the green button 'Create pull request'

    +
  6. +
  7. +

    You may now add comments to your pull request.

    +
  8. +
  9. +

    The CL editors team will review your PR and either ask for changes or merge it.

    +
  10. +
  11. +

    The changes will be available in the next release.

    +
  12. +
+

+

Ontology design patterns

+

Dead Simple Ontology Design Patterns (DOSDPs) are specifications, written in yaml format, that specify how ontology terms should be created (see article here). They can be used to:

+
    +
  • generate documentation
  • +
  • generate new terms
  • +
  • retrofit existing ontology terms
  • +
+

DOSDPs have some key features:

+
    +
  • Description: that describes the purpose of the patterns
  • +
  • Examples: Provides examples of terms that use the Patterns
  • +
  • Declared classes: these are the classes that are used in the pattern. Any subclass of the declared class can be used in this pattern.
  • +
  • Declared relationships: the relationships used in the logical axioms
  • +
  • vars: the variable classes that are used in the pattern. Any subclass of the 'var' can be used in this pattern.
  • +
  • Pattern for class name, annotations, text definition and equivalentTo (logical definition): Ontology classes are used as 'fillers' to create new classes that conform to the specific patterns.
  • +
+

Examples of design patterns are available here:

+ +

+

Use templates: ROBOT, DOSDP

+

under development

+

+

Basics of OWL

+
    +
  • Clone the Ontologies 101 repository, then open the folder BDK14_exercises from your file system
  • +
  • Open basic-subclass/chromosome-parts.owl in Protégé, then do the following exercises: +
  • +
  • Open basic-restriction/er-sec-complex.owl in Protégé, then do the following exercise: +
  • +
  • Open basic-dl-query/cc.owl in Protégé, then do the following exercises:
      +
    • DL Query Tab - note that owl:Nothing is defined as the very bottom node of an ontology, therefore the DL query results will show owl:Nothing as a subclass. This is expected and does not mean there is a problem with your ontology! It's only bad when something is a subclass of owl:Nothing and therefore unsatisfiable (more on that below).
    • +
    • Basic DL Queries
    • +
    +
  • +
  • Open basic-classification/ubiq-ligase-complex.owl in Protégé, then do the following exercises: +
  • +
  • Read (I can't get no) satisfiability (~10 minutes)
  • +
  • Optional: Open a new ontology in Protégé. Try creating an inconsistent ontology using the classes and instances in the first Pets example (hint: you'll also need to create the "eats" object property)... what happens when you run the reasoner?
  • +
+

+

Logic and debugging

+

Below are exercises to demonstrate how to:

+
    +
  • Add equivalent axioms (logical definitions) to ontology terms
  • +
  • Run the reasoner and view the inferred hierarchy
  • +
  • Debugging and viewing explanations
  • +
+

Practice adding logic and debugging

+

These instructions will use the Mondo disease ontology as an example.

+

Practice 1

+

Add New Terms with an Equivalance Axiom to Mondo:

+
Creating a new class
+

New classes are created in the Class hierarchy panel on the left.

+

There are three buttons at the top of the class hierarchy view. These allow you to add a subclass (L-shaped icon), add a sibling class (c-shaped icon), or delete a selected class (x'd circle).

+

image

+

Practice adding a new term:

+
Add the new term 'mycotoxin allergy'
+
    +
  1. Navigate to the Mondo repo in GitHub Desktop, create a branch, and open mondo-edit.obo in Protege.
  2. +
  3. Search for the parent term 'allergic disease' (see search guide if you are unsure how to do this).
  4. +
  5. When you are clicked on the term in the Class hierarchy pane, click the add subclass button to add a child class to 'allergic disease'
  6. +
  7. A dialog will popup. Name this new subclass: mycotoxin allergy. Click "OK" to add the class.
  8. +
+
Add annotations and a logical axiom
+

Equivalence axioms in Mondo are added according to Dead Simple Ontology Design Patterns (DOSDPs). You can view all of the design patterns in Mondo by going to code/src/patterns/dosdp-patterns/

+

For this class, we want to follow the design pattern for allergy.

+
    +
  1. Review this pattern before proceeding.
  2. +
  3. Based on the pattern specifications, add a text definition to this term.
  4. +
  5. Add the database cross reference to this term: MONDO:patterns/allergy
  6. +
  7. Add a synonym that is consistent with this pattern.
  8. +
+

image

+
    +
  1. Add the equivalence axiom according to the pattern specifications.
  2. +
+

image

+

image

+
    +
  1. Run the reasoner
  2. +
  3. View the inferred hierarchy. You should see a child of owl:Nothing (and you should see this in the Description pane as well.)
  4. +
+

image

+

image

+
    +
  1. Click on the ? button next to the owl:Nothing in the Description view
  2. +
  3. The explanation tells you the reason why this is unsatisfiable
  4. +
+

image

+
    +
  1. Mycotoxin is a child of a 'specifically dependent continuant' and and 'independent continuant' is disjoint with 'specifically dependent continuant'.
  2. +
  3. This logical axiom uses the relation 'realized in response to stimulus'
  4. +
  5. Click on this relation in Protege (you can click on the relation name in the equivalence axiom, or you can click on the Object properties tab and search for this relation.
  6. +
  7. There are domain and range restrictions on this property, where the range has to be a material enity. Chebi mycotoxin is actually a role, so it is not a material entity.
  8. +
+

image

+
    +
  1. Go back to the Classes or Entities pane and remove the equivalence axiom and run the reasoner again. You should now see no unsatisfiable classes.
  2. +
+

Practice 2

+

Practice adding a new term:

+
Add the new term 'acquired alacrima'
+
    +
  1. Add 'acquired candidiasis as a subclass of MONDO_0002026 candidiasis.
  2. +
+
Add annotations and a logical axiom
+

As noted above, equivalence axioms in Mondo are added according to Dead Simple Ontology Design Patterns (DOSDPs). You can view all of the design patterns in Mondo by going to code/src/patterns/dosdp-patterns/

+

For this class, we want to follow the design pattern for acquired.

+
    +
  1. Review this pattern before proceeding.
  2. +
  3. Based on the pattern specifications, add a text definition to this term.
  4. +
  5. Add the database cross reference to the definition: MONDO:patterns/allergy
  6. +
  7. Add the equivalence axiom according to the pattern specifications.
  8. +
  9. Run the reasoner
  10. +
  11. View the inferred hierarchy.
  12. +
+

image

+

Further reading

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/developing-an-obo-ontology/index.html b/lesson/developing-an-obo-ontology/index.html new file mode 100644 index 000000000..038756ae8 --- /dev/null +++ b/lesson/developing-an-obo-ontology/index.html @@ -0,0 +1,3752 @@ + + + + + + + + + + + + + + + + + + + + + + + + Developing an OBO Ontology - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Developing an OBO Reference Ontology

+

What is delivered as part of the course?

+

Develop skills to lead a new or existing OBO project, or reference ontology develoment.

+

Learning objectives

+
    +
  • detailed knowledge of OBO principles and best practises
  • +
  • use OBO Dashboard
  • +
  • use OBO Registry
  • +
  • use PURL system
  • +
+

Prerequisites

+ +

Preparation

+

Please complete the following and then continue with this tutorial below:

+ +

Ontology Development

+

Description

+

By the end of this session, you should be able to:

+
    +
  • Merge ontology modules & imports with robot merge
  • +
  • Create a classified version of an ontology with robot reason
  • +
  • Add metadata to an ontology with robot annotate
  • +
  • Create a simple release workflow using ROBOT commands in a Makefile
  • +
  • Create a new ontology with ODK
  • +
+

What is an ontology release?

+

Like software, official OBO Foundry ontologies have versioned releases. This is important because OBO Foundry ontologies are expected to be shared and reused. Since ontologies are bound to change over time as more terms are added and refined, other developers need stable versions to point to so that there are no surprises. OBO Foundry ontologies use GitHub releases to maintain these stable copies of older versions.

+

Generally, OBO Foundry ontologies maintain an "edit" version of their file that changes without notice and should not be used by external ontology developers because of this. The edit file is used to create releases on a (hopefully) regular basis. The released version of an OBO Foundry ontology is generally a merged and reasoned version of the edit file. This means that all modules and imports are combined into one file, and that file has the inferred class hierarchy actually asserted. It also often has some extra metadata, including a version IRI. OBO Foundry defines the requirements for version IRIs here.

+

The release workflow process should be stable and can be written as a series of steps. For example:

+
    +
  1. Update modules from templates
  2. +
  3. Merge ontology modules & the main edit file into one
  4. +
  5. Assert the inferred class hierarchy
  6. +
  7. Add a version IRI & other important metadata
  8. +
+

This series of steps can be turned into ROBOT commands:

+
    +
  1. robot template
  2. +
  3. robot merge
  4. +
  5. robot reason
  6. +
  7. robot annotate
  8. +
+

Since we can turn these steps into a series of commands, we can create a Makefile that stores these as "recipes" for our ontology release!

+ +

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/developing-application-ontologies/index.html b/lesson/developing-application-ontologies/index.html new file mode 100644 index 000000000..28bab97d9 --- /dev/null +++ b/lesson/developing-application-ontologies/index.html @@ -0,0 +1,3787 @@ + + + + + + + + + + + + + + + + + + + + + + + + Developing an Application Ontology - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Developing an Application Ontology

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+ +

Preparation

+
    +
  • TBD
  • +
+

What is delivered as part of the course

+

Description: Combining ontology subsets for use in a project.

+

Learning objectives

+
    +
  • manage GitHub
  • +
  • manage ontology imports
  • +
  • use ROBOT extract: MIREOT, SLME
  • +
  • use ROBOT report
  • +
  • pruning trees
  • +
+

Tutorials

+
    +
  • in person or video (link videos here as they become available)
  • +
+

Additional materials and resources

+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/entity-matching/index.html b/lesson/entity-matching/index.html new file mode 100644 index 000000000..d71b86e0a --- /dev/null +++ b/lesson/entity-matching/index.html @@ -0,0 +1,4151 @@ + + + + + + + + + + + + + + + + + + + + + + + + Semantic Entity Matching - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Linking across vocabularies: Semantic Entity Matching

+

+

Summary

+

All across the biomedical domain, we refer to domain entities (such as chemicals or anatomical parts) using identifiers, often from controlled vocabularies.

+

The decentralised evolution of scientific domains has led to to the emergence of disparate "semantic spaces" with different annotation practices and reference vocabularies and formalisms.

+

semantic spaces

+

To bridge between these spaces, entity mappings have emerged, which link, for example, genes from HGNC to ENSEMBL, diseases between OMIM and Mondo and anatomical entities between FMA and Uberon.

+

Entity matching is the process of establishing a link between an identifier in one semantic space to an identifier in another. There are many cultures of thought around entity matching, including Ontology Matching, Entity Resolution and Entity Linking.

+

Table of Contents

+ +

Overview of the terminology

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConceptDefinition
Semantic spaceA not widely used concept to denote a cluster of related data that can be interpreted using the same ontology.
Ontology matchingThe task of determining corresponding entities across ontologies.
Entity mappingDetermining and documenting the correspondence of an entity in one semantic space to another.
Schema mappingDetermining and documenting the translation rules for converting an entity from one semantic space to another.
Ontology alignmentAn ontology alignment is a set of term mappings that links all concepts in a source ontology to their appropriate correspondence in a target ontology, if any.
Knowledge graph matchingMore or less the same as ontology matching - for knowledge graphs
Thesaurus buildingInvolves assigning natural language strings (synonym) to a code in a knowledge organisation system (like a taxonomy, terminology, or ontology)
Named Entity Recognition and Entity LinkingInvolve recognising entities (such as diseases) in text and linking them to some identifier.
Entity resolution/record linkageInvolves determining if records from different data sources represent, in fact, the same entity
Schema matchingDetermines if two objects from different data models (schema elements, schema instances) are semantically related.
Value Set MappingDetermines and documents the correspondence of two Value Sets and their respective values (i.e. a 2-level mapping!).
+

+

Fundamentals

+

The excellent OpenHPI course on Knowledge Engineering with Semantic Web Technologies gives a good overview:

+ + +

Another gentle overview on Ontology Matching was taught as part of the Knowledge & Data course at Vrije Universiteit Amsterdam.

+ + +

+

Basic tutorials

+
    +
  1. Mapping curation with SSSOM
  2. +
  3. Introduction to processing mappings with SSSOM and sssom-py CLI
  4. +
  5. Introduction to matching with OAK lexmatch
  6. +
+

+

Introduction to Entity Mapping

+

In the following, we consider a entity a symbol that is intended to refer to a real world entity, for example:

+

entity mapping

+
    +
  • an ontology id like OMOP:441554 corresponds to the concept of "Vascular calcification" in the real world. Note that OMOP:441554 may be annotated with the rdfs:label "Friedreichs Ataxia". +The label itself is not necessarily a term - it could change, for example to "Friedreichs Ataxia (disease)", and still retain the same meaning.
  • +
  • "Friedreich's Ataxia" (example on the left) may be a term in my controlled vocabulary which I understand to correspond to that respective disease (not all controlled vocabularies have IDs for their terms). +This happens for example in clinical data models that do not use formal identifiers to refer to the values of slots in their data model, like "MARRIED" in /datamodel/marital_status.
  • +
  • Examples of entities:
      +
    • IDs of classes in an ontology
    • +
    • elements of a clinical value set
    • +
    • elements of clinical terminologies such as Z63.1
    • +
    • Elements of a schema
    • +
    +
  • +
  • TLDR: entities are symbols that correspond to things in the world, and that correspondence is not subject to change. +Labels of such entities can change without changing the meaning of the entity.
  • +
+

In our experience, there are roughly four kinds of mappings:

+
    +
  • string-string: Relating one string, or label, to another string, or label. Understanding such mappings is fundamental to understanding all the other kinds of mappings.
  • +
  • _string-entity: Relating a specific string or "label" to their corresponding entity in a terminology or ontology. We usually refer to these as synonyms, but there may be other words used in this case.
  • +
  • entity-entity_: Relating an entity, for example a class in an ontology, to another entity. This is what most people in the ontology domain would understand when thy hear "ontology mappings".
  • +
  • complex mappings: Relating two sets of entities. For example cheese sandwich (wikidata:Q2734068) to sandwich (wikidata:Q111836983) and cheese wikidata:Q10943. + These are the rarest and most complicated kinds of mappings and are out of scope for this lesson.
  • +
+

In some ways, these four kinds of mappings can be very different. We do believe, however, that there are enough important commonalities such as common features, widely overlapping use cases and overlapping toolkits to consider them together. In the following, we will discuss these in more detail, including important features of mappings and useful tools.

+

Important features of mappings

+

Mappings have historically been neglected as second-class citizens in the medical terminology and ontology worlds - +the metadata is insufficient to allow for precise analyses and clinical decision support, they are frequently stale and out of date, etc. The question "Where can I find the canonical mappings between X and Y"? is often shrugged off and developers are pointed to aggregators such as OxO or UMLS which combine manually curated mappings with automated ones causing "mapping hairballs".

+

There are many important metadata elements to consider, but the ones that are by far the most important to consider one way or another are:

+
    +
  • Precision: Is the mapping exact, broad or merely closely related?
  • +
  • Confidence: Do I trust the mapping? Was is done manually by an expert in my domain, or by an algorithm?
  • +
  • Source version: Which version of the entity (or its corresponding ontology) was mapped? Is there a newer mapping which has a more suitable match for my entity?
  • +
+

Whenever you handle mappings (either create, or re-use), make sure you are keenly aware of at least these three metrics, and capture them. You may even want to consider using a proper mapping model like the Simple Shared Standard for Ontology Mappings (SSSOM) which will make your mappings FAIR and reusable.

+

String-string mappings

+

String-string mappings are mappings that relate two strings. The task of matching two strings is ubiquitous for example in database search fields (where a user search string needs to be mapped to some strings in a database). Most, if not all effective ontology matching techniques will employ some form of string-string matching. For example, to match simple variations of labels such as "abnormal heart" and "heart abnormality", various techniques such as Stemming and bag of words can be employed effectively. Other techniques such as edit-distance or Levenshtein can be used to quantify the similarity of two strings, which can provide useful insights into mapping candidates.

+

String-entity mappings / synonyms

+

String-entity mappings relate a specific string or "label" to their corresponding term in a terminology or ontology. Here, we refer to these as "synonyms", but there may be other cases for string-entity mappings beyond synonymy.

+

There are a lot of use cases for synonyms so we will name just a few here that are relevant to typical workflows of Semantic Engineers in the life sciences.

+

Thesauri are reference tools for finding synonyms of terms. Modern ontologies often include very rich thesauri, with some ontologies like Mondo capturing more than 70,000 exact and 35,000 related synonyms. They can provide a huge boost to traditional NLP pipelines by providing synonyms that can be used for both Named Entity Recognition and Entity Resolution. Some insight on how, for example, Uberon was used to boost text mining can be found here.

+

Entity-entity mappings / ontology mappings

+

Entity-entity mappings relate a entity (or identifier), for example a class in an ontology, to another entity, usually from another ontology or database. The entity-entity case of mappings is what most people in the ontology domain would understand when they hear "ontology mappings". This is also what most people understand when they here "Entity Resolution" in the database world - the task of determining whether, in essence, two rows in a database correspond to the same thing (as an example of a tool doing ER see deepmatcher, or py-entitymatcher). For a list standard entity matching toolkit outside the ontology sphere see here.

+

Monarch OBO Training Tutorials

+

Introduction to Semantic Entity Matching

+ + +

+

How are mappings collected in practice?

+

Mappings between terms/identifiers are typically collected in four ways:

+
    +
  1. Automatically, using terminological matchers (of which ontology matchers one the most important category in our domain).
  2. +
  3. Manually, by dedicated curators.
  4. +
  5. By re-using existing mappings. Some semantic spaces have been mapped by organisations such as the Monarch Initiative or UMLS, and it is often worth re-viewing existing mappings before building ones own.
  6. +
  7. Using a mix of automated and manual approaches, where automated approaches typically generate "mapping candidates" which are "double checked" by humans before used in production systems.
  8. +
+

The main trade-off for mappings is very simple: +1. Automated mappings are very error prone (not only are they hugely incomplete, they are also often faulty). +1. Human curated mappings are very costly.

+

--> The key for any given mapping project is to determine the highest acceptable error rate, and then distribute the workload between human and automated matching approaches. We will discuss all three ways of collecting mappings in the following.

+

Aside from the main tradeoff above, there are other issues to keep in mind: +- Manually curated mappings are far from perfect. Most of the cost of mapping review lies in the decision how thorough a mapping should be reviewed. For example, a human reviewer may be tasked with reviewing 1000 mappings. If the acceptable error rate is quite high, the review may simply involve the comparison of labels (see here), which may take around 20 seconds. A tireless reviewer could possibly accept or dismiss 1000 mappings just based on the label in around 6 hours. Note that this is hardly better than what most automated approaches could do nowadays. +- Some use cases involve so much data that manual curation is nearly out of the question.

+

Manual curation of mappings

+

It is important to remember that matching in its raw form should not be understood to result in semantic mappings. The process of matching, in particular lexical or fuzzy semantic matching is error prone and usually better treated as resulting in candidates for mappings. This means that when we calculate the effort of a mapping project, we should always factor in the often considerable effort required by a human to verify the correctness of a candidate mapping. There are many tools that can help with this process, for example by filtering out conflicting lower-confidence mappings, but in the end the reality is this: due to the fact that source and target do not share the same semantics, mappings will always be a bit wobbly. There are two important kinds of review which are very different:

+
    +
  1. False positive review (wrong mappings). The goal here is to identify mappings that do not work for our use case, or do not use the correct semantic mapping relation. For example orange juice [wikidata:Q219059] and orange juice (unpasteurized) [FOODON:00001277] may not be considered as the same thing in the sense of skos:exactMatch.
  2. +
  3. False negative review (missing mappings). The goal here is to understand if we can do anything to improve the matching process by tuning it. For very simple matchers like oak lexmatch this usually involves hacking labels and synonyms by removing or replacing words. More sophisticated matchers like Agreement Maker Light (AML) have many more tuning options, and it requires patience and expertise to find the right ones. One good approach here is to include semantically or lexically similar matches in the results, and review if generally consistent patterns of lexical variation can be spotted. For example: orange juice (liquid) [FOODON:00001001] seems to be exactly what orange juice [wikidata:Q219059] is supposed to mean. The labels are not the same, but lexically similar: a simple lexical distance metric like Levenshtein could have been used to identify these.
  4. +
+

Tip: always keep a clear visible list of unmapped classes around to sanity check how good your mapping has been so far.

+

Automated matching

+

There are many (many) tools out there that have been developed for entity matching. A great overview can be found in Euzenats Ontology Matching. Most of the matchers apply a mix of lexical and semantic approaches.

+

As a first pass, we usually rely on a heuristic that an exact match on the label is strong evidence that the two entities correspond to the same thing. Obviously, this cannot always be the case Apple (the fruit) and Apple (the company) are two entirely different things, yet a simple matching tool (like OAK lexmatch) would return these as matching. The reason why this heuristic works in practice is because we usually match between already strongly related semantic spaces, such as two gene databases, two fruit ontologies or two disease terminologies. When the context is narrow, lexical heuristics have a much lower chance to generate excessively noisy mappings.

+

After lexical matchings are created, other techniques can be employed, including syntactic similarity (match all entities which have labels that are more than 80% similar and end with disease) and semantic similarity (match all entities whose node(+graph)-embedding have a cosine similarity of more than 80%). Automated matching typically results in a large number of false positives that need to be filtered out using more sophisiticated approaches for mapping reconciliation.

+

+

A typical workflow for matching

+

mapping workflow

+
    +
  1. Collecting existing mappings from external sources, if they exist.
  2. +
  3. Generating mapping candidates using automated matchers (seed mappings).
  4. +
  5. Iteratively refining mappings while keeping track of:
      +
    • Anchor mappings (known correct mappings)
    • +
    • Overestimation mappings (mapping candidates)
    • +
    • Negative mappings (known false mappings, as deterimed by tools or human review)
    • +
    +
  6. +
+

The refinement step may involve automated approaches that are sensitive to the logical content of the sources involved (for example by ensuring that the result does not result in equivalence cliques, or unsatisfiable classes), but more often than not, human curators are employed to curate the mapping candidates generated by the various automated approaches.

+

+

Some examples of domain-specific mapping of importance to the biomedical domain

+

Phenotype ontology mappings

+

Mapping phenotypes across species holds great promise for leveraging the knowledge generated by Model Organism Database communities (MODs) for understanding human disease. There is a lot of work happening at the moment (2021) to provide standard mappings between species specific phenotype ontologies to drive translational research (example). Tools such as Exomiser leverage such mappings to perform clinical diagnostic tasks such as variant prioritisation. Another app you can try out that leverages cross-species mappings is the Monarch Initiatives Phenotype Profile Search.

+

Disease ontology mappings

+

Medical terminology and ontology mapping is a huge deal in medical informatics (example). Mondo is a particularly rich source of well provenanced disease ontology mappings.

+

Further reading

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/getting-hands-on/index.html b/lesson/getting-hands-on/index.html new file mode 100644 index 000000000..b3e27f6ac --- /dev/null +++ b/lesson/getting-hands-on/index.html @@ -0,0 +1,3858 @@ + + + + + + + + + + + + + + + + + + + + + + + + Getting Hands on with Ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Getting Hands on with Ontologies

+

Prerequisites

+

Sign up for a free GitHub account

+

Preparation

+

No advance preparation is necessary.

+

Optional: If you are unfamiliar with ontologies, this introduction to ontologies explanation may be helpful.

+

What is delivered as part of the course

+

Description: The purpose of this lesson is to train biomedical researchers on how to find a term, what to do if they find too many terms, how to decide on which term to use, and what to do if no term is found.

+

Learning objectives

+
    +
  • Understand open source ontology community development
  • +
  • Identify the best ontology or ontologies for annotation of biomedical data
  • +
  • Find ontology terms and chose the best ontology term
  • +
  • Make new term requests
  • +
+

Lesson

+

Introduction to Community Based Ontology Development

+

This how to guide on How to be an Open Science Engineer - maximizing impact for a better world has a lot of details about the philosophy behind open science ontology engineering. Some key points are summarized below.

+
    +
  • The ontologies that I will promote in this lesson are part of the OBO Foundry, a community of ontology developers that are committed to developing open, freely available, community ontologies under a share set of guiding principles, that ensure the ontologies are interoperable, scientifically accurate, amongst other qualities.
  • +
  • A key feature of the success of our ontologies is the community who contributes to them. (I claim they are successful because they are widely used in biomedical curation, databases, bioinformatics and computational analyses.)
  • +
  • Principle of Collaboration:
      +
    • These ontologies rely on community contributions and many are not funded. We value your expertise in making new term requests, requesting changes or commenting on existing tickets.
    • +
    • The OBO Academy has a lot of self-paced learning material, if you are inclined to learn how to contribute directly to ontologies.
    • +
    • Join Slack channels and email lists.
    • +
    • Reduce work for others as much as possible by communicating clearly.
    • +
    • Be positive and generous with gratitude and attribution.
    • +
    • Promote truly open communication: Create public tickets which can be searched and referred to later.
    • +
    +
  • +
  • Principle of Upstream Fixing
      +
    • Report an bugs or errors to the source ontology.
    • +
    • Make term requests for any missing terms.
    • +
    +
  • +
  • Principle of No Ownership:
      +
    • Ensure that you see your issues through to the end.
    • +
    • Feel free to nudge ontology curators.
    • +
    +
  • +
+

Where to find ontology terms and how to chose the right terms

+

See lesson on Using Ontologies and Ontology Terms

+

How to make new term requests

+

See How to guide on Make term requests to existing ontologies

+

Exercise

+
    +
  1. Sign up for a GitHub account if you do not already have one. (Some of the exercises can be done without being signed into GitHub).
  2. +
  3. Search for an ontology term in OLS:
      +
    • Search for 'exhaust exposure'. Note how many results you get. Do you have a sense of how to select the appropriate term for your annotations?
    • +
    +
  4. +
  5. Make a new term request for a missing term:
      +
    • Suppose you want a more general term than already exists: exhuast exposure. Using the instructions in How to guide on Make term requests to existing ontologies, make a new term request to an appropriate GitHub repository for an ontology, such as ECTO. (Note, since this is just for practice, please do not submit the ticket.)
    • +
    +
  6. +
+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/hackathon/index.html b/lesson/hackathon/index.html new file mode 100644 index 000000000..b79ff2ec5 --- /dev/null +++ b/lesson/hackathon/index.html @@ -0,0 +1,3717 @@ + + + + + + + + + + + + + + + + + + + + + + + + Hacking the OBOOK - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

OBO Academy Hackathon

+

Goals/Learning outcomes

+
    +
  • Strengthen social workflows in creating Pull Requests (PRs), including:
      +
    • creating a PR
    • +
    • writing a description of the PR
    • +
    • Reviewing a PR
    • +
    • Adding suggestions using suggestion mode
    • +
    +
  • +
  • Foster a sense of shared efforts in open science
  • +
+

Prerequisites

+

Pull Requests lesson

+

Outline

+
    +
  1. (Nico) Show structure of OBOOK
  2. +
  3. Naming conventions of How To guides
  4. +
  5. How to create a new how to guide
  6. +
  7. (Nicole) Present the issues: OBOOK need volunteer
  8. +
  9. (Students) Use Slack to find a buddy to review your PRs during this Hackathon
  10. +
  11. Work through issues together
  12. +
+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/modelling-with-object-properties/index.html b/lesson/modelling-with-object-properties/index.html new file mode 100644 index 000000000..0c2e29054 --- /dev/null +++ b/lesson/modelling-with-object-properties/index.html @@ -0,0 +1,3793 @@ + + + + + + + + + + + + + + + + + + + + + + + + Modelling with Object Properties - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + + + + + + + +

Modeling with Object Properties

+

In this lesson, we will give an intuition of how to work with object properties in OBO ontologies, also referred to as "relations".

+

We will cover, in particular, the following subjects:

+
    +
  1. What is the role of object properties in OBO ontologies, and how should we model them?
  2. +
  3. What is the relation ontology (RO), and how do we add object properties to it?
  4. +
+

+

Preparation

+

We have worked with the University of Manchester to incorporate the Family History Knowledge Base Tutorial fully into OBO Academy.

+

This is it: OBOAcademy: Family History - Modelling with Object Properties.

+

In contrast to the Pizza tutorial, the Family history tutorial focuses on modelling with individuals. Chapters 4, 5, 8 and 9 are full of object property modelling, and are not only great to get a basic understanding of using them in your ontology, but also give good hints at where OWL and object properties fall short. We refer to the FHKB in the following and expect you to have completed at least chapter 5 before reading on.

+

The Role of Object Properties in the OBO-sphere

+

To remind ourselves, there are three different types of relations in OWL:

+
    +
  1. Data properties (DatatypeProperty) connect your classes and individuals to data values, such as strings or numbers. In OBO, these are the least frequently used kinds of properties, used for example by CIDO and ONS.
  2. +
+

For some example usage, run the following query in the ontobee OLS endpoint:

+

http://www.ontobee.org/sparql

+
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+prefix owl: <http://www.w3.org/2002/07/owl#>
+SELECT distinct *
+WHERE {
+GRAPH ?graph_uri
+{ ?dp rdf:type owl:DatatypeProperty .
+  ?sub ?dp ?obj }
+}
+
+

Note that many uses of data properties across OBO are a bit questionable, for example, you do never want to attach a modification dates or similar to your classes using data properties, as these fall under OWL semantics. This means that logically, if a superclass has a relation using a DatatypeProperty, then this relation _holds for all subclasses of that class as well.

+
    +
  1. +

    Annotation properties are similar to data properties, but they are outside of OWL semantics, i.e. OWL reasoners and reasoning do not care, in fact ignore, anything related to annotation properties. This makes them suitable for attaching metadata like labels etc to our classes and properties. We sometimes use annotation properties even to describe relationships between classes if we want reasoners to ignore them. The most typical example is IAO:replaced_by, which connects an obsolete term with its replacement. Widely used annotation properties in the OBO-sphere are standardised in the OBO Metadata Ontology (OMO).

    +
  2. +
  3. +

    The main type of relation we use in OBO Foundry are object properties. Object properties relate two individuals or classes with each other, for example:

    +
  4. +
+
OWLObjectPropertyAssertion(:part_of, :heart, :cardiovascular_system)
+
+

In the same way as annotation properties are maintained in OMO (see above), object properties are maintained in the Relation Ontology (RO).

+

Object properties are of central importance to all ontological modelling in the OBO sphere, and understanding their semantics is critical for any put the most trivial ontologies. We assume the reader to have completed the Family History Tutorial mentioned above.

+

+

Object property semantics in OBO

+

In our experience, these are the most widely used characteristics we specify about object properties (OP):

+
    +
  1. Sub-property: if an OP is a sub-property of another parent OP, it inherits all its semantic characteristics. Most importantly: if OP1 is a sub-property of OP2, then, if (a)--[OP1]-->(b), we infer that (a)--[OP2]-->(b).
  2. +
  3. Domain: if OP has a domain C, it means that every time (a)--[OP]-->(b), (a) must be a C. For example, ecologically co-occurs with in RO has the domain 'organism or virus or viroid', which means that whenever anything ecologically co-occurs with something else, it will be inferred to be a 'organism or virus or viroid'.
  4. +
  5. Range: if OP has a range C, it means that every time (a)--[OP]-->(b), (b) must be a C. For example produced by has the domain material entity. Note that in ontologies, ranges are slightly less powerful then domains: If we have a class Moderna Vaccine which is SubClass of 'produced by' some 'Moderna' we get that Moderna Vaccine is a material entity due to the domain constraint, but NOT that Moderna is a material entity due to the range constraint (explanation to this is a bit complicated, sorry).
  6. +
  7. Transitivity: if an OP is transitive, it means that if (a)--[OP]-->(b)--[OP]-->(c), (a)--[OP]-->(c). For example, if the eye is part of the head, which is part of the body, we can infer that the eye must be part of the body.
  8. +
  9. Property chains: Similar to transitive properties, property chains allow us to bridge across multiple properties. The FHKB tutorial above is all about amazing property chains so you should have a deep understanding of these if you followed the tutorial.
  10. +
+

Other characteristics like functionality and symmetry are used across OBO ontologies, but not nearly to the same extend as the 5 described above.

+

The Relation Ontology (RO)

+

The Relation Ontology serves two main purposes in the OBO world:

+
    +
  1. As a place to standardise object properties. The idea is this: many ontologies are modelling mereological relations, such as partonomies, which requires relationships such as "part of" and "has part". To ensure that ontologies are interoperable, we need to make sure that all ontologies use the same "part of" relationship. Historically this is not always been true, and still is not. At the time of this writing, running:
  2. +
+
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+prefix owl: <http://www.w3.org/2002/07/owl#>
+SELECT distinct ?graph_uri ?s
+WHERE {
+GRAPH ?graph_uri
+{ ?s rdf:type owl:ObjectProperty ;
+   rdfs:label "part of" . }
+}
+
+

On the OntoBee SPARQL endpoint still reveals a number of ontologies using non-standard part-of relations. In our experience, most of these are accidental due to past format conversions, but not all. This problem was much worse before RO came along, and our goal is to unify the representation of key properties like "part of" across all OBO ontologies. The OBO Dashboard checks for object properties that are not aligned with RO.

+
    +
  1. As a place to encode and negotiate object property semantics. Object properties (OP) can have domains and ranges, can have characteristics such as functionality and transitivity, see above. Arguing the exact semantics of an OP can be a difficult and lengthy collaborative process, esp. since OP semantics can have a huge impact on ontology reasoning. Detailed RO documentation (modelling patterns and practices) can be found in here. The process of how relationships are added to RO is discussed in the next section.
  2. +
+

Adding relationships to RO

+

To add a relationship we usually follow the following process. For details, please refer to the RO documentation.

+
    +
  1. Check whether the OP is already in RO. Search for synonyms - often the relationship you are looking exist, but under a different name. If you cant find the exact OP, see whether you can find similar OPs - this may help you also identify suitable parent OPs.
  2. +
  3. Make an RO issue. Take care to not only describe the name of your relationship, but also intended application areas with examples, a good definition, potential parent relationships, domains and ranges. The more detail you provide, the easier it will be for the community to review your request.
  4. +
  5. Make a pull request. This involves the same steps as usual. If you are unsure what annotations need to be added and how to reflect the intended semantics, it may be useful to look at past pull requests.
  6. +
  7. Join our quarterly RO calls and check out the RO documentation.
  8. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/ontology-design/index.html b/lesson/ontology-design/index.html new file mode 100644 index 000000000..de98543c7 --- /dev/null +++ b/lesson/ontology-design/index.html @@ -0,0 +1,4064 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Design - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Ontology Design

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+

Participants will need to have access to the following resources and tools prior to the training:

+
    +
  • GitHub account - register for a free GitHub account here
  • +
  • Protege - Install Protege 5.5, download it here
  • +
  • Install ELK 0.5
  • +
  • Install GitHub Desktop Please make sure you have some kind of git client installed on your machine. If you are new to Git, please install GitHub Desktop
  • +
+

Preparation

+ +

What is delivered as part of this course

+

Description: This course will cover reasoning with OWL.

+

Learning objectives

+

At the end of this lesson, you should know how to do:

+
    +
  1. Add existential restrictions
  2. +
  3. Add defined classes
  4. +
  5. Add disjoint axioms
  6. +
  7. Debug unsatisfiable classes
  8. +
+

Tutorials

+

OpenHPI Course Content

+
    +
  1. Ontologies and Logic Videos 3.0-3.10 | Duration: ~3.5 hrs
  2. +
  3. OWL, Rules, and Reasoning Videos 4.0-4.8 | Duration: ~2.7 hrs
  4. +
+

Additional Materials and Resources

+ +

Semantic Engineer Toolbox

+ +

Contributors

+ +

Acknowledgement

+ +

OWL class restrictions

+

In OWL, we use object properties to describe binary relationships between two individuals (or instances). We can also use the properties to describe new classes (or sets of individuals) using restrictions. A restriction describes a class of individuals based on the relationships that members of the class participate in. In other words, a restriction is a kind of class, in the same way that a named class is a kind of class.

+

For example, we can use a named class to capture all the individuals that are idiopathic diseases. But we could also describe the class of idiopathic disease as all the instances that are 'has modifier' idiopathic disease.

+

In OWL, there are three main types of restrictions that can be placed on classes. These are quantifier restriction, cardinality restrictions, and hasValue restriction. In this tutorial, we will initially focus on quantifier restrictions.

+

Quantifier restrictions are further categorized into two types, the existential and the universal restriction.

+
    +
  • Existential restrictions describe classes of individuals that participate in at least one relationship along a specified property to individuals that are members of a specified class. For example, the class of individuals that have at least one ( some ) 'has modifier' relationship to members of the idiopathic disease class. In Protege, the keyword 'some' is used to denote existential restrictions.
  • +
  • Universal restrictions describe classes of individuals that for a given property only have relationships along this property to individuals that are members of a specified class. For example, we can say a cellular component is capable of many functions using the existential quantifier, however, OWL semantics assume that there could be more. We can use the universal quantifier to add closure to the existential. That is, we can assert that a cellular component is capable of these functions, and is only capable of those functions and no other. Another example is that the process of hair growth is found only in instances of the class Mammalia. In Protege the keyword 'only' is used.
  • +
+

In this tutorial, we will deal exclusively with the existential (some) quantifier.

+

Superclass restrictions

+

Strictly speaking in OWL, you don't make relationships between classes, however, using OWL restrictions we essentially achieve the same thing.

+

We wanted to capture the knowledge that the named class 'idiopathic achalasia' is an idiopathic disease. In OWL speak, we want to say that every instance of an ' idiopathic achalasia' is also an instance of the class of things that have at least one 'has modifier' relationship to an idiopathic disease. In OWL, we do this by creating an existential restriction on the idiopathic achalasia class.

+
    +
  1. In the Entities tab, select 'idiopathic achalasia' in the class hierarchy and look at its current class description in the bottom right box.
  2. +
  3. Note that there are two superclasses (as denoted by the SubClass Of list). ''gastroesophageal disease'' and 'has modifier' some idiopathic.
  4. +
  5. Run the reasoner.
  6. +
  7. You should see that this class is now inferred to be an idiopathic disease because of this SubClassOf (superclass) restriction.
  8. +
+

Equivalence Axioms and Automatic classification

+

This example introduces equivalence axioms or defined classes (also called logical definitions) and automatic classification.

+

The example involves classification of Mendelian diseases that have a monogenic (single gene) varation. These equivalence axioms are based off the Mondo Design Pattern disease_series_by_gene.

+

Constructs:

+
    +
  • and (intersection)
  • +
  • equivalence (logical definitions)
  • +
  • existential restrictions (e.g. 'disease has basis in dysfunction of')
  • +
+

Add an equivalence axiom to an existing Mondo term

+
    +
  1. Create a new branch and open (or re-open) mondo-edit.obo
  2. +
  3. Navigate to the class 'cardioacrofacial dysplasia 1'
  4. +
  5. According to OMIM, this disease is caused by a variation in the gene PRKACA.
  6. +
  7. We want to add an equivalence axiom that says every instance of this class is a type of 'cardioacrofacial dysplasia' that has dysfunction in the PRKACA gene.
  8. +
  9. To do this, click the + next to Equivalent To in the lower right Description box.
  10. +
  11. Add the following equivalence axiom: + 'cardioacrofacial dysplasia' and ('disease has basis in dysfunction of' some PRKACA)
  12. +
  13. Run the reasoner.
  14. +
  15. You shouldn't see any change, but try deleting the superclass assertion to 'cardioacrofacial dysplasia' and re-running the reasoner.
  16. +
  17. You should see that 'cardioacrofacial dysplasia' is an inferred superclass.
  18. +
  19. Undo the last change, save your work, commmit, and create a pull request.
  20. +
+

Adding classes and automatically classifying them

+

For teaching purposes, let's say we need a new class that is 'fungal allergy'.

+
    +
  1. Create a new branch and re-open mondo-edit.obo
  2. +
  3. Add a new term under owl:Thing named 'fungal allergy'.
  4. +
  5. Following the design pattern allergy.yaml, add the text definition, synonym and equivalentTo axiom, using the substance ECTO_0000524 'exposure to mycotoxin'.
  6. +
  7. Run the reasoner and note where the class is automatically classified.
  8. +
  9. Create a pull request and note in the PR what the parent class is.
  10. +
+

Debugging automatic classifications

+
    +
  1. On the same branch, add a new term under owl:Thing named 'oral cavity neoplasm'.
  2. +
  3. Following the design pattern neoplasm_by_origin, add the term label and the equivalence axiom.
  4. +
  5. Run the reasoner and note where the term in automatically classified. You should see it is under owl:Nothing.
  6. +
  7. Click the ? next to owl:Nothing in the Description box to see the explanation.
  8. +
  9. Can you determine why this is an unsatisfiable class?
  10. +
  11. Create a pull request and add a comment explaining why this is unsatisfiable.
  12. +
+

Disjointness

+

By default, OWL assumes that these classes can overlap, i.e. there are individuals who can be instances of more than one of these classes. We want to create a restriction on our ontology that states these classes are different and that no individual can be a member of more than one of these classes. We can say this in OWL by creating a disjoint classes axiom.

+
    +
  1. Create a branch in the Mondo repo (name it: disjoint-[your initials]. For example: disjoint-nv)
  2. +
  3. Open the mondo-edit.obo file
  4. +
  5. Per this ticket, we want to assert that infectious disease and syndromic disease are disjoint.
  6. +
  7. To do this first search for and select the infectious disease class.
  8. +
  9. In the class 'Description' view, scroll down and select the (+) button next to Disjoint With. You are presented with the now familiar window allowing you to select, or type, to choose a class. In the Expression editor, add 'syndromic disease' as disjoint with 'infectious disease'.
  10. +
  11. Run the ELK reasoner.
  12. +
  13. Scroll to the top of your hierarchy and note that owl:Nothing has turned red. This is because there are unsatisfiable classes.
  14. +
+

Review and fix one unsatisfiable class

+

Below we'll review an example of one class and how to fix it. Next you should review and fix another one on your own and create a pull request for Nicole or Nico to review. Note, fixing these may require a bit of review and subjective decision making and the fix described below may not necessarily apply to each case.

+
    +
  1. Review Bickerstaff brainstem encephalitis: To understand why this class appeared under owl:Nothing, first click the ? next to owl:Nothing in the Description box. (Note, this can take a few minutes).
  2. +
+

image

+
    +
  1. The explanation is displayed above - it is because this class is a descedent of Guillain-Barre syndrome, which is a child of syndromic disease.
  2. +
  3. Next, we have to ask if Bickerstaff brainstem encephalitis is an appropriate child of regional variant of Guillain-Barre syndrome. Note, Mondo integrates several disease terminologies and ontologies, and brought in all the subclass hierarchies from these source ontologies. To see the source of this superclass assertion, click the @ next to the assertion.
  4. +
  5. This source came from Orphanet, see below.
  6. +
+

image

+
    +
  1. Based on the text definition, there does not seem to be any suggestion that this disease is a type of Guillain-Barre syndrome.
  2. +
  3. Assuming that this disease is not a type of Guillain-Barre syndrome, we should exclude the superclass regional variant of Guillain-Barre syndrome (see this paper and this paper. It seems a bit unclear what the relationship of BBE is to Guillain-Barre syndrome. This also brings into the question if a disease can be syndromic and an infectious disease - maybe this disjoint axiom is wrong, but let's not worry about this for the teaching purposes.)
  4. +
  5. To exclude a superclass, follow the instructions here.
  6. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/ontology-development/index.html b/lesson/ontology-development/index.html new file mode 100644 index 000000000..8caf728bc --- /dev/null +++ b/lesson/ontology-development/index.html @@ -0,0 +1,3775 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Development - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Development: Release Management, Quality Control and Collaborative Methods

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+
    +
  • You have a GitHub account
  • +
  • You have set up docker and installed the ODK (how to)
  • +
+

Preparation

+ +

What is delivered as part of the course

+

Learning objectives

+

Tutorials

+

Additional materials and resources

+

Contributors

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/ontology-fundamentals/index.html b/lesson/ontology-fundamentals/index.html new file mode 100644 index 000000000..c3a820166 --- /dev/null +++ b/lesson/ontology-fundamentals/index.html @@ -0,0 +1,3816 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Fundamentals - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontologies: Fundamentals

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+
    +
  • Install Protégé
  • +
+

Preparation

+
    +
  • Complete OpenHPI Week 5: Ontology Engineering videos 5.1, 5.2, and 5.4 - 5.6 (~2.5 hours)
  • +
  • We are skipping 5.3: Ontology Learning and both sections on MORE Ontology Evaluation (5.7 and 5.8)
  • +
  • Complete part of the Ontologies 101 Tutorial (~2 hours)
  • +
  • Clone the Ontologies 101 repository, then open the folder BDK14_exercises from your file system
  • +
  • Open basic-subclass/chromosome-parts.owl in Protégé, then do the following exercises: +
  • +
  • Open basic-restriction/er-sec-complex.owl in Protégé, then do the following exercise: +
  • +
  • Open basic-dl-query/cc.owl in Protégé, then do the following exercises:
      +
    • DL Query Tab - note that owl:Nothing is defined as the very bottom node of an ontology, therefore the DL query results will show owl:Nothing as a subclass. This is expected and does not mean there is a problem with your ontology! It's only bad when something is a subclass of owl:Nothing and therefore unsatisfiable (more on that below).
    • +
    • Basic DL Queries
    • +
    +
  • +
  • Open basic-classification/ubiq-ligase-complex.owl in Protégé, then do the following exercises: +
  • +
  • Read (I can't get no) satisfiability (~10 minutes)
  • +
  • Optional: Open a new ontology in Protégé. Try creating an inconsistent ontology using the classes and instances in the first Pets example (hint: you'll also need to create the "eats" object property)... what happens when you run the reasoner? Don't spend too much time on this if you get stuck, we'll look at an example of an inconsistent ontology in our session.
  • +
+

What is delivered as part of the course

+

Description: Learn the fundamentals of ontologies.

+

Learning objectives

+
    +
  • OpenHPI course review: questions? (~15 minutes)
  • +
  • OWL ontology serializations ("formats") (~15 minutes)
  • +
  • Converting between serializations with robot convert (Review; ~15 minutes)
  • +
  • Creating modules from existing ontologies (~30 minutes)
  • +
  • What is a module?
  • +
  • How do we use the modules in our ontologies?
  • +
  • Extraction methods: MIREOT vs. SLME
  • +
  • Creating a module to import with robot extract (Review; ~15 minutes)
  • +
  • Ontology design patterns (~15 minutes)
  • +
  • Real world example: Ontology for Biomedical Investigations (OBI)
  • +
  • Using design patterns in robot template (Review; ~15 minutes)
  • +
  • Including your modules in your ontology as imports
  • +
+

Tutorials

+

Additional materials and resources

+

Contributors

+
    +
  • add name/ORCID here
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/ontology-pipelines/index.html b/lesson/ontology-pipelines/index.html new file mode 100644 index 000000000..695d330a7 --- /dev/null +++ b/lesson/ontology-pipelines/index.html @@ -0,0 +1,3756 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Pipelines with ROBOT - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Pipelines with ROBOT and SPARQL

+

Warning

+

These materials are under construction and may be incomplete.

+

Prerequisites

+
    +
  • Install ROBOT so you can use it outside of Docker (scroll down to the end of the ROBOT page to find the Windows instructions)
  • +
  • Optional Install ODK. The ODK includes ROBOT. In the more advanced parts of the course, you will need the ODK installed for some of the other dependencies it includes, and for Windows users it is often easier to follow the tutorials from inside the docker container rather than the Windows CMD.
  • +
  • Familiarise yourself with the ROBOT documentation, to the point that you are aware of the various commands that exist.
  • +
+

Tutorials

+ +

What is delivered as part of the course

+

There are two basic ways to edit an ontology: +1. Manually, using tools such as Protege, or +2. Using computational tools such as ROBOT.

+

Both have their advantages and disadvantages: manual curation is often more practical when the required ontology change follows a non-standard pattern, such as adding a textual definition or a synonym, while automated approaches are usually much more scalable (ensure that all axioms in the ontology are consistent, or that imported terms from external ontologies are up-to-date or that all labels start with a lower-case letter).

+

Here, we will do a first dive into the "computational tools" side of the edit process. We strongly believe that the modern ontology curator should have a basic set of computational tools in their Semantic Engineering toolbox, and many of the lessons in this course should apply to this role of the modern ontology curator.

+

ROBOT is one of the most important tools in the Semantic Engineering Toolbox. For a bit more background on the tool, please refer to the paper ROBOT: A Tool for Automating Ontology Workflows.

+

We also recommend to get a basic familiarity with SPARQL, the query language of the semantic web, that can be a powerful combination with ROBOT to perform changes and quality control checks on your ontology.

+ + +

Additional materials and resources

+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/ontology-term-use/index.html b/lesson/ontology-term-use/index.html new file mode 100644 index 000000000..f681e3bbf --- /dev/null +++ b/lesson/ontology-term-use/index.html @@ -0,0 +1,4248 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Term Use - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Using Ontologies and Ontology Terms

+

Warning

+

These materials are under construction and may be incomplete.

+

Prerequisites

+
    +
  • Sign up for a free GitHub account
  • +
+

Preparation

+
    +
  • None
  • +
+

What is delivered as part of the course

+

Description: Using ontology terms for annotations and structuring data.

+

Learning objectives

+
    +
  1. Explain why ontologies are useful
  2. +
  3. Find good ontologies: ontology repositories, OBO
  4. +
  5. Find terms using ontology browsers
  6. +
  7. Assess ontologies for use: license, quality
  8. +
  9. Map local terminology to ontology terms
  10. +
  11. Identify missing terms
  12. +
  13. Make term requests to existing ontologies
  14. +
  15. Understand the differences between IRIs, CURIEs, and labels
  16. +
+

Tutorials

+
    +
  • None
  • +
+

Additional materials and resources

+ +

Contributors

+ +

+

1. Why ontologies are useful

+

Ontologies provide a logical classification of information in a particular domain or subject area. Ontologies can be used for data annotations, structuring disparate data types, classifying information, inferencing and reasoning across data, and computational analyses.

+

Difference between a terminology and an ontology

+

Terminology

+

A terminology is a collection of terms; a term can have a definition and synonyms.

+

Ontology

+

An ontology contains a formal classification of terminology in a domain that provides textual and machine readable definitions, and defines the relationships between terms. An ontology is a terminology, but a terminology is not (necessarily) an ontology.

+

+

2. Finding good ontologies

+

Numerous ontologies exist. Some recommended sources to find community developed, high quality, and frequently used ontologies are listed below.

+
    +
  • OBO Foundry. Read more below
  • +
  • The Ontology Lookup Service (OLS). The OLS contains over 200 ontologies.
  • +
  • BioPortal. BioPortal aggregates almost 900 biomedical ontologies, and provides a search interface to look up terms. It is a popular repository for ontologies, but as only a fraction of the ontologies are reviewed by the OBO Foundry, you should carefully review any ontologies found on BioPortal before committing to use them.
  • +
  • Ontobee. Ontobee indexes all 200+ OBO Foundry ontologies and is the default browser for OBO: For example, when you click http://purl.obolibrary.org/obo/IAO_0000112, you will be redirected to the a page in the Ontobee browser that describes the annotation property example of usage.
  • +
+

+

3. Ontology repositories

+

OBO Foundry

+

The OBO Foundry is a community of ontology developers that are committed to developing a library of ontologies that are open, interoperable ontologies, logically well-formed and scientifically accurate. OBO Foundry participants follow and contribute to the development of an evolving set of principles including open use, collaborative development, non-overlapping and strictly-scoped content, and common syntax and relations, based on ontology models that work well, such as the Gene Ontology (GO).

+

The OBO Foundry is overseen by an Operations Committee with Editorial, Technical and Outreach working groups.

+

Find terms using ontology browsers

+

Various ontology browsers are available, we recommend using one of the ontology browsers listed below.

+ +

+

4. Assessing ontologies for use

+

Some considerations for determining which ontologies to use include the license and quality of the ontology.

+

License

+

Licenses define how an ontology can legally be used or reused. One requirement for OBO Foundry Ontologies is that they are open, meaning that the ontologies are openly and freely available for use with acknowledgement and without alteration. OBO ontologies are required to be released under a Creative Commons CC-BY license version 3.0 or later, OR released into the public domain under CC0. The license should be clearly stated in the ontology file.

+

Quality

+

Some criteria that can be applied to determine the quality of an ontology include:

+
    +
  • Is there an ontology tracker to report issues? All open ontologies should have some form of an issue tracker to report bugs, make new term requests or request other changes to the ontology. Many ontologies use GitHub to track their issues.
  • +
  • Is it currently active? Are there a large number of open tickets on the ontology tracker that have not been commented on or otherwise addressed? Are the tickets very old, have been sitting for years?
  • +
  • Commmunity involvement On the issue tracker, is there evidence of community involvement, such as issues and comments from outside community members?
  • +
  • Scientifically sound Does the ontology accurately represent the domain in a scientifically sound way?
  • +
+

How to determine which is the right ontology to use?

+
    +
  • There are multiple ontologies that exist, start by selecting the appropriate ontology, then search and restrict your search to that ontology.
  • +
  • Recommend using ontologies that are open and interoperable. Focusing on OBO foundry ontologies are a good place to start
  • +
  • Make informed decision about which ontology to use
  • +
  • Maybe the ontology you want to use does not have the term you want, so make a term request to that ontology
  • +
+

+

5. Mapping local terminology to ontology terms

+

Data can be mapped to ontology terms manually, using spreadsheets, or via curation tools such as:

+ +

+

6. Identifying missing terms

+

The figure below by Chris Mungall on his blog post on How to select and request terms from ontologies + describes a workflow on searching for identifying missing terms from an ontology.

+

term search and request workflow

+

+

7. Make term requests to existing ontologies

+

See separate lesson on Making term requests to existing ontologies.

+

+

8. Differences between IRIs, CURIEs, and labels

+

URI

+

A uniform resource identifier (URI) is a string of characters used to identify a name or a resource.

+

URL

+

A URL is a URI that, in addition to identifying a network-homed resource, specifies the means of acting upon or obtaining the representation.

+

A URL such as this one:

+

https://github.com/obophenotype/uberon/blob/master/uberon_edit.obo

+

has three main parts:

+
    +
  1. Protocol, e.g. https
  2. +
  3. Host, e.g. github.com
  4. +
  5. Path, e.g. /obophenotype/uberon/blob/master/uberon_edit.obo
  6. +
+

The protocol tells you how to get the resource. Common protocols for web pages are http (HyperText Transfer Protocol) and https (HTTP Secure). +The host is the name of the server to contact (the where), which can be a numeric IP address, but is more often a domain name. +The path is the name of the resource on that server (the what), here the Uberon anatomy ontology file.

+

IRI

+

A Internationalized Resource Identifiers (IRI) is an internet protocol standard that allows permitted characters from a wide range of scripts. While URIs are limited to a subset of the ASCII character set, IRIs may contain characters from the Universal Character Set (Unicode/ISO 10646), including Chinese or Japanese kanji, Korean, Cyrillic characters, and so forth. It is defined by RFC 3987.

+

More information is available here.

+

CURIEs

+

A Compact URI (CURIE) consists of a prefix and a suffix, where the prefix stands in place of a longer base IRI.

+

By converting the prefix and appending the suffix we get back to full IRI. For example, if we define the obo prefix to stand in place of the IRI as: +http://purl.obolibrary.org/obo/, then the CURIE +obo:UBERON_0002280 +can be expanded to +http://purl.obolibrary.org/obo/UBERON_0002280, which is the UBERON Anatomy term for ‘otolith’. +Any file that contains CURIEs need to +define the prefixes in the file header.

+

Label

+

A label is the textual, human readable name that is given to a term, class property or instance in an ontology.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/rdf/index.html b/lesson/rdf/index.html new file mode 100644 index 000000000..1eb0a4efd --- /dev/null +++ b/lesson/rdf/index.html @@ -0,0 +1,3775 @@ + + + + + + + + + + + + + + + + + + + + + + + + RDF Fundamentals - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Introduction to RDF

+

First Instructor: James Overton
+Second Instructor: Becky Jackson

+

Warning

+

These materials are under construction and incomplete.

+

Description

+

Modelling and querying data with RDF triples, and working with RDF using tables

+

Topics

+
    +
  • RDF modelling
  • +
  • RDFS
  • +
  • SPARQL
  • +
+

OpenHPI Course Content

+

OpenHPI Linked Data Engineering (2016)

+
    +
  • Lesson 2 RDF
  • +
  • Lesson 4 SPARQL
  • +
+

Software Carpentry Lessons

+

Using Databases and SQL

+

New Material

+ +

Optional material

+ +

Semantic Engineer Toolbox

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/semantic-database-fundamentals/index.html b/lesson/semantic-database-fundamentals/index.html new file mode 100644 index 000000000..b519196b7 --- /dev/null +++ b/lesson/semantic-database-fundamentals/index.html @@ -0,0 +1,3788 @@ + + + + + + + + + + + + + + + + + + + + + + + + Semantic Database Fundamentals - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Semantic Databases: Fundamentals

+

Warning

+

These materials are under construction and incomplete.

+

Prerequisites

+ +

Preparation

+
    +
  • TBD
  • +
+

What is delivered as part of the course

+

Description: Using ontology terms in a database.

+

Learning objectives

+
    +
  • advanced term mapping
  • +
  • ontology terms in SQL
  • +
  • terminology table JOINs, constraints
  • +
  • convert tables to triples
  • +
  • triplestores
  • +
  • knowledge graphs
  • +
+

Tutorials

+
    +
  • in person or video (link videos here as they become available)
  • +
+

Additional materials and resources

+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/templates-for-obo/index.html b/lesson/templates-for-obo/index.html new file mode 100644 index 000000000..5e82ddc52 --- /dev/null +++ b/lesson/templates-for-obo/index.html @@ -0,0 +1,3956 @@ + + + + + + + + + + + + + + + + + + + + + + + + Templates for OBO ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Templating systems for OBO ontologies: a deep dive

+

Ontologies are notoriously hard to edit. This makes it a very high burden to edit ontologies for anyone but a select few. However, many of the contents of ontologies are actually best edited by domain experts with often little or known ontological training - editing labels and synonyms, curating definitions, adding references to publications and many more. Furthermore, if we simply remove the burden of writing OWL axioms, editors with very little ontology training can actually curate even logical content: for example, if we want to describe that a class is restricted to a certain taxon (also known as taxon-restriction), the editor is often capable to select the appropriate taxon for a term (say, a "mouse heart" is restricted to the taxon of Mus musculus), but maybe they would not know how to "add that restriction to the ontology".

+

Tables are great (for a deep dive into tables and triples see here). Scientists in particular love tables, and, even more importantly, can be trained easily to edit data in spreadsheet tools, such as Google Sheets or Microsoft Excel.

+

Ontology templating systems, such as DOSDP templates, ROBOT templates and Reasonable Ontology Templates (OTTR) allow separating the raw data in the ontology (labels, synonyms, related ontological entities, descriptions, cross-references and other metadata) from the OWL language patterns that are used to manifest them in the ontology. There are three main ingredients to a templating system:

+
    +
  1. A way to capture the data. In all the systems we care about, these are tables, usually manifested as spreadsheets in Excel or Google Sheets.
  2. +
  3. A way to capture the template. In ROBOT templates the templates are captured in a header row of the same table that captures the data, in DOSDP templates the templates are captured in a separate YAML file and in OTTR typically the templates are serialised as and RDF-graph in a format like RDF/XML or Turtle.
  4. +
  5. A toolkit that can combine the data and the template to generate OWL axioms and annotations. ROBOT templates can be compiled to OWL using ROBOT, DOSDP templates can be compiled using DOSDP tools and OTTR templates using Lutra.
  6. +
+

In OBO we are currently mostly concerned with ROBOT templates and DOSDP templates. Before moving on, we recommend to complete a basic tutorial in both:

+ +

ROBOT template vs DOSDP template

+

Ontologies, especially in the biomedical domain, are complex and, while growing in size, increasingly hard to manage for their curators. In this section, we will look at some of the key differences of two popular templating systems in the OBO domain: Dead Simple Ontology Design Patterns (DOSDPs) and ROBOT templates. We will not cover the rationale for templates in general in much depth (the interested reader should check ontology design patterns and Reasonable Ontology Templates (OTTR): Motivation and Overview, which pertains to a different system, but applies none-the-less in general), and focus on making it easier for developers to pick the right templating approach for their particular use case. We will first discuss in detail representational differences, before we go through the functional ones and delineate use cases.

+

Structural differences, formats and tools

+

DOSDP templates: structure and format

+

DOSDP separates data and templates into two files: a yaml file which defines the template, and a TSV file which holds the data. Lets look at s example.

+

The template: abnormalAnatomicalEntity

+
pattern_name: abnormalAnatomicalEntity
+pattern_iri: http://purl.obolibrary.org/obo/upheno/patterns/abnormalAnatomicalEntity.yaml
+description: "Any unspecified abnormality of an anatomical entity."
+
+contributors:
+  - https://orcid.org/0000-0002-9900-7880
+  - https://orcid.org/0000-0001-9076-6015
+  - https://orcid.org/0000-0003-4148-4606
+  - https://orcid.org/0000-0002-3528-5267
+
+classes:
+  quality: PATO:0000001
+  abnormal: PATO:0000460
+  anatomical entity: UBERON:0001062
+
+relations:
+  inheres_in_part_of: RO:0002314
+  has_modifier: RO:0002573
+  has_part: BFO:0000051
+
+annotationProperties:
+  exact_synonym: oio:hasExactSynonym
+
+vars:
+  anatomical_entity: "'anatomical entity'"
+
+name:
+  text: "abnormal %s"
+  vars:
+   - anatomical_entity
+
+annotations:
+  - annotationProperty: exact_synonym
+    text: "abnormality of %s"
+    vars:
+     - anatomical_entity
+
+def:
+  text: "Abnormality of %s."
+  vars:
+    - anatomical_entity
+
+equivalentTo:
+  text: "'has_part' some ('quality' and ('inheres_in_part_of' some %s) and ('has_modifier' some 'abnormal'))"
+  vars:
+    - anatomical_entity
+
+

The data: abnormalAnatomicalEntity.tsv

+ + + + + + + + + + + + + + + + + + + + + + + +
defined_classdefined_class_labelanatomical_entityanatomical_entity_label
HP:0040286Abnormal axial muscle morphologyUBERON:0003897axial muscle
HP:0011297Abnormal digit morphologyUBERON:0002544digit
+

ROBOT templates: structure and format

+

ROBOT encodes both the template and the data in the same TSV; after the table header, the second row basically encodes the entire template logic, and the data follows in table row 3.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
IDLabelEQAnatomy Label
IDLABELEC 'has_part' some ('quality' and ('inheres_in_part_of' some %) and ('has_modifier' some 'abnormal'))
HP:0040286Abnormal axial muscle morphologyUBERON:0003897axial muscle
HP:0011297Abnormal digit morphologyUBERON:0002544digit
+

Note that for the Anatomy Label we deliberately left the second row empty, which instructs the ROBOT template tool to completely ignore this column.

+

A discussion on the main differences

+

Ontology Engineering perspective

+

From an ontology engineering perspective, the essence of the difference between DOSDP and ROBOT templates could be captured as follows:

+
DOSDP templates are more about generating annotations and axioms, while ROBOT templates are more about curating annotations and axioms.
+
+

Curating annotations and axioms means that an editor, or ontology curator, manually enters the labels, synonyms, definitions and so forth into the spreadsheet.

+

Generating axioms in the sense of this section means that we try to automatically generate labels, synonyms, definitions and so forth based on the related logical entities in the patterns. E.g., using the example template above, the label "abnormal kidney" would automatically be generated when the Uberon term for kidney is supplied.

+

While both ROBOT and DOSDP can be used for "curation" of annotation of axioms, DOSDP seeks to apply generation rules to automatically generate synonyms, labels, definitions and so forth while for ROBOT template seeks to collect manually curated information in an easy-to-use table which is then compiled into OWL. In other words:

+
    +
  • the average DOSDP user will not write their own labels, definitions and synonyms - they will want those to be generated automatically from a set of simple rules;
  • +
  • the average ROBOT template user will not want automatically generated definitions, labels and synonyms - they will want to capture their own.
  • +
+

Sharing and Re-use

+

However, there is another dimension in which both approaches differ widely: sharing and re-use. DOSDPs by far the most important feature is that it allows a community of developers to rally around a modelling problem, debate and establish consensus; for example, a pattern can be used to say: this is how we model abnormal anatomical entities. Consensus can be made explicit by "signing off" on the pattern (e.g. by adding your ORCId to the list of contributors), and due to the template/data separation, the template can be simply imported using its IRI (for example http://purl.obolibrary.org/obo/upheno/patterns/abnormalAnatomicalEntity.yaml) and re-used by everyone. Furthermore, additional metadata fields including textual descriptions, and more recently "examples", make DOSDP template files comparatively easy to understand, even by a less technically inclined editor.

+

ROBOT templates on the other hand do not lend themselves to community debates in the same way; first of all, they are typically supplied including all data merged in; secondly, they do not provide additional metadata fields that could, for example, conveniently be used to represent a sign off (you could, of course, add the ORCId's into a non-functional column, or as a pipe-separated string into a cell in the first or second row; but its obvious that this would be quite clunky) or a textual description. A yaml file is much easier for a human to read and understand then the header of a TSV file, especially when the template becomes quite large.

+

However, there is a flipside to the strict separation of data and templates. One is that DOSDP templates are really hard to change. Once, for example, a particular variable name was chosen, renaming the variable will require an excessive community-wide action to rename columns in all associated spreadsheets - which requires them all to be known beforehand (which is not always the case). You don't have such a problem with ROBOT templates; if you change a column name, or a template string, everything will continue to work without any additional coordination.

+

Summary

+

Both ROBOT templates and DOSDP templates are widely used. The author of this page uses both in most of the projects he is involved in, because of their different strengths and capabilities. You can use the following rules of thumb to inform your choice:

+

Consider ROBOT templates if your emphasis is on

+
    +
  1. manually curating labels, definitions, synonyms and axioms or other annotations
  2. +
  3. managing your templates in the spreadsheet itself is a concern for you (this is often the case, for example, when turning an existing data table into a ROBOT template ad hoc)
  4. +
+

Consider DOSDP templates if your emphasis is on

+
    +
  1. re-use, community-wide implementation of the same templates and community discussion, you should consider DOSDP templates
  2. +
  3. automatically generating labels, definitions, synonyms from rules in the pattern.
  4. +
+

Detour: Concerns with Managing Tables

+

There is a nice debate going on which questions the use of tables in ontology curation altogether. There are many nuances in this debate, but I want to stylise it here as two schools of thoughts (there are probably hundreds in between, but this makes it easier to follow): The one school (let's call them Tablosceptics) claims that using tables introduces a certain degree of fragility into the development process due to a number of factors, including:

+
    +
  1. losing the immediateness of QC feedback; Table-based development, so the Tablosceptics, encourages lazy editing (adding stuff to a template and then not reviewing the consequence properly, which we will discuss in more depth later).
  2. +
  3. losing track of the ID space (in a multi-table world, it becomes increasingly hard to manage IDs, making sure they are not double used etc) and 3) encouraging bad design (relying more on assertion than inference).
  4. +
+

They prefer to use tools like Protege that show the curator immediately the consequences of their actions, like reasoning errors (unintended equivalent classes, unsatisfiable classes and other unintended inferences). The Tablophile school of thought responds to these accusations in essence with "tools"; they say that tables are essentially a convenient matrix to input the data (which in turns opens ontology curation to a much wider range of people), and it is up to the tools to ensure that QC is run, hierarchies are being presented for review and weird ID space clashes are flagged up. Furthermore, they say, having a controlled input matrix will actually decrease the number of faulty annotations or axioms (which is evidenced by the large number of wrongful annotation assertions across OBO foundry ontologies I see every day as part of my work). At first sight, both template systems are affected equally by the war of the Tablosceptics and the Tablophile. Indeed, in my on practice, the ID space issue is really problematic when we manage 100s and more templates, and so far, I have not seen a nice and clear solution that ensures that no ID used twice unless it is so intended and respects ID spaces which are often semi-formally assigned to individual curators of an ontology.

+

Generally in this course we do not want to take a 100% stance. The author of this page believes that the advantage of using tables and involving many more people in the development process outweighs any concerns, but tooling is required that can provide more immediate feedback when such tables such as the ones presented here are curated at scale.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/lesson/using-disease-and-phenotype-ontologies/index.html b/lesson/using-disease-and-phenotype-ontologies/index.html new file mode 100644 index 000000000..39c9d5ea8 --- /dev/null +++ b/lesson/using-disease-and-phenotype-ontologies/index.html @@ -0,0 +1,3851 @@ + + + + + + + + + + + + + + + + + + + + + + + + Disease and Phenotype Ontologies - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Finding and using Disease and Phenotype Ontologies

+

+

Prerequisites

+
    +
  • None
  • +
+

Preparation

+ +

What is delivered as part of the course?

+

Description: An introduction to the landscape of disease and phenotype terminologies and ontologies, and how they can be used to add value to your analysis.

+

Learning objectives

+ +

Tutorials

+ +

Additional materials and resources

+

Contributors

+ +

+

Major disease and phenotype ontologies that are available

+

A landscape analysis of major disease and phenotype ontologies that are currently available is here (also available in Zenodo here).

+

+

Decide which phenotype or disease ontology to use for different use cases

+

Different ontologies are built for different purposes and were created for various reasons. For example, some ontologies are built for text mining purposes, some are built for annotating data and downstream computational analysis.

+

The unified phenotype ontology (uPheno) aggregates species-specific phenotype ontologies into a unified resource. Several species-specific phenotype ontologies exist, such as the Human Phenotype Ontology, Mammalian Phenotype Ontology (http://www.informatics.jax.org/searches/MP_form.shtml), and many more.

+

Similarly to the phenotype ontologies, there are many disease ontologies that exist that are specific to certain areas of diseases, such as infectious diseases (e.g. Infectious Disease Ontology), cancer (e.g. National Cancer Institute Thesaurus), rare diseases (e.g. Orphanet), etc.

+

In addition, there are several more general disease ontologies, such as the Mondo Disease Ontology, the Human Disease Ontology (DO), SNOMED, etc.

+

Different disease ontologies may be built for different purposes; for example, ontologies like Mondo and DO are intended to be used for classifying data, and downstream computational analyses. Some terminologies are used for indexing purposes, such as the International classification of Diseases (ICD). ICD-11 is intended for indexing medical encounters for the purposes of billing and coding. Some of the disease ontologies listed on the landscape contain terms that define diseases, such as Ontology for General Medical Sciences (OGMS) are upper-level ontologies and are intended for integration with other ontologies.

+

When deciding on which phenotype or disease ontology to use, some things to consider:

+
    +
  • Do you need a more specific ontology, such as a species-specific ontology, or do you need a more general ontology that is cross-species or covers more aspects of diseases?
  • +
  • Is the ontology open and free to use?
  • +
  • Does the description of the ontology describe its intended use? For example, some ontologies are built for text mining purposes, some are built for annotating data and downstream computational analysis.
  • +
  • Is the ontology actively maintained?
  • +
  • Does the ontology contain the terms you need? If not, is there a mechanism to request changes or add new terms? Are the ontology developers responsive to change requests on their tracker?
  • +
  • Is the ontology widely used by the community? You can check things like active contributors on GitHub, usages described on the OBO Foundry page (for example http://obofoundry.org/ontology/mondo.html), published papers, and/or citations.
  • +
+

+

Understand how to leverage disease and phenotype ontologies for advanced data analytics

+

+

How to integrate other data

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/overview/index.html b/overview/index.html new file mode 100644 index 000000000..71dddeeea --- /dev/null +++ b/overview/index.html @@ -0,0 +1,3911 @@ + + + + + + + + + + + + + + + + + + + + + + + + Overview of lessons and tutorials - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Overview

+

Lessons

+

Using Ontologies and Ontology Terms

+
    +
  • Target roles: Database Curators
  • +
  • Skills:
  • +
  • know what ontologies are good for
  • +
  • find good ontologies: ontology repositories, OBO
  • +
  • find good terms: ontology browsers
  • +
  • assess for use: license, quality
  • +
  • map local terms to ontology terms
  • +
  • identify missing terms
  • +
  • use IRIs, prefixes, CURIEs, labels
  • +
  • use Protege?
  • +
+

Contributing to OBO ontologies 1: Protege and Github

+
    +
  • Target roles: Database Curators, Ontology Curator, Ontology Engineer/Developer
  • +
  • Builds on:
  • +
  • Ontology Term Use
  • +
  • Skills:
  • +
  • use GitHub: issues, Pull Requests
  • +
  • understand basic Open Source etiquette
      +
    • reading READMEs
    • +
    +
  • +
  • understand basics of ontology development workflows
  • +
  • understand ontology design patterns
  • +
  • use templates: ROBOT, DOS-DP
  • +
  • basics of OWL
  • +
+

Ontology Fundamentals

+
    +
  • Target roles: Ontology Curators, Ontology Engineer/Developer
  • +
  • Builds on:
  • +
  • Ontology Term Use
  • +
  • Skills:
  • +
  • RDF
  • +
  • RDFS
  • +
  • OWL
  • +
  • Reasoners
  • +
  • basic SPARQL
  • +
  • Turtle, JSON-LD
  • +
+

Linked Data Analysis

+
    +
  • Target roles: Ontology Curators, (Semantic) Software Engineer
  • +
  • Builds on:
  • +
  • Ontology Fundamentals
  • +
  • Skills:
  • +
  • Advanced SPARQL
  • +
  • Term enrichment
  • +
  • Semantic similarity
  • +
  • Named Entity Recognition
  • +
  • more...
  • +
+

Ontology Development

+ +

Semantic Databases

+
    +
  • Builds on:
  • +
  • Ontology Development
  • +
  • Skills:
  • +
  • advanced term mapping
  • +
  • ontology terms in SQL
  • +
  • terminology table JOINs, constraints
  • +
  • convert tables to triples
  • +
  • triplestores
  • +
  • knowledge graphs
  • +
+

Automating Ontology Development Workflows

+
    +
  • Builds on:
  • +
  • Ontology Development
  • +
  • Ontology Pipelines
  • +
  • Skills:
  • +
  • Unix shell
  • +
  • make
  • +
  • Advanced git, GitHub
  • +
  • ROBOT
  • +
  • ODK
  • +
+

Developing an OBO Reference Ontology

+
    +
  • Builds on:
  • +
  • Ontology Development Automation
  • +
  • Skills:
  • +
  • Detailed knowledge of OBO principles and best practises
  • +
  • Use OBO Dashboard
  • +
  • Use OBO Registry
  • +
  • Use PURL system
  • +
+

Tutorials

+ +

How-to guides

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/early-career-data-scientist/index.html b/pathways/early-career-data-scientist/index.html new file mode 100644 index 000000000..f1d27f4a3 --- /dev/null +++ b/pathways/early-career-data-scientist/index.html @@ -0,0 +1,4247 @@ + + + + + + + + + + + + + + + + + + + + + + + + Early Career Data Scientist - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + + + + + + + +

Early Career Data Scientist

+

Description: A collection of videos, tutorials, training materials, and exercises targeted towards any entry-level, early-career trainee interested in learning basic skills in data science.

+

Preparation: no advance preparation is required.

+

1. Data Science Ethics

+

Videos

+

6 videos available here

+

2. Overview: What is Data Science

+

Videos

+
    +
  1. IBM OpenDS4All What is Data Science? with Yucen Wang - Part I
  2. +
  3. IBM OpenDS4All What is Data Science? with Yucen Wang - Part II
  4. +
+

3. Understand and Appreciate Open and FAIR Data

+

Article to read

+
    +
  1. The FAIR Guiding Principles for scientific data management and stewardship
  2. +
+

Exercises

+
    +
  1. Create an ORCID
  2. +
  3. Create wikidata entry about yourself and link to other projects if applicable
  4. +
  5. Share past work on FigShare/Zenodo, etc
  6. +
+

4. Learn GitHub

+

Getting started

+
    +
  1. Create a GitHub account, see https://docs.github.com/en/get-started/signing-up-for-github/signing-up-for-a-new-github-account
  2. +
  3. Download and install GitHub Desktop
  4. +
+

Tutorials

+

Introduction to GitHub

+
    +
  1. GitHub getting started guide
  2. +
  3. Git 101: Git and GitHub for Beginners
  4. +
  5. GitHub fundamentals
  6. +
+

GitHub Issues

+
    +
  1. Learn Markdown syntax
  2. +
  3. GitHub issues
  4. +
  5. About issues
  6. +
  7. Intro to managing and tracking issues in GitHub
  8. +
+

Exercises

+
    +
  1. Help improve this pathway! Make edits to this OBO Academy page and make a pull request. (For example, find typos to fix, add or revise content to this document, etc.)
  2. +
  3. Create a GitHub website by forking this repository: https://github.com/laderast/academic_site_workshop
  4. +
+

5. Learn command line

+

Tutorials

+
    +
  1. Codecademy Learn the Command Line
  2. +
+

Note: for the tutorials below PC users need to install ODK (instructions are linked from the tutorial)

+
    +
  1. Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 1
  2. +
  3. Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 2
  4. +
+

6. Introduction to Ontologies

+

Articles to read

+
    +
  1. Ontology 101 by D. McGuiness
  2. +
  3. Ontological Annotation of Data
  4. +
+

Videos

+
    +
  1. An Introduction to Ontologies by Mark Musen, Stanford University (~15 min)
  2. +
  3. Introduction to Biomedical Ontologies #1: What is an Ontology?, by Jennifer Smith, Rat Genome Database (~15 min)
  4. +
  5. Using ontologies to standardize rare disease data collection, by Nicole Vasilevsky, C-Path (1 hr)
  6. +
+

Tutorials

+
    +
  1. Introduction to ontologies
  2. +
  3. Ontology fundamentals
  4. +
  5. Contributig to ontologies
  6. +
+

7. Basic Data Management

+

Videos

+
    +
  1. Data Preparation and Planning
  2. +
  3. https://dmice.ohsu.edu/bd2k/demo/BDK12-2/presentation_html5.html
  4. +
  5. https://dmice.ohsu.edu/bd2k/demo/BDK12-3/presentation_html5.html
  6. +
  7. Data sharing snafu: Data Sharing and Management Snafu in 3 Short Acts
  8. +
+

Article to read

+
    +
  1. 10 Simple Rules for the Care and Feeding of Scientific Data
  2. +
  3. Big Data: The Future of Biocuration
  4. +
  5. A primer on data sharing
  6. +
  7. Identifiers for the 21st century: How to design, provision, and reuse persistent identifiers to maximize utility and impact of life science data
  8. +
  9. Reproducible and reusable research: Are journal data sharing policies meeting the mark?
  10. +
+

Exercise

+

Data Management 101

+

8. Preparing your CV and Tracking Your Contributions

+

Video

+

Workshop from Biocuration: Workshop - Careers In Biocuration

+

Articles

+

Is authorship sufficient for today’s collaborative research? A call for contributor roles

+

9. Effective Communication in Data Science

+

Tutorials

+

Survival strategies for team communication

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/ontology-contributor/index.html b/pathways/ontology-contributor/index.html new file mode 100644 index 000000000..4de4a2f62 --- /dev/null +++ b/pathways/ontology-contributor/index.html @@ -0,0 +1,3802 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Contributor - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Ontology Contributor Pathway

+

Description: These guidelines are developed for anyone interested in contributing to ontologies to guide how to contribute to OBO Foundry ontologies.

+

Why should you contribute to ontology development efforts?

+

Ontologies are routinely used for data standardization and in analytical analysis, but the ontologies themselves are under constant revisions and iterative development. Building ontologies is a community effort, and we need expertise from different areas:

+
    +
  • Technical expertise
  • +
  • Domain expertise
  • +
  • User experiences
  • +
+

The OBO foundry ontologies are open, meaning anyone can access them and contribute to them. The types of contributions may include reporting issues, identifying bugs, making requests for new terms or changes, and you can also contribute directly to the ontology itself- if you are familiar with ontology editing workflows, you can download our ontologies and make edits on a branch and make a pull request in GitHub.

+

Providing Feedback to an Ontology

+
    +
  • The preferred mechanism for feedback for almost all OBO Foundry ontologies is via the ontology's GitHub issue tracker.
  • +
  • To find the correct GitHub issue tracker, go to the OBO Foundry website website and search for a particular ontology.
  • +
  • For example, click on go (Gene Ontology), and you should see a link to the tracker (https://github.com/geneontology/go-ontology/issues/)
  • +
  • The OBO Metadata also has a link to a contact but this is generally for OBO administrative purposes and should not be used for general questions, new term requests, or general feedback
  • +
  • Some ontologies may have other means of engaging their use community, and these should all be listed in a standard way on the OBO page. This includes mailing lists, slack groups, and Twitter or other social media accounts.
  • +
+

Getting Started with GitHub

+
    +
  1. Open a free account at https://github.com/.
  2. +
  3. GitHub Fundamentals for OBO Engineers. Provides an introduction to GitHub including:
  4. +
  5. how to get started
  6. +
  7. an overview of the organization of GitHub
  8. +
  9. an introduction to Markdown (the simple markup language used in GitHub to format text, like bold or italics)
  10. +
  11. types of content that can be added to GitHub (e.g., you can attach a screenshot to an issue)
  12. +
  13. Intro to managing and tracking issues in GitHub. This tutorial walks you through creating issues in GitHub.
  14. +
+

Using Ontologies and Ontology Terms

+ +

Contributing to Ontologies

+

Community feedback is welcome for all open OBO Foundry ontologies. Feedback is often provided in the form of:

+
    +
  • New terms requests
  • +
  • Add/revise synonyms, definitions
  • +
  • Reclassify a term
  • +
  • Report a bug
  • +
  • etc.
  • +
+

Ways to provide feedback

+
    +
  • Create a new issue on a GitHub issue tracker
  • +
  • See the lesson on Identifying missing terms
  • +
  • See the lesson on Making term requests to existing ontologies
  • +
  • Join the discussion: Comment on tickets or the discussion board
  • +
  • Join the conversation: Attend ontology calls (many ontology developer groups have recurring calls open to the community. Contact the ontology owner to request information about calls.)
  • +
  • Edit the ontology file: make changes on a branch and do a pull request (more advanced)
  • +
  • See the lesson on Contributing to OBO ontologies
  • +
+

Relevant Presentations

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/ontology-curator-go-style/index.html b/pathways/ontology-curator-go-style/index.html new file mode 100644 index 000000000..53b48e557 --- /dev/null +++ b/pathways/ontology-curator-go-style/index.html @@ -0,0 +1,3806 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Curator GO-style - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Curator Pathway: GO-Style

+

Note: There is no one single accepted way of doing ontology curation in the OBO-World, see here. This guide reflects the practice of the GO-style ontology curation, as it is used by GO, Uberon, CL, PATO and others.

+

Note: Work on this document is still in progress, items that are not linked are currently being worked on.

+

Getting Set-up

+
    +
  1. Download and install GitHub Desktop
  2. +
  3. Download and install Protege. See instructions on how to set up Protege here
  4. +
  5. Install ELK reasoner in protege
  6. +
  7. Setting up your ID range
  8. +
  9. Setting up ODK
  10. +
+

Learning

+

Learning about Ontologies

+
    +
  1. Fundamentals of Ontologies
  2. +
+

Learning Git and GitHub

+
    +
  1. Fundamentals of GitHub
  2. +
  3. Github issues
  4. +
  5. Cloning a Repo
  6. +
  7. Creating pull requests
  8. +
  9. Introduction into the command line
  10. +
+

Learning protege

+
    +
  1. Protege interface
  2. +
  3. Browse and Search
  4. +
  5. DL query
  6. +
  7. Editing Terms
  8. +
  9. Creating New Terms
  10. +
  11. Adding disjointness
  12. +
  13. Logical axiomatization of classes & use of reasoning
  14. +
  15. Ontology Relations
  16. +
  17. Updating Imports with ODK
  18. +
  19. OBO-style term annotation
  20. +
  21. Obsoleting terms
  22. +
  23. Merging terms
  24. +
+

General mindset

+
    +
  1. How to be a team open science player
  2. +
+

Ontology Curator How To Collection

+

This section is a non-ordered collection of how to documents that a curator might needs

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/ontology-curator-obi-style/index.html b/pathways/ontology-curator-obi-style/index.html new file mode 100644 index 000000000..2d737999b --- /dev/null +++ b/pathways/ontology-curator-obi-style/index.html @@ -0,0 +1,3728 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Curator OBI-style - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Curator Pathway: OBI-style

+

Note: There is no one single accepted way of doing ontology curation in the OBO-World, see here. This guide reflects the practice of the OBI-style ontology curation, as it is used by OBI, IAO and others.

+

Getting Set-up

+

Learning

+

Learning Git and GitHub

+
    +
  1. Fundamentals of GitHub
  2. +
  3. Github issues
  4. +
  5. Cloning a Repo
  6. +
  7. Creating pull requests
  8. +
+

Learning how to edit ontologies

+

Ontology Curator How To Collection

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/ontology-curator/index.html b/pathways/ontology-curator/index.html new file mode 100644 index 000000000..8ddd68cb2 --- /dev/null +++ b/pathways/ontology-curator/index.html @@ -0,0 +1,3649 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Curator - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Curator Pathway

+

There is no one single accepted methodology for building ontologies in the OBO-World. We can distinguish at least two major schools of ontology curation

+
    +
  • GO-style ontology curation
  • +
  • OBI-style ontology curation
  • +
+

Note that there are many more variants, probably as many as there are ontologies. Both schools differ only in how they curate their ontologies - the final product is always an ontology in accordance with OBO Principles. These are some of the main differences of the two schools:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GO-styleOBI-style
Edit formatHistorically developed in OBO formatDeveloped in an OWL format
Annotation propertiesMany annotation properties from the oboInOwl namespace, for example for synonyms and provenance.Many annotation properties from the IAO namespace.
Upper OntologyHesitant alignment with BFO, often uncommitted.Strong alignment with BFO.
LogicTend do be simple existential restrictions (some), ontologies in OWL 2 EL. No class expression nesting. Simple logical definition patterns geared towards automating classificationTend to use a lot more expressive logic, including only and not. Class expression nesting can be more complex.
ExamplesGO, Uberon, Mondo, HPO, PATO, CL, BSPOOBI, IAO, OGMS
+

There are a lot of processes happening that are bringing these schools together, sharing best practices (GitHub, documentation) and reconciling metadata conventions and annotation properties in the OBO Metadata Ontology (OMO). The Upper Level alignment is now done by members of both schools through the Core Ontology for Biology and Biomedicine (COB). While these processes are ongoing, we decided to curate separate pathways for both schools:

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/ontology-engineer/index.html b/pathways/ontology-engineer/index.html new file mode 100644 index 000000000..c83db79e0 --- /dev/null +++ b/pathways/ontology-engineer/index.html @@ -0,0 +1,3787 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Engineer/Developer - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Engineer/Developer Pathway

+

Getting Set-up

+
    +
  1. Download and install GitHub Desktop
  2. +
  3. Download and install Protege
  4. +
  5. Install ELK reasoner in protege
  6. +
  7. Setting up your ID range
  8. +
  9. Setting up ODK
  10. +
+

Learning

+

As a ontology engineer, it would be useful for you to know how curators work, as such, it would be useful to be familiar with all the concepts in the ontology curator pathways document. This pathways will however be focusing on the engineering side of things.

+

Very basics

+
    +
  1. Basic introduction to CLI 1
  2. +
  3. Basic introduction to CLI 2
  4. +
+

Learning Git and GitHub

+
    +
  1. Fundamentals of GitHub
  2. +
  3. Github issues
  4. +
  5. Cloning a Repo
  6. +
  7. Creating pull requests
  8. +
+

Learning ontology engineering

+
    +
  1. Setting up a ODK repository
  2. +
  3. Developing an obo ontology
  4. +
  5. Understanding product variants
  6. +
  7. Dealing with large ontologies
  8. +
  9. ROBOT tutorial pt. 1
  10. +
  11. ROBOT tutorial pt. 2
  12. +
  13. Templates
  14. +
  15. Getting started with DOSDP templates
  16. +
  17. DOSDP Templates Basic Tutorial
  18. +
  19. Introduction to Managing DOSDP Templates in ODK
  20. +
  21. Basics of SPARQL
  22. +
  23. Setting up slims
  24. +
+

Ontology Engineer How To Collection

+

This section is a non-ordered collection of how to documents that an engineer might need (this includes everything from the curators list as they may be pertinent knowledge to an engineer).

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/ontology-user/index.html b/pathways/ontology-user/index.html new file mode 100644 index 000000000..77d4477eb --- /dev/null +++ b/pathways/ontology-user/index.html @@ -0,0 +1,3802 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology User - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Ontology User Pathway

+

Description: This pathway includes resources on ontology use, such as how to use ontologies when annotating data, how to use ontologies for search and data analysis, and specific use cases.

+

Preparation: A basic understanding of what ontologies are is helpful. Some introductory resources are below:

+ +

General Ontology Use Guidelines

+ +

Gene Ontology curation

+

Curating and browsing with Gene Ontology (GO)

+

Disease Ontology Specific Applications

+

Clinical Applications of the Human Disease Ontology (DO)

+

A video library is available that covers: +- Clinical applications of the Human Disease Ontology +- How is the Human Disease Ontology FAIR? +- Searching the Human Disease Ontology website +- What is an ontology? +- Mining disease information via imports: Connecting disease-related information +- How the Human Disease Ontology is used for drug studies +- Cancer resources and tools utilizing the Human Disease Ontology +- Advanced searches of the DO website using relation axioms

+

Using the Mondo Disease Ontology for Disease Data Curation

+
    +
  • Slides on Using the Mondo Disease Ontology for Disease Data Curation
  • +
  • User guide for the Mondo Disease ontology
  • +
+

Using ontologies to standardize rare disease data collection

+

Video of webinar: Using ontologies to standardize rare disease data collection

+

Project Specific Applications

+

Ontology application and use at the ENCODE DCC

+

Contributors

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/pathways/pathways/index.html b/pathways/pathways/index.html new file mode 100644 index 000000000..0590d8c8a --- /dev/null +++ b/pathways/pathways/index.html @@ -0,0 +1,3603 @@ + + + + + + + + + + + + + + + + + + + + + + + + What is a pathway? - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Introduction to pathways

+

Pathways are materials from OBOOK in a linear fashion for the purpose of helping people in different roles finding the materials relevant to their work more easily. To browse through the pathways, look under the "Pathways" menu item.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/chatgpt-prompts-for-ontology-development/index.html b/reference/chatgpt-prompts-for-ontology-development/index.html new file mode 100644 index 000000000..3a62d753d --- /dev/null +++ b/reference/chatgpt-prompts-for-ontology-development/index.html @@ -0,0 +1,3700 @@ + + + + + + + + + + + + + + + + + + + + + + + + Leveraging ChatGPT for ontology curation - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Leveraging ChatGPT for ontology curation

+ +

Effective ChatGPT prompts for ontology development

+

For a basic tutorial on how to leverage ChatGPT for ontology development see here.

+

Act as a mapping API

+

I want you to act as a REST API, which takes natural language searches a an input and returns an SSSOM mapping in valid JSON in a codeblock, no comments, no additional text. An example of a valid mapping is

+

{ + "subject_id": "a:something", + "predicate_id": "rdfs:subClassOf", + "object_id": "b:something", + "mapping_justification": "semapv:LexicalMatching", + "subject_label": "XXXXX", + "subject_category": "biolink:AnatomicalEntity", + "object_label": "xxxxxx", + "object_category": "biolink:AnatomicalEntity", + "subject_source": "a:example", + "object_source": "b:example", + "mapping_tool": "rdf_matcher", + "confidence": 0.8, + "subject_match_field": [ + "rdfs:label" + ], + "object_match_field": [ + "rdfs:label" + ], + "match_string": [ + "xxxxx" + ], + "comment": "mock data" + }

+

As a first task, I want you to return a suitable mapping for MONDO:0004975 in ICD 10 CM.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/formatting-license/index.html b/reference/formatting-license/index.html new file mode 100644 index 000000000..0089dbd2d --- /dev/null +++ b/reference/formatting-license/index.html @@ -0,0 +1,3774 @@ + + + + + + + + + + + + + + + + + + + + + + + + Formatting your ontology annotations correctly - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Formatting your ontology annotations correctly

+

The new OBO Foundry guidelines encourage the annotation of ontologies with an appropriately formatted description, title and license. Here are some examples that can be used as a guide to implement those in your ontology.

+

Note: these examples purposefully do not include version information, this should not be manually added, instead it should be added by ROBOT as part of a pipeline. An ontology set up with the ODK will take care of all of this for you.

+

RDF/XML Example:

+
<?xml version="1.0"?>
+<rdf:RDF xmlns="http://purl.obolibrary.org/obo/license.owl#"
+     xml:base="http://purl.obolibrary.org/obo/license.owl"
+     xmlns:dc="http://purl.org/dc/elements/1.1/"
+     xmlns:owl="http://www.w3.org/2002/07/owl#"
+     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:xml="http://www.w3.org/XML/1998/namespace"
+     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
+     xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
+     xmlns:terms="http://purl.org/dc/terms/">
+    <owl:Ontology rdf:about="http://purl.obolibrary.org/obo/license.owl">
+        <dc:description rdf:datatype="http://www.w3.org/2001/XMLSchema#string">An integrated and fictional ontology for the description of abnormal tomato phenotypes.</dc:description>
+        <dc:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Tomato Phenotype Ontology (TPO)</dc:title>
+        <terms:license rdf:resource="https://creativecommons.org/licenses/by/3.0/"/>
+    </owl:Ontology>
+    <owl:AnnotationProperty rdf:about="http://purl.org/dc/elements/1.1/description"/>
+    <owl:AnnotationProperty rdf:about="http://purl.org/dc/elements/1.1/title"/>
+    <owl:AnnotationProperty rdf:about="http://purl.org/dc/terms/license"/>
+</rdf:RDF>
+
+

Functional Syntax Example:

+
Prefix(:=<http://purl.obolibrary.org/obo/license.owl#>)
+Prefix(owl:=<http://www.w3.org/2002/07/owl#>)
+Prefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>)
+Prefix(xml:=<http://www.w3.org/XML/1998/namespace>)
+Prefix(xsd:=<http://www.w3.org/2001/XMLSchema#>)
+Prefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>)
+
+
+Ontology(<http://purl.obolibrary.org/obo/license.owl>
+Annotation(<http://purl.org/dc/elements/1.1/description> "An integrated and fictional ontology for the description of abnormal tomato phenotypes."^^xsd:string)
+Annotation(<http://purl.org/dc/elements/1.1/title> "Tomato Phenotype Ontology (TPO)"^^xsd:string)
+Annotation(<http://purl.org/dc/terms/license> <https://creativecommons.org/licenses/by/3.0/>)
+
+)
+
+

OWL/XML Example:

+
<?xml version="1.0"?>
+<Ontology xmlns="http://www.w3.org/2002/07/owl#"
+     xml:base="http://purl.obolibrary.org/obo/license.owl"
+     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+     xmlns:xml="http://www.w3.org/XML/1998/namespace"
+     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
+     xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
+     ontologyIRI="http://purl.obolibrary.org/obo/license.owl">
+    <Prefix name="" IRI="http://purl.obolibrary.org/obo/license.owl#"/>
+    <Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/>
+    <Prefix name="rdf" IRI="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
+    <Prefix name="xml" IRI="http://www.w3.org/XML/1998/namespace"/>
+    <Prefix name="xsd" IRI="http://www.w3.org/2001/XMLSchema#"/>
+    <Prefix name="rdfs" IRI="http://www.w3.org/2000/01/rdf-schema#"/>
+    <Annotation>
+        <AnnotationProperty IRI="http://purl.org/dc/elements/1.1/description"/>
+        <Literal>An integrated and fictional ontology for the description of abnormal tomato phenotypes.</Literal>
+    </Annotation>
+    <Annotation>
+        <AnnotationProperty IRI="http://purl.org/dc/elements/1.1/title"/>
+        <Literal>Tomato Phenotype Ontology (TPO)</Literal>
+    </Annotation>
+    <Annotation>
+        <AnnotationProperty abbreviatedIRI="terms:license"/>
+        <IRI>https://creativecommons.org/licenses/by/3.0/</IRI>
+    </Annotation>
+    <Declaration>
+        <AnnotationProperty IRI="http://purl.org/dc/elements/1.1/title"/>
+    </Declaration>
+    <Declaration>
+        <AnnotationProperty IRI="http://purl.org/dc/elements/1.1/description"/>
+    </Declaration>
+    <Declaration>
+        <AnnotationProperty IRI="http://purl.org/dc/terms/license"/>
+    </Declaration>
+</Ontology>
+
+

OBO Example:

+
format-version: 1.2
+ontology: license
+property_value: http://purl.org/dc/elements/1.1/description "An integrated and fictional ontology for the description of abnormal tomato phenotypes." xsd:string
+property_value: http://purl.org/dc/elements/1.1/title "Tomato Phenotype Ontology (TPO)" xsd:string
+property_value: http://purl.org/dc/terms/license https://creativecommons.org/licenses/by/3.0/
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/frequently-used-odk-commands/index.html b/reference/frequently-used-odk-commands/index.html new file mode 100644 index 000000000..47019439e --- /dev/null +++ b/reference/frequently-used-odk-commands/index.html @@ -0,0 +1,3794 @@ + + + + + + + + + + + + + + + + + + + + + + + + Frequently used ODK commands - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Frequently used ODK commands

+

Updates the Makefile to the latest ODK

+
sh run.sh make update_repo
+
+

Recreates and deploys the automated documentation

+
sh run.sh make update_docs
+
+

Preparing a new release

+
sh run.sh make prepare_release
+
+

Refreshing a single import

+
sh run.sh make refresh-%
+
+

Example:

+
sh run.sh make refresh-chebi
+
+

Refresh all imports

+
sh run.sh make refresh-imports
+
+

Refresh all imports excluding large ones

+
sh run.sh make refresh-imports-excluding-large
+
+

Run all the QC checks

+
sh run.sh make test
+
+ +
sh run.sh make odkversion
+
+

Checks the OWL2 DL profile validity

+

(of a specific file)

+
sh run.sh make validate_profile_%
+
+

Example:

+
sh run.sh make validate_profile_hp-edit.owl
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/gh-actions-errors/index.html b/reference/gh-actions-errors/index.html new file mode 100644 index 000000000..aab8e0589 --- /dev/null +++ b/reference/gh-actions-errors/index.html @@ -0,0 +1,3652 @@ + + + + + + + + + + + + + + + + + + + + + + + + Common Errors in GitHub actions - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Common Errors in GitHub actions

+

Killed: Running out of memory

+

Running the same workflow several times simultaneously (e.g. if two PRs are submitted in a short time, and the second PR triggers the CI workflow while the CI workflow triggered by the first PR is still running) could lead to lack-of-memory situations because all concurrent workflows have to share a single memory limit.

+

(Note: it isn't really clear with documentation of GitHub Actions on whether concurrent workflow runs share a single memory limit.)

+

What could possibly be done is to forbid a given workflow from ever running as long as there is already a run of the same workflow ongoing, using the concurrency property.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/git-faq/index.html b/reference/git-faq/index.html new file mode 100644 index 000000000..5c3e04c63 --- /dev/null +++ b/reference/git-faq/index.html @@ -0,0 +1,3709 @@ + + + + + + + + + + + + + + + + + + + + + + + + Git FAQ - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Git FAQs

+

This page aims to consolidate some tips and tricks that ontology editors have found useful in using git. It is not meant to be a tutorial of git, but rather as a page with tips that could help in certain specialised situations.

+

Reverting Commits

+

Reverting particular files back to master version

+
    +
  1. If you want to revert only certain files (eg import files), you can do it using Terminal. For this example, we will use uberon_import.owl as the file we want reverted back to the version in master branch, however, this can be done on any file.
  2. +
  3. Assuming your directory is set to src/ontology, in terminal use: git checkout master -- imports/uberon_import.owl.
  4. +
  5. Commit the change to the branch as normal.
  6. +
+

Reverting particular files back to a previous version

+
    +
  1. If you want to revert a file back to a previous version instead of master, you can use the commit ID.
  2. +
  3. To do this, in Terminal use: git log to list out the previous commits and copy the commit code of the commit you would like to revert to (example: see yellow string of text in screenshot below).
  4. +
+

Screenshot 2021-10-15 at 13 34 06

+
    +
  1. Press q on your keyboard to quit git log (or down arrow to scroll down to continue to find the commit ID you want to revert if it is further down).
  2. +
  3. In terminal use: git checkout ff18c9482035062bbbbb27aaeb50e658298fb635 -- imports/uberon_import.owl using whichever commit code you want instead of the commit code in this example.
  4. +
  5. commit the change to the branch as normal.
  6. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/github-desktop/index.html b/reference/github-desktop/index.html new file mode 100644 index 000000000..33b9ee11a --- /dev/null +++ b/reference/github-desktop/index.html @@ -0,0 +1,3605 @@ + + + + + + + + + + + + + + + + + + + + + + + + GitHub Desktop - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

GitHub Desktop

+

For most of our training activities, we recommend using GitHub Desktop. It provides a very convenient way to push and pull changes, and inspect the "diff". It is, however, not mandatory if you are already familiar with other git workflows (such as command line, or Sourcetree).

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/github-intro/index.html b/reference/github-intro/index.html new file mode 100644 index 000000000..584774a0c --- /dev/null +++ b/reference/github-intro/index.html @@ -0,0 +1,3608 @@ + + + + + + + + + + + + + + + + + + + + + + + + Intro to GitHub - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Git, GitHub and GitHub Desktop (version control)

+

A repository can consist of many files with several users simultaneously editing those files at any moment in time. In order to ensure conflicting edits between the users are not made and a history of the edits are tracked, software classified as a "distributed version control system" is used.

+

All OBO repositories are managed by the Git version control system. This allows users to make their own local branch of the repository, i.e., making a mirror copy of the repository directories and files on their own computers, and make edits as desired. The edits can then be reviewed by other users before the changes are incorporated in the 'main' or 'master' branch of the repository. This process can be executed by running Git line commands and/or by using a web interface (Github.com) along with a desktop application (GitHub Desktop).

+

Documentation, including an introduction to GitHub, can be found here: +Hello World.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/glossary-of-terms/index.html b/reference/glossary-of-terms/index.html new file mode 100644 index 000000000..94dac676f --- /dev/null +++ b/reference/glossary-of-terms/index.html @@ -0,0 +1,4826 @@ + + + + + + + + + + + + + + + + + + + + + + + + Glossary of Terms - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Glossary of Terms

+

This document is a list of terms that you might encounter in the ontology world. It is not an exhaustive list and will continue to evolve. Please create a ticket if there is a term you find missing or a term you encounter that you do not understand, and we will do our best to add them. This list is not arranged in any particular order. Please use the search function to find terms.

+

Acknowledgement: Many terms are taken directly from OAK documentation with the permission of Chris Mungall. Many descriptions are also taken from https://www.w3.org/TR/owl2-syntax/.

+

Annotation

+

This term is frequently ambiguous. It can refer to Text Annotation, OWL Annotation, or Association.

+

AnnotationProperty

+

Annotation properties are OWL axioms that are used to place annotations on individuals, class names, property names, and ontology names. They do not affect the logical definition unless they are used as a "shortcut" that a pipeline expands to a logical axiom.

+

Anonymous Ancestor

+

An accumulation of all of the superclasses from ancestors of a class.

+

Anonymous Individual

+

If an individual is not expected to be used outside an ontology, one can use an anonymous individual, which is identified by a local node ID rather than a global IRI. Anonymous individuals are analogous to blank nodes in RDF.

+

API

+

Application Programming Interface. An intermediary that allows two or more computer programs to communicate with each other. In ontologies, this usually means an Endpoint in which the ontology can be programmatically accessed.

+

Application Ontology

+

Usually refers to a Project Ontology.

+

Axiom

+

Axioms are statements that are asserted to be true in the domain being described. For example, using a subclass axiom, one can state that the class a:Student is a subclass of the class a:Person. (Note: in OWL, there are also annotation axioms which does not apply any logical descriptions)

+

Bioportal

+

An Ontology Repository that is a comprehensive collection of multiple biologically relevant ontologies.

+

Controlled Vocabulary

+

Standardized and organized arrangements of words and phrases that provide a consistent way to describe data. A controlled vocabulary may or may not include definitions. Ontologies can be seen as a controlled vocabulary expressed in an ontological language which includes relations.

+

Class

+

An OWL entity that formally represents something that can be instantiated. For example, the class "heart".

+

CURIE

+

A CURIE is a compact URI. For example, CL:0000001 expands to http:purl.obolibrary.org/obo/CL_0000001. For more information, please see https://www.w3.org/TR/curie/.

+

Data Model

+

An abstract model that organizes elements of data and standardizes how they relate to one another.

+

dataProperty

+

dataProperty relate OWL entities to literal data (e.g., strings, numbers, datetimes, etc.) as opposed to ObjectProperty which relate individuals to other OWL entities. Unlike AnnotationProperty, dataProperty axioms fall on the logical side of OWL and are hence useable by reasoners.

+

Datatype

+

Datatypes are OWL entities that refer to sets of data values. Thus, datatypes are analogous to classes, the main difference being that the former contain data values such as strings and numbers, rather than individuals. Datatypes are a kind of data range, which allows them to be used in restrictions. For example, the datatype xsd:integer denotes the set of all integers, and can be used with the range of a dataProperty to state that the range of said dataProperty must be an integer.

+

Description Logic

+

Description Logics (DL) are a family of formal knowledge representation languages. It provides a logical formalism for ontologies and is what OWL is based on. DL querying can be used to query ontologies in Protege.

+

Domain

+

Domain, in reference to a dataProperty or ObjectProperty, refers to the restriction on the subject of a triple - if a given property has a given class in its domain this means that any individual that has a value for the property, will be inferred to be an instance of that domain class. For example, if John hasParent Mary and Person is listed in the domain of hasParent, then John will be inferred to be an instance of Person.

+

DOSDP

+

Dead Simple Ontology Design Patterns. A templating system for ontologies with well-documented patterns and templates.

+

Edge

+

A typed, directed link between Nodes in a knowledge graph. Translations of OWL into Knowledge graphs vary, but typically edges are generated for simple triples, relating two individuals or two classes via an AnnotationProperty or ObjectProperty and simple existential restrictions (A SubClassOf R some B), with the edge type corresponding to the property.

+

Endpoint

+

Where an API interfaces with the ontology.

+

Existential Restriction

+

A relationship between two classes, A R (some) B, that states that all individuals of class A stand in relation R to at least one individual of class B. For example, neuron has_part some dendrite states that all instances of neuron have at least one individual of type dentrite as a part. In Manchester syntax, the keyword 'some' is used to denote existential restrictions and is interpreted as "there exists", "there is at least one", or "some". See documentation on classifications for more details.

+

Functional Syntax

+

An official syntax of OWL (others are RDF-XML and OWL-XML) in which each line represents and axiom (although things get a little more complex with axiom annotations, and axioms use prefix syntax (order = relation (subject, object)). This is in contrast to in-fix syntax (e.g. Manchester syntax) (order = subject relation object). Functional syntax is the preferred syntax for editor files maintained on GitHub, because it can be safely diff'd and (somewhat) human readable.

+

Graph

+

Formally a graph is a data structure consisting of Nodes and Edges. There are different forms of graphs, but for our purposes an ontology graph has all Terms as nodes, and relationships connecting terms (is-a, part-of) as edges. Note the concept of an ontology graph and an RDF graph do not necessarily fully align - RDF graphs of OWL ontologies employ numerous blank nodes that obscure the ontology structure.

+

Individual

+

An OWL entity that represents an instance of a class. For example, the instance "John" or "John's heart". Note that instances are not commonly represented in ontologies. For instance, "John" (an instance of person) or "John's heart" (an instance of heart).

+

Information Content

+

A measure of how informative an ontology concept is; broader concepts are less informative as they encompass many things, whereas more specific concepts are more unique. This is usually measured as -log2(Pr(term)). The method of calculating the probability varies, depending on which predicates are taken into account (for many ontologies, it makes sense to use part-of as well as is-a), and whether the probability is the probability of observing a descendant term, or of an entity annotated using that term.

+

Interface

+

A programmatic abstraction that allows us to focus on what something should do rather than how it is done.

+

Jaccard Similarity

+

A measures of the similarity between two sets of data to see which members are shared and distinct.

+

KGCL

+

Knowledge Graph Change Language (KGCL) is a data model for communicating desired changes to an ontology. It can also be used to communicate differences between two ontologies. See KGCL docs.

+

Knowledge Graph

+

A network of real-world entities (i.e., objects, events, situations, and concepts) that illustrates the relationships between them. Knowledge graphs (in relation to ontologies) are thought of as real data built using an ontology as a framework.

+

Label

+

Usually refers to a human-readable text string corresponding to the rdfs:label predicate. Labels are typically unique per ontology. In OBO Format and in the bio-ontology literature, labels are sometimes called Names. Sometimes in the machine learning literature, and in databases such as Neo4J, "label" actually refers to a Category.

+

Lutra

+

Lutra is the open source reference implementation of the OTTR templating language.

+

Mapping

+

A means of linking two resources (e.g. two ontologies, or an ontology and a database) together. Also see SSSOM

+

Materialised

+

The process of making inferred axioms explicit by asserting them.

+

Name

+

Usually synonymous with Label, but in the formal logic and OWL community, "Name" sometimes denotes an Identifier

+

Named Individual

+

An Individual that is given an explicit name that can be used in any ontology to refer to the same object; named individuals get IRIs whereas anonymous individuals do not.

+

Nodes

+

Terms represented in a graph

+

Object

+

The "right" side of a Triple.

+

ObjectProperty

+

An owl entity that is used to related 2 individuals ('my left foot' part_of 'my left leg') or two classes ('foot' part_of some leg) or an individual and a class ('the neuron depicted in this image' (is) has_soma_location some 'primary motor cortex. More rarely it is used to define a class in terms of some individual (the class 'relatives of Shawn' related_to Value Shawn.

+

OBO

+

Open Biological and Biomedical Ontology. This could refer to the OBO Foundry (e.g. OBO ontologies = ontologies that follow the standards of the OBO Foundry) or OBO Format

+

OBO Format

+

A serialization format for ontologies designed for easy viewing, direct editing, and readable diffs. It is popular in bioinformatics, but not widely used or known outside the genomics sphere. OBO is mapped to OWL, but only expresses a subset, and provides some OWL abstractions in a more easy to understand fashion.

+

OLS

+

Ontology Lookup Service. An Ontology Repository that is a curated collection of multiple biologically relevant ontologies, many from OBO. OLS can be accessed with this link

+

Ontology

+

A flexible concept loosely encompassing any collection of OWL entities and statements or relationships connecting them.

+

ODK

+

Ontology Development Kit. A toolkit and docker image for managing ontologies.

+

Ontology Library

+

The systems or platform where various types of ontologies are stored from different sources and provide the ability to data providers and application developers to share and reuse the ontologies.

+

Ontology Repository

+

A curated collection of ontologies.

+

OTTR

+

Reasonable Ontology Templates. A system for composable ontology templates and documentation.

+

OWL

+

Web Ontology Language. An ontology language that uses constructs from Description Logic. OWL is not itself an ontology format, it can be serialized through different formats such as Functional Syntax, and it can be mapped to :RDF and serialized via an RDF format.

+

OWL Annotation

+

In the context of OWL, the term Annotation means a piece of metadata that does not have a strict logical interpretation. Annotations can be on entities, for example, Label annotations, or annotations can be on Axioms.

+

OWL API

+

A java-based API to interact with OWL ontologies. Full documentation can be found at http://owlcs.github.io/owlapi/apidocs_5/index.html

+

OWL Entity

+

OWL Entities, such as classes, properties, and individuals, are identified by IRIs. They form the primitive terms of an ontology and constitute the basic elements of an ontology. For example, a class a:Person can be used to represent the set of all people. Similarly, the object property a:parentOf can be used to represent the parent-child relationship. Finally, the individual a:Peter can be used to represent a particular person called "Peter". +The following is a complete list of types of OWL Entities:

+ +

Predicate

+

An OWL entity that represents the type of a Relationship. +Typically corresponds to an ObjectProperty in OWL, but this is not always true; +in particular, the is-a relationship type is a builtin construct SubClassOf in OWL +Examples:

+
    +
  • is-a
  • +
  • part-of (BFO:0000050)
  • +
+

Project Ontology

+

An ontology that is specific to a project and does not necessarily have interoperability with other ontologies in mind.

+

Pronto

+

An Ontology Library for parsing obo and owl files.

+

Property

+

An OWL entity that represents an attribute or a characteristic of an element. +In OWL, properties are divided into disjoint categories:

+ +

Protege

+

A typical ontology development tool used by ontology developers in the OBO-sphere. Full documentation can be found at https://protege.stanford.edu/.

+

Range

+

Range, in reference to a dataProperty or ObjectProperty, refers to the restriction on the object of a triple - if a given property has a given class in its domain this means that any individual that has a value for the property (i.e. is the subject of a relation along the property), will be inferred to be an instance of that domain class. For example, if John hasParent Mary and Person is listed in the domain of hasParent, then John will be inferred to be an instance of Person.

+

RDF

+

A datamodel consisting of simple Subject predicate Object Triples organized into an RDF Graph.

+

rdflib

+

A python library to interact with RDF data. Full documentation can be found at https://rdflib.readthedocs.io/en/stable/.

+

Reasoner

+

An ontology tool that will perform inference over an ontology to yield new axioms (e.g. new Edges) or to determine if an ontology is logically coherent.

+

Relationship

+

A Relationship is a type connection between two OWL entities. The first element is called the subject, and the second one the Object, with the type of connection being the Relationship Type. Sometimes Relationships are equated with Triples in RDF but this can be confusing, because some relationships map to multiple triples when following the OWL RDF serialization. An example is the relationship "finger part-of hand", which in OWL is represented using a Existential Restriction that maps to 4 triples.

+

Relationship Type

+

See predicate

+

ROBOT

+

A toolkit for transforming and interacting with ontologies. Full documentation can be found at http://robot.obolibrary.org/

+

Semantic Similarity

+

A means of measuring similarity between either pairs of ontology concepts, or between entities annotated using ontology concepts. There is a wide variety of different methods for calculating semantic similarity, for example Jaccard Similarity and Information Content based measures.

+

Semantic SQL

+

Semantic SQL is a proposed standardized schema for representing any RDF/OWL ontology, plus a set of tools for building a database conforming to this schema from RDF/OWL files. See Semantic-SQL

+

SPARQL

+

The standard query language and protocol for Linked Open Data on the web or for RDF triplestores - used to query ontologies.

+

SSSOM

+

Simple Standard for Sharing Ontological Mappings (https://github.com/mapping-commons/sssom).

+

Subject

+

The "left" side of a Triple.

+

Subset

+

A named collection of elements, typically grouped for some purpose. In the ODK/OBO world, there is a standard annotation property and pattern for this, for more information, see the subset documentation.

+

Term

+

Usually used to mean Class and Individuals, however sometimes used to refer to wider OWL entities.

+

Text Annotation

+

The process of annotating spans of texts within a text document with references to ontology terms, or the result of this process. This is frequently done automatically. The Bioportal implementation provides text annotation services.

+

Triple

+

A set of three entities that codifies a statement about semantic data in the form of Subject-predicate-Object expressions (e.g., "Bob is 35", or "Bob knows John"). Also see Relationship.

+

Triplestore

+

A purpose-built database for the storage and retrieval of triples through semantic queries. A triple is a data entity composed of subject–predicate–object, like "Bob is 35" or "Bob knows Fred".

+

Ubergraph

+

An integrated OBO ontology Triplestore and a Ontology Repository, with merged set of mutually referential OBO ontologies (see the ubergraph github for list of ontologies included), that allows for SPARQL querying of integrated OBO ontologies.

+

URI

+

A Uniform Resource Indicator, a generalization of URL. Most people think of URLs as being solely for addresses for web pages (or APIs) but in semantic web technologies, URLs can serve as actual identifiers for entities like OWL entities. Data models like OWL and RDF use URIs as identifiers. In OAK, URIs are mapped to CURIE

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/glossary/index.html b/reference/glossary/index.html new file mode 100644 index 000000000..7578d6088 --- /dev/null +++ b/reference/glossary/index.html @@ -0,0 +1,3724 @@ + + + + + + + + + + + + + + + + + + + + + + + + Tools - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Glossary for concepts in and around OBO

+
IMPORTANT NOTE TO EDITORS, MERGE THIS WITH glossary.md.
+
+

New OBOOK Glossary

+

Tools

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TermDefinitionTypeDocs
Ontology Development Kit (ODK)A toolkit and docker image for managing ontology releases.Tooldocs
ROBOTA toolkit for transforming and interacting with ontologies.Tooldocs
rdflibA python library to interact with RDF dataLibrarydocs
OWL APIA java-based API to interact with OWL ontologiesLibrarydocs
ProtegeA typical ontology development tool used by ontology developers in the OBO-sphereTooldocs
ROBOT templatesA templating system based on tables, where the templates are integrated in the same table as the dataStandarddocs
Dead Simple Ontology Design Patterns (DOSDP)A templating system for ontologies with well-documented patterns and templates.Standarddocs
DOSDP toolsDOSDP is the open source reference implementation of the DOSDP templating language.Tooldocs
Reasonable Ontology Templates (OTTR)A system for composable ontology templates and documentationStandarddocs
LutraLutra is the open source reference implementation of the OTTR templating language.Tooldocs
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/go-style-annotation-property-practice/index.html b/reference/go-style-annotation-property-practice/index.html new file mode 100644 index 000000000..1dcb21933 --- /dev/null +++ b/reference/go-style-annotation-property-practice/index.html @@ -0,0 +1,3749 @@ + + + + + + + + + + + + + + + + + + + + + + + + OBO-style term annotation - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Recommended metadata properties to use in curating OBO ontologies (GO-style)

+

Note that while most of the practices documented here apply to all OBO ontologies this recommendation applies only to ontologies that are developed using GO-style curation workflows.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeProperty to useRequiredNumber/LimitDescriptionFormatAnnotationReference/Comments
Labelrdfs:labelYMax 1 *Full name of the term, must be unique.Free textNone* some ontologies have multiple labels for different languages, in which case, there should maximum be one label per language
DefinitionIAO:0000115YMax 1A textual definition of ther term. In most ontologies, must be unique.Free textdatabase_cross_reference: reference materials used and contributors (in ORCID ID link format)See this document for guide on writing definitions
Contributordcterms:contributorN (though highly reccomended)No limitThe ORCID ID of people who contributed to the creation of the term.ORCID ID (using full link)None
Synonymshttp://www.geneontology.org/formats/oboInOwl#hasExactSynonym, http://www.geneontology.org/formats/oboInOwl#hasBroadSynonym, http://www.geneontology.org/formats/oboInOwl#hasNarrowSynonym, http://www.geneontology.org/formats/oboInOwl#hasRelatedSynonymNNo limitSynonyms of the term.Free textdatabase_cross_reference: reference material in which the synonymn is usedSee synonyms documentation for guide on using synonyms
Commentsrdfs:commentNMax 1Comments about the term, extended descriptions that might be useful, notes on modelling choices, other misc notes.Free textdatabase_cross_reference: reference material relating to the commentSee documentation on comments for more information about comments
Editor noteIAO:0000116NMax 1A note that is not relevant to front users, but might be to editorsFree textdatabase_cross_reference: reference material relating to the note
Subsethttp://www.geneontology.org/formats/oboInOwl#inSubsetNNo limitA tag that marks a term as being part of a subsetannotation property that is a subproperty of subset_property (see guide on how to select this)NoneSee Slim documentation for more information on subsets
Database Cross Referencehttp://www.geneontology.org/formats/oboInOwl#hasDbXrefNNo limitLinks out to external references.string and should* take the form {prefix}:{accession}; see db-xrefs yaml for prefixesNone*Some ontologies allow full URLS in specific cases, but this is controversial
Date createddcterms:createdNMax 1Date in which the term was createdISO-8601 formatNone
Date last updateddcterms:dateNMax 1Date in which the term was last updatedISO-8601 formatNone
Deprecationhttp://www.w3.org/2002/07/owl#deprecatedNMax 1A tag that marks a term as being obsolete/deprecatedxsd:boolean (true/false)NoneSee obsoletion guide for more details
Replaced byIAO:0100001NMax 1Term that has replaced an obsoleted termIRI/ID (e.g. CL:0000001)NoneSee obsoletion guide and merging terms guide for more details
ConsideroboInOwl:considerNNo limitTerm that can be considered from manual replacement of an obsoleted termIRI/ID (e.g. CL:0000001)NoneSee obsoletion guide and merging terms guide for more details
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/managing-issues/index.html b/reference/managing-issues/index.html new file mode 100644 index 000000000..726d42783 --- /dev/null +++ b/reference/managing-issues/index.html @@ -0,0 +1,3736 @@ + + + + + + + + + + + + + + + + + + + + + + + + Tools for Managing Issues - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Tools for Managing Issues

+

Based on Intro to GitHub (GO-Centric) with credit to Nomi Harris and Chris Mungall

+

Labels

+

Labels are a useful tool to help group and organize issues, allowing people to filter issues by grouping. +Note: Only project contributors can add/change labels

+

Best Practices for Labels

+
    +
  • Make use of use GitHub's default labels: bug, question, enhancement, good first issue, etc.
  • +
  • Define new labels as needed for project management
  • +
  • Lightly coordinate labels across repos in an organization
  • +
  • Labels are not ontologies; don’t overload them. A small simple set consistently applied is better than overly specific inconsistently applied labels
  • +
+

Superissues

+

Superissues are issues that have checklists (added using -[] on items). These are useful as they show progress towards completion. These can be used for issues that require multiple steps to solve.

+

+

Milestones

+

Milestones are used for issues with a specific date/deadline. Milestones contain issues and issues can be filtered by milestones. They are also useful for visualizing how many issues in it is completed.

+

+

Project Boards

+

Project boards are a useful tool to organise, as the name implies, projects. They can span multiple repos (though the repos need to be in the same organisation). Notes can also be added.

+

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/medical-ontology-landscape/index.html b/reference/medical-ontology-landscape/index.html new file mode 100644 index 000000000..6cba72c01 --- /dev/null +++ b/reference/medical-ontology-landscape/index.html @@ -0,0 +1,5344 @@ + + + + + + + + + + + + + + + + + + + + + + + + Medical Ontology landscape - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Medical Ontology landscape

+ +

The Landscape of Disease and Phenotype Ontologies

+

Compiled by Nicole Vasilevsky. Feel free to make pull requests to suggest edits. Note: This currently just provides an overview of disease and phenotype ontologies. Contributors are welcome to add more descriptions of other medical ontologies. This was last updated in 2021.

+

Disease Ontologies & Terminologies

+
+

Disease Summary Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDisease Area
Artificial Intelligence Rheumatology Consultant System Ontology (AI-RHEUM)Rheumatic diseases
Autism DSM-ADI-R Ontology (ADAR)Autism
Autism Spectrum Disorder Phenotype Ontology (ASDPTO)Autism
Brucellosis Ontology (IDOBRU)brucellosis
Cardiovascular Disease Ontology (CVDO)Cardiovascular
Chronic Kidney Disease Ontology (CKDO)Chronic kidney disease
Chronic Obstructive Pulmonary Disease Ontology (COPDO)Chronic obstructive pulmonary disease (COPD)
Coronavirus Infectious Disease Ontology (CIDO)Coronavirus infectious diseases
Diagnostic and Statistical Manual of Mental Disorders (DSM)Mental disorders
Dispedia Core Ontology (DCO)Rare diseases
Experimental Factor Ontology (EFO)Broad disease coverage
Fibrotic Interstitial Lung Disease Ontology (FILDO)Fibrotic interstitial lung disease
Genetic and Rare Diseases Information Center (GARD)Rare diseases
Holistic Ontology of Rare Diseases (HORD)Rare disease
Human Dermatological Disease Ontology (DERMO)Dermatology (skin)
Human Disease Ontology (DO)Human disease
Infectious Disease Ontology (IDO)Infectious disease
International Classification of Functioning, Disability and Health (ICF)Cross-discipline, focuses disabilities
International Statistical Classification of Diseases and Related Health Problems (ICD-11)Broad coverage
International Classification of Diseases for Oncology (ICD-O)Cancer
Logical Observation Identifier Names and Codes (LOINC)Broad coverage
Medical Subject Headings (MeSH)Broad coverage
MedGenHuman medical genetics
Medical Dictionary for Regulatory Activities (MedDRA)Broad coverage
Mental Disease Ontology (MDO)Mental functioning
Mondo Disease Ontology (Mondo)Broad coverage, Cross species
National Cancer Institute Thesaurus (NCIT)Humam cancer and neoplasms
Neurological Disease Ontology (ND)Neurology
Online Mendelian Inheritance in Man (OMIM)Mendelian, genetic diseases.
Ontology of Cardiovascular Drug Adverse Events (OCVDAE)Cardiovascular
Ontology for General Medical Science (OGMS)Broad coverage
Ontology for Genetic Susceptibility Factor (OGSF)Genetic disease
Ontology of Glucose Metabolism Disorder (OGMD)Metabolic disorders
Ontology of Language Disorder in Autism (LDA)Austism
The Oral Health and Disease Ontology (OHD)Oral health and disease
Orphanet (ORDO)Rare diseases
Parkinson Disease Ontology (PDO)Parkinson disease
Pathogenic Disease Ontology (PDO)Pathogenic diseases
PolyCystic Ovary Syndrome Knowledgebase (PCOSKB)Polycystic ovary syndrome
Rat Disease Ontology (RDO)Broad coverage
Removable Partial Denture Ontology (RPDO)Oral health
Resource of Asian Primary Immunodeficiency Diseases (RPO)Immunodeficiencies
Sickle Cell Disease Ontology (SCDO)Sickle Cell Disease
SNOMED Clinical Terminology (SNOMED CT)Broad disease representation for human diseases.
Symptom OntologyHuman diseases
Unified Medical Language SystemBroad coverage
+

Artificial Intelligence Rheumatology Consultant System ontology (AI-RHEUM)

+

Description: Contains findings, such as clinical signs, symptoms, laboratory test results, radiologic observations, tissue biopsy results, and intermediate diagnosis hypotheses, for the diagnosis of rheumatic diseases.
+Disease area: Rheumatic diseases
+Use Cases: Used by clinicians and informatics researchers.
+Website: https://bioportal.bioontology.org/ontologies/AI-RHEUM
+Open: Yes

+

Autism DSM-ADI-R Ontology (ADAR)

+

Description: An ontology of autism spectrum disorder (ASD) and related neurodevelopmental disorders.
+Disease area: Autism
+Use Cases: It extends an existing autism ontology to allow automatic inference of ASD phenotypes and Diagnostic and Statistical Manual of Mental Disorders (DSM) criteria based on subjects’ Autism Diagnostic Interview–Revised (ADI-R) assessment data.
+Website: https://bioportal.bioontology.org/ontologies/ADAR
+Open: Yes

+

Autism Spectrum Disorder Phenotype Ontology (ASDPTO)

+

Description: Encapsulates the ASD behavioral phenotype, informed by the standard ASD assessment instruments and the currently known characteristics of this disorder.
+Disease area: Autism
+Use Cases: Intended for use in research settings where extensive phenotypic data have been collected, allowing a concept-based approach to identifying behavioral features of importance and for correlating these with genotypic data.
+Website: https://bioportal.bioontology.org/ontologies/ASDPTO
+Open: Yes

+

Brucellosis Ontology (IDOBRU)

+

Description: Describes the most common zoonotic disease, brucellosis, which is caused by Brucella, a type of facultative intracellular bacteria.
+Disease area: brucellosis bacteria
+Use Cases: An extension ontology of the core Infectious Disease Ontology (IDO-core). This project appears to be inactive.
+Website: https://github.com/biomedontology/idobru +Open: Yes

+

Cardiovascular Disease Ontology (CVDO)

+

Description: An ontology to describe entities related to cardiovascular diseases.
+Disease area: Cardiovascular
+Use Cases: Describes entities related to cardiovascular diseases including the diseases themselves, the underlying disorders, and the related pathological processes. Imports upper level terms from OGMS and imports some terms from Disease Ontology (DO).
+GitHub repo: https://github.com/OpenLHS/CVDO/
+Website: https://github.com/OpenLHS/CVDO
+OBO Foundry webpage: http://obofoundry.org/ontology/cvdo.html
+Open: Yes

+

Chronic Kidney Disease Ontology (CKDO)

+

Description: An ontology of chronic kidney disease in primary care.
+Disease area: Chronic kidney disease
+Use Cases: CKDDO was developed to assist routine data studies and case identification of CKD in primary care.
+Website: http://purl.bioontology.org/ontology/CKDO
+Open: Yes

+

Chronic Obstructive Pulmonary Disease Ontology (COPDO)

+

Description: Models concepts associated with chronic obstructive pulmonary disease in routine clinical databases.
+Disease area: Chronic obstructive pulmonary disease (COPD)
+Use Cases: Clinical use.
+Website: https://bioportal.bioontology.org/ontologies/COPDO
+Open: Yes

+

Coronavirus Infectious Disease Ontology (CIDO)

+

Description: Aims to ontologically represent and standardize various aspects of coronavirus infectious diseases, including their etiology, transmission, epidemiology, pathogenesis, diagnosis, prevention, and treatment.
+Disease area: Coronavirus infectious diseases, including COVID-19, SARS, MERS; covers etiology, transmission, epidemiology, pathogenesis, diagnosis, prevention, and treatment.
+Use Cases: Used for disease annotations related to coronavirus infections.
+GitHub repo: https://github.com/cido-ontology/cido
+OBO Foundry webpage: http://obofoundry.org/ontology/cido.html
+Open: Yes

+

Diagnostic and Statistical Manual of Mental Disorders (DSM)

+

Description: Authoritative source to define and classify mental disorders to improve diagnoses, treatment, and research.
+Disease area: Mental disorders
+Use Cases: Used in clinical healthcare and research by pyschiatrists and psychologists.
+Website: https://www.psychiatry.org/psychiatrists/practice/dsm
+Open: No, must be purchased

+

Dispedia Core Ontology (DCO)

+

Description: A schema for information brokering and knowledge management in the complex field of rare diseases. DCO describes patients affected by rare diseases and records expertise about diseases in machine-readable form.
+Disease area: Rare disease
+Use Cases: DCO was initially created with amyotrophic lateral sclerosis as a use case.
+Website: http://purl.bioontology.org/ontology/DCO
+Open: Yes

+

Experimental Factor Ontology (EFO)

+

Description: Provides a systematic description of many experimental variables available in EBI databases, and for projects such as the GWAS catalog.
+Disease area: Broad disease coverage, integrates the Mondo disease ontology.
+Use Cases: Application ontology build for European Bioinformatics (EBI) tools and databases and Open Targets Genetics Portal.
+Website: https://www.ebi.ac.uk/efo/
+Open: Yes

+

Fibrotic Interstitial Lung Disease Ontology (FILDO)

+

Description: An in-progress, four-tiered ontology proposed to standardize the diagnostic classification of patients with fibrotic interstitial lung disease.
+Disease area: Fibrotic interstitial lung disease
+Use Cases: Goal is to standardize the diagnostic classification of patients with fibrotic ILD. A paper was published in 2017 and an ontology is not publicly available.
+Publication: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5803648/
+Open: No

+

Genetic and Rare Diseases Information Center (GARD)

+

Description: NIH resource that provides the public with access to current, reliable, and easy-to-understand information about rare or genetic diseases in English or Spanish.
+Disease area: Rare diseases
+Use Cases: Patient portal. Integrates defintions and synonyms from Orphanet, maps to HPO phenotypes, and is integrated by Mondo.
+Website: https://rarediseases.info.nih.gov/
+Open: Yes

+

Holistic Ontology of Rare Diseases (HORD)

+

Description: Describes the biopsychosocial state (i.e., disease, psychological, social, and environmental state) of persons with rare diseases in a holistic way.
+Disease area: Rare disease
+Use Cases: Rehabilita, Disruptive Technologies for the Rehabilitation of the Future, a project that aims to enhance rehabilitation transforming it to a more personalized, ubiquitous and evidence-based rehabilitation.
+Website: http://purl.bioontology.org/ontology/HORD
+Open: Yes

+

Human Dermatological Disease Ontology (DERMO)

+

Description: The most comprehensive dermatological disease ontology available, with over 3,500 classes available. There are 20 upper-level disease entities, with features such as anatomical location, heritability, and affected cell or tissue type.
+Disease area: Dermatology (skin)
+Use Cases: DermO can be used to extract data from patient electronic health records using text mining, or to translate existing variable-granularity coding such as ICD-10 to allow capture and standardization of patient/disease annotations.
+Website: https://bioportal.bioontology.org/ontologies/DERMO +Open: Yes

+

Human Disease Ontology (DO)

+

Description: An ontology for describing the classification of human diseases organized by etiology.
+Disease area: Human disease terms, phenotype characteristics and related medical vocabulary disease concepts.
+Use Cases: Used by Model Organism Databases (MOD), such as Mouse Genome Informatics disease model for diseae annotations, and Alliance for Genome Resources for disease annotations. In 2018, DO tracked over 300 DO project citations suggesting wide adoption and usage for disease annotations.
+GitHub repo: https://github.com/DiseaseOntology/HumanDiseaseOntology/
+Website: http://www.disease-ontology.org/
+OBO Foundry webpage: http://obofoundry.org/ontology/doid.html
+Open: Yes

+

Infectious Disease Ontology (IDO)

+

Description: A set of interoperable ontologies that will together provide coverage of the infectious disease domain. IDO core is the upper-level ontology that hosts terms of general relevance across the domain, while extension ontologies host terms to specific to a particular part of the domain.
+Disease area: Infectious disease features, such as acute, primary, secondary infection, and chronic, hospital acquired and local infection.
+Use Cases: Does not seem active, has not been released since 2017.
+GitHub repo: https://github.com/infectious-disease-ontology/infectious-disease-ontology/
+Website: http://www.bioontology.org/wiki/index.php/Infectious_Disease_Ontology
+OBO Foundry webpage: http://obofoundry.org/ontology/ido.html
+Open: Yes

+

International Classification of Functioning, Disability and Health (ICF)

+

Description: Represents diseases and provides a conceptual basis for the definition and measurement of health and disability as organized by patient-oriented outcomes of function and disability. ICF considers environmental factors as well as the relevance of associated health conditions in recognizing major models of disability.
+Disease area: Cross-discipline, focuses on health and disability
+Use Cases: ICF is the World Health Organization (WHO) framework for measuring health and disability at both individual and population levels. ICF was officially endorsed by the WHO as the international standard to describe and measure health and disability.
+Website: https://www.who.int/standards/classifications/international-classification-of-functioning-disability-and-health
+Open: Yes

+ +

Description: A medical classification list by the World Health Organization (WHO) that contains codes for diseases, signs and symptoms, abnormal findings, complaints, social circumstances, and external causes of injury or diseases.
+Disease area: Broad coverage of human disease features, such as disease of anatomical systems, infectious diseases, injuries, external causes of morbidity and mortality.
+Use Cases: The main purpose of ICD-11 is for clinical care, billing and coding for insurance companies.
+Website: https://www.who.int/standards/classifications/classification-of-diseases
+Open: Yes

+

International Classification of Diseases for Oncology (ICD-O)

+

Description: A domain-specific extension of the International Statistical Classification of Diseases and Related Health Problems for tumor diseases.
+Disease area: A multi-axial classification of the site, morphology, behaviour, and grading of neoplasms.
+Use Cases: Used principally in tumour or cancer registries for coding the site (topography) and the histology (morphology) of neoplasms, usually obtained from a pathology report.
+Website: https://www.who.int/standards/classifications/other-classifications/international-classification-of-diseases-for-oncology
+Open: Yes

+

Logical Observation Identifier Names and Codes (LOINC)

+

Description: Identifies medical laboratory observations.
+Disease area: Broad coverage
+Use Cases: The Regenstrief Institute first developed LOINC in 1994 in response to the demand for an electronic database for clinical care and management. LOINC is publicly available at no cost and is endorsed by the American Clinical Laboratory Association and the College of American Pathologists. Since its inception, LOINC has expanded to include not just medical laboratory code names but also nursing diagnoses, nursing interventions, outcome classifications, and patient care data sets.
+Website: https://loinc.org/
+Open: Yes, registration is required.

+

Medical Subject Headings (MeSH)

+

Description: Medical Subject Headings (MeSH) thesaurus is a controlled and hierarchically-organized vocabulary produced by the National Library of Medicine.
+Disease area: Broad coverage
+Use Cases: It is used for indexing, cataloging, and searching of biomedical and health-related information. Integrated into Mondo.
+Website: https://meshb.nlm.nih.gov/search
+Open: Yes

+

MedGen

+

Description: Organizes information related to human medical genetics, such as attributes of conditions and phenotypes of genetic contributions.
+Disease area: Human medical genetics
+Use Cases: MedGen is NCBI's portal to information about conditions and phenotypes related to Medical Genetics. Terms from the NIH Genetic Testing Registry (GTR), UMLS, HPO, Orphanet, ClinVar and other sources are aggregated into concepts, each of which is assigned a unique identifier and a preferred name and symbol. The core content of the record may include names, identifiers used by other databases, mode of inheritance, clinical features, and map location of the loci affecting the disorder. The concept identifier (CUI) is used to aggregate information about that concept, similar to the way NCBI Gene serves as a gateway to gene-related information.
+Website: https://www.ncbi.nlm.nih.gov/medgen/
+Open: Yes

+

Medical Dictionary for Regulatory Activities (MedDRA)

+

Description: Provides a standardized international medical terminology to be used for regulatory communication and evaluation of data about medicinal products for human use.
+Disease area: Broad coverage
+Use Cases: Mainly targeted towards industry and regulatory users.
+Website: https://www.meddra.org/
+Open: Yes

+

Mental Disease Ontology (MDO)

+

Description: An ontology to describe and classify mental diseases such as schizophrenia, annotated with DSM-IV and ICD codes where applicable.
+Disease area: Mental functioning, including mental processes such as cognition and traits such as intelligence.
+Use Cases: The ontology has been partially aligned with the related projects Cognitive Atlas, knowledge base on cognitive science and the Cognitive Paradigm Ontology, which is used in the Brainmap, a database of neuroimaging experiments.
+GitHub repo: https://github.com/jannahastings/mental-functioning-ontology
+OBO Foundry webpage: http://obofoundry.org/ontology/mfomd.html
+Open: yes

+

Mondo Disease Ontology (Mondo)

+

Description: An integrated disease ontology that provides precise mappings between source ontologies that comprehensively covers cross-species diseases, from common to rare diseases.
+Disease area: Cross species, intended to cover all areas of diseases, integrating source ontologies that cover Mendelian diseases (OMIM), rare diseases (Orphanet), neoplasms (NCIt), human diseases (DO), and others. See all sources here.
+Use Cases: Mondo was developed for usage in the Monarch Initiative, a discovery system that allows navigation of similarities between phenotypes, organisms, and human diseases across many data sources and organisms. Mondo is also used by ClinGen for disease curations, the Kids First Data Resource Portal for disease annotations and others, see an extensive list here.
+GitHub repo: https://github.com/monarch-initiative/mondo
+Website: https://mondo.monarchinitiative.org/
+OBO Foundry webpage: http://obofoundry.org/ontology/mondo.html
+Open: yes

+

National Cancer Institute Thesaurus (NCIT)

+

Description: NCI Thesaurus (NCIt)is a reference terminology that includes broad coverage of the cancer domain, including cancer related diseases, findings and abnormalities. The NCIt OBO Edition aims to increase integration of the NCIt with OBO Library ontologies. NCIt OBO Edition releases should be considered experimental.
+Disease area: Cancer and neoplasms
+Use Cases: NCI Thesaurus (NCIt) provides reference terminology for many National Cancer Institute and other systems. It is used by the Clinical Data Interchange Standards Consortium Terminology (CDISC), the U.S. Food and Drug Administration (FDA), the Federal Medication Terminologies (FMT), and the National Council for Prescription Drug Programs (NCPDP). It provides extensive coverage of neoplasms and cancers.
+GitHub repo: https://github.com/NCI-Thesaurus/thesaurus-obo-edition/issues
+Website: https://ncithesaurus.nci.nih.gov/ncitbrowser/pages/home.jsf?version=20.11e
+OBO Foundry webpage: http://obofoundry.org/ontology/ncit.html
+Open: Yes

+

Neurological Disease Ontology (ND)

+

Description: A framework for the representation of key aspects of neurological disease.
+Disease area: Neurology
+Use Cases: Goal is to provide a framework to enable representation of aspects of neurological diseases that are relevant to their treatment and study. This project may be inactive, the last commit to GitHub was in 2016.
+GitHub repo: https://github.com/addiehl/neurological-disease-ontology
+Open: Yes

+

Online Mendelian Inheritance in Man (OMIM)

+

Description: a comprehensive, authoritative compendium of human genes and genetic phenotypes that is freely available and updated daily.
+Disease area: Mendelian, genetic diseases.
+Use Cases: Integrated into the disease ontology, used by the Human Phenotype Ontology for disease annotations, patients and researchers.
+Website: https://omim.org/
+Open: yes

+

Ontology of Cardiovascular Drug Adverse Events (OCVDAE)

+

Description: A biomedical ontology of cardiovascular drug–associated adverse events.
+Disease area: Cardiovascular
+Use Cases: One novel study of the OCVDAE project is the development of the PCR method. Specifically, an AE-specific drug class effect is defined to exist when all the drugs (drug chemical ingredients or drug products) in a drug class are associated with an AE, which is formulated as a proportional class level ratio (“PCR”) = 1. See more information in the paper: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5653862/. This project may be inactive, the last GitHub commit was in 2019.
+GitHub repo: https://github.com/OCVDAE/OCVDAE
+Website: https://bioportal.bioontology.org/ontologies/OCVDAE
+Open: yes

+

Ontology for General Medical Science (OGMS)

+

Description: An ontology of entities involved in a clinical encounter.
+Use Cases: Provides a formal theory of disease that can be further elaborated by specific disease ontologies. It is intended to be used as a upper level ontology for other disease ontologies. Used by Cardiovascular Disease Ontology.
+GitHub repo: https://github.com/OGMS/ogms
+OBO Foundry webpage: http://obofoundry.org/ontology/ogms.html
+Open: Yes

+

Ontology for Genetic Susceptibility Factor (OGSF)

+

Description: An application ontology to represent genetic susceptibility to a specific disease, adverse event, or a pathological process.
+Use Cases: Modeling genetic susceptibility to vaccine adverse events.
+GitHub repo: https://github.com/linikujp/OGSF
+OBO Foundry webpage: http://obofoundry.org/ontology/ogsf.html
+Open: Yes

+

Ontology of Glucose Metabolism Disorder (OGMD)

+

Description: Represents glucose metabolism disorder and diabetes disease names, phenotypes, and their classifications.
+Disease area: Metabolic disorders
+Use Cases: Still under development (last verssion released in BioPortal was in 2021) but there is little information about its usage online.
+Website: https://bioportal.bioontology.org/ontologies/OGMD
+Open: Yes

+

Ontology of Language Disorder in Autism (LDA)

+

Description: An ontology assembled from a set of language terms mined from the autism literature.
+Disease area: Austism
+Use Cases: This has not been released since 2008 and looks like it is inactive.
+Website: https://bioportal.bioontology.org/ontologies/LDA
+Open: Yes

+

The Oral Health and Disease Ontology (OHD)

+

Description: Represents the content of dental practice health records and is intended to be further developed for use in translational medicine. OHD is structured using BFO (Basic Formal Ontology) and uses terms from many ontologies, NCBITaxon, and a subset of terms from the CDT (Current Dental Terminology).
+Disease area: Oral health and disease
+Use Cases: Used to represent the content of dental practice health records and is intended to be further developed for use in translation medicine. Appears to be inactive.
+OBO Foundry webpage: http://www.obofoundry.org/ontology/ohd.html
+Open: Yes

+

Orphanet (ORDO)

+

Description: The portal for rare diseases and orphan drugs. Contains a structured vocabulary for rare diseases capturing relationships between diseases, genes, and other relevant features, jointly developed by Orphanet and the EBI. It contains information on nearly 10,000 cancers and related diseases, 8,000 single agents and combination therapies, and a wide range of other topics related to cancer and biomedical research.
+Disease area: Rare diseases
+Use Cases: Used by rare disease research and clinical community. Integrated into the Mondo disease ontology, aligned with OMIM.
+Website: https://www.orpha.net/consor/cgi-bin/index.php
+Open: Yes

+

Parkinson Disease ontology (PDO)

+

Description: A comprehensive semantic framework with a subclass-based taxonomic hierarchy, covering the whole breadth of the Parkinson disease knowledge domain from major biomedical concepts to different views on disease features held by molecular biologists, clinicians, and drug developers.
+Disease area: Parkinson disease
+Use Cases: This resource has been created for use in the IMI-funded AETIONOMY project. Last release was in 2015, may be inactive. +Website: https://bioportal.bioontology.org/ontologies/PDON
+Open: Yes

+

Pathogenic Disease Ontology (PDO)

+

Description: Provides information on infectious diseases, disease synonyms, transmission pathways, disease agents, affected populations, and disease properties. Diseases are grouped into syndromic disease categories, organisms are structured hierarchically, and both disease transmission and relevant disease properties are searchable.
+Disease area: human infectious diseases caused by microbes and the diseases that is related to microbial infection.
+Use Cases: Has not been released since 2016 and may be inactive.
+Website: https://bioportal.bioontology.org/ontologies/PDO
+Open: Yes.

+

PolyCystic Ovary Syndrome Knowledgebase (PCOSKB)

+

Description: Comprises genes, single nucleotide polymorphisms, diseases, gene ontology terms, and biochemical pathways associated with polycystic ovary syndrome, a major cause of female subfertility worldwide.
+Disease area: polycystic ovary syndrome +Use Cases: Ontology underlying the Polycystic Ovary Syndrome Knowledgebase, a manually curated knowledgebase on PCOS.
+Website: http://pcoskb.bicnirrh.res.in/go_d.php
+Open: Yes

+

Rat Disease Ontology (RDO)

+

Description: Provides the foundation for ten comprehensive disease area–related data sets at the Rat Genome Database Disease Portals.
+Disease area: Broad coverage including animal diseases, infectious diseases, chemically-induced disorders, occupational diseases, wounds and injuries and more.
+Use Cases: Developed for use with the Rat Genome Database Disease Portals.
+Website: https://rgd.mcw.edu/rgdweb/ontology/view.html?acc_id=DOID:4 +Open: Yes

+

Removable Partial Denture Ontology (RPDO)

+

Description: Represents knowledge of a patient’s oral conditions and denture component parts, originally developed to create a clinician decision support model.
+Disease area: Oral health and dentures
+Use Cases: A paper was published on this in 2016 but it does not appear any other information is available about this ontology on the website, presumably it is an inactive project.
+Publication: https://www.nature.com/articles/srep27855
+Open: No

+

Resource of Asian Primary Immunodeficiency Diseases (RPO)

+

Description: Represents observed phenotypic terms, sequence variations, and messenger RNA and protein expression levels of all genes involved in primary immunodeficiency diseases. +Disease area: Primary immunodeficiency diseases +Use Cases: This terminology is used in a freely accessible, dynamic and integrated database for primary immunodeficiency diseases (PID) called Resource of Asian Primary Immunodeficiency Diseases (RAPID), which is available here. +Publication: https://academic.oup.com/nar/article/37/suppl_1/D863/1004993 +Open: Yes

+

Sickle Cell Disease Ontology (SCDO)

+

Description: SCDO establishes (a) community-standardized sickle cell disease terms and descriptions, (b) canonical and hierarchical representation of knowledge on sickle cell disease, and (c) links to other ontologies and bodies of work.
+Disease area: Sickle Cell Disease (SCD). +Use Cases: SCDO is intended to be a comprehensive collection of knowledge on SCD, facilitate exploration of new scientific questions and ideas, facilitate seamless data sharing and collaborations including meta-analysis within the SCD community, support the building of databasing and clinical informatics in SCD.
+GitHub repo: https://github.com/scdodev/scdo-ontology/issues
+Website: https://scdontology.h3abionet.org/
+OBO Foundry webpage: http://obofoundry.org/ontology/scdo.html
+Open: Yes

+

SNOMED Clinical Terminology (SNOMED CT)

+

Description: A comprehensive clinical terminology/ontology used in healthcare settings.
+Disease area: Broad disease representation for human diseases.
+Use Cases: Main coding system used in Electronic Health Records (EHRs).
+Website: https://browser.ihtsdotools.org/?
+Open: No, requires a license for usage.

+

Symptom Ontology

+

Description: An ontology of disease symptoms, with symptoms encompasing perceived changes in function, sensations or appearance reported by a patient indicative of a disease.
+Disease area: Human diseases
+Use Cases: Developed by the Disease Ontology (DO) team and used for describing symptoms of human diseases in the DO.
+Website: http://symptomontologywiki.igs.umaryland.edu/mediawiki/index.php/Main_Page
+OBO Foundry webpage: http://obofoundry.org/ontology/symp.html
+Open: Yes

+

Unified Medical Language System

+

Description: The UMLS integrates and distributes key terminology, classification and coding standards, and associated resources to promote creation of more effective and interoperable biomedical information systems and services.
+Disease area: Broad coverage
+Use Cases: Healthcare settings including electronic health records and HL7.
+Website: https://www.nlm.nih.gov/research/umls/index.html
+Open: Yes

+
+

Phenotype ontologies

+
+

Phenotype Summary Table

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameSpecies Area
Ascomycete phenotype ontology (APO)Ascomycota
C. elegans phenotype (wbphenotype)C elegans
Dictyostelium discoideum phenotype ontology (ddpheno)Dictyostelium discoideum
Drosophila Phenotype Ontology (DPO)Drosophila
Flora Phenotype Ontology (FLOPO)Viridiplantae
Fission Yeast Phenotype Ontology (FYPO)S. pombe
Human Phenotype Ontology (HPO)Human
HPO - ORDO Ontological Module (HOOM)Human
Mammalian Phenotype Ontology (MP)Mammals
Ontology of Microbial Phenotypes (OMP)Microbe
Ontology of Prokaryotic Phenotypic and Metabolic CharactersProkaryotes
Pathogen Host Interaction Phenotype Ontologypathogens
Planarian Phenotype Ontology (PLANP)Schmidtea mediterranea
Plant Trait Ontology (TO)Viridiplantae
Plant Phenology OntologyPlants
Unified Phenotype Ontology (uPheno)Cross-species coverage
Xenopus Phenotype Ontology (XPO)Xenopus
Zebrafish Phenotype Ontology (ZP)Zebrafish
+

Ascomycete phenotype ontology (APO)

+

Description: A structured controlled vocabulary for the phenotypes of Ascomycete fungi.
+Species: Ascomycota
+GitHub repo: https://github.com/obophenotype/ascomycete-phenotype-ontology/
+Webpage: http://www.yeastgenome.org/ +OBO Foundry webpage: http://obofoundry.org/ontology/wbphenotype.html
+Open: Yes

+

C. elegans phenotype (wbphenotype)

+

Description: A structured controlled vocabulary of Caenorhabditis elegans phenotypes.
+Species: C elegans
+GitHub repo: https://github.com/obophenotype/c-elegans-phenotype-ontology
+OBO Foundry webpage: http://obofoundry.org/ontology/wbphenotype.html
+Open: Yes

+

Dictyostelium discoideum phenotype ontology (ddpheno)

+

Description: A structured controlled vocabulary of phenotypes of the slime-mould Dictyostelium discoideum.
+Species: Dictyostelium discoideum
+GitHub repo: https://github.com/obophenotype/dicty-phenotype-ontology/issues
+Webpage: http://dictybase.org/
+OBO Foundry webpage: http://obofoundry.org/ontology/ddpheno.html
+Open: Yes

+

Drosophila Phenotype Ontology (DPO)

+

Description: An ontology of commonly encountered and/or high level Drosophila phenotypes.
+Species: Drosophila
+GitHub repo: https://github.com/obophenotype/c-elegans-phenotype-ontology
+Webpage: http://purl.obolibrary.org/obo/fbcv
+OBO Foundry webpage: http://obofoundry.org/ontology/dpo.html
+Open: Yes

+

Flora Phenotype Ontology (FLOPO)

+

Description: Traits and phenotypes of flowering plants occurring in digitized Floras.
+Species: Viridiplantae
+GitHub repo: https://github.com/flora-phenotype-ontology/flopoontology/
+OBO Foundry webpage: http://obofoundry.org/ontology/flopo.html
+Open: Yes

+

Fission Yeast Phenotype Ontology (FYPO)

+

Description: FYPO is a formal ontology of phenotypes observed in fission yeast.
+Species: S. pombe
+GitHub repo: https://github.com/pombase/fypo
+OBO Foundry webpage: http://obofoundry.org/ontology/fypo.html
+Open: Yes

+

Human Phenotype Ontology (HPO)

+

Description: HPO provides a standardized vocabulary of phenotypic abnormalities encountered in human disease. Each term in the HPO describes a phenotypic abnormality.
+Species: Human
+GitHub repo: https://github.com/obophenotype/human-phenotype-ontology
+Website: https://hpo.jax.org/app/
+OBO Foundry webpage: http://obofoundry.org/ontology/hp.html
+Open: yes

+

HPO - ORDO Ontological Module (HOOM)

+

Description: Orphanet provides phenotypic annotations of the rare diseases in the Orphanet nomenclature using the Human Phenotype Ontology (HPO). HOOM is a module that qualifies the annotation between a clinical entity and phenotypic abnormalities according to a frequency and by integrating the notion of diagnostic criterion. In ORDO a clinical entity is either a group of rare disorders, a rare disorder or a subtype of disorder. The phenomes branch of ORDO has been refactored as a logical import of HPO, and the HPO-ORDO phenotype disease-annotations have been provided in a series of triples in OBAN format in which associations, frequency and provenance are modeled. HOOM is provided as an OWL (Ontologies Web Languages) file, using OBAN, the Orphanet Rare Disease Ontology (ORDO), and HPO ontological models. HOOM provides extra possibilities for researchers, pharmaceutical companies and others wishing to co-analyse rare and common disease phenotype associations, or re-use the integrated ontologies in genomic variants repositories or match-making tools.
+Species: Human
+Website: http://www.orphadata.org/cgi-bin/img/PDF/WhatIsHOOM.pdf
+BioPortal: https://bioportal.bioontology.org/ontologies/HOOM
+Open: yes

+

Mammalian Phenotype Ontology (MP)

+

Description: Standard terms for annotating mammalian phenotypic data.
+Species: Mammals (main focus is on mouse and rodents)
+GitHub repo: https://github.com/obophenotype/mammalian-phenotype-ontology
+Website: http://www.informatics.jax.org/searches/MP_form.shtml
+OBO Foundry webpage: http://obofoundry.org/ontology/mp.html
+Open: Yes

+

Ontology of Microbial Phenotypes (OMP)

+

Description: An ontology of phenotypes covering microbes.
+Species: microbes
+GitHub repo: https://github.com/microbialphenotypes/OMP-ontology +Website: http://microbialphenotypes.org +OBO Foundry webpage: http://obofoundry.org/ontology/omp.html +Open: Yes

+

Ontology of Prokaryotic Phenotypic and Metabolic Characters

+

Description: An ontology of phenotypes covering microbes.
+Species: Prokaryotes +GitHub repo: https://github.com/microbialphenotypes/OMP-ontology/issues
+Website: http://microbialphenotypes.org/
+OBO Foundry webpage: http://obofoundry.org/ontology/omp.html
+Open: Yes

+

Pathogen Host Interaction Phenotype Ontology

+

Description: PHIPO is a formal ontology of species-neutral phenotypes observed in pathogen-host interactions.
+Species: pathogens
+GitHub repo: https://github.com/PHI-base/phipo
+Website: http://www.phi-base.org
+OBO Foundry webpage: http://obofoundry.org/ontology/phipo.html
+Open: Yes

+

Planarian Phenotype Ontology (PLANP)

+

Description: Planarian Phenotype Ontology is an ontology of phenotypes observed in the planarian Schmidtea mediterranea.
+Species: Schmidtea mediterranea
+GitHub repo: https://github.com/obophenotype/planarian-phenotype-ontology
+OBO Foundry webpage: http://obofoundry.org/ontology/planp.html
+Open: Yes

+

Plant Trait Ontology (TO)

+

Description: A controlled vocabulary of describe phenotypic traits in plants.
+Species: Viridiplantae
+GitHub repo: https://github.com/Planteome/plant-trait-ontology/
+OBO Foundry webpage: http://obofoundry.org/ontology/to.html
+Open: Yes

+

Plant Phenology Ontology

+

Description: An ontology for describing the phenology of individual plants and populations of plants, and for integrating plant phenological data across sources and scales.
+Species: Plants
+GitHub repo: https://github.com/PlantPhenoOntology/PPO
+OBO Foundry webpage: http://obofoundry.org/ontology/ppo.html
+Open: Yes

+

Unified Phenotype Ontology (uPheno)

+

Description: The uPheno ontology integrates multiple phenotype ontologies into a unified cross-species phenotype ontology.
+Species: Cross-species coverage
+GitHub repo: https://github.com/obophenotype/upheno
+OBO Foundry webpage: http://obofoundry.org/ontology/upheno.html
+Open: Yes

+

Xenopus Phenotype Ontology (XPO)

+

Description: XPO represents anatomical, cellular, and gene function phenotypes occurring throughout the development of the African frogs Xenopus laevis and tropicalis.
+Species: Xenopus
+GitHub repo: https://github.com/obophenotype/xenopus-phenotype-ontology
+OBO Foundry webpage: http://obofoundry.org/ontology/xpo.html
+Open: Yes

+

Zebrafish Phenotype Ontology (ZP)

+

Description: The Zebrafish Phenotype Ontology formally defines all phenotypes of the Zebrafish model organism.
+Species: Zebrafish
+GitHub repo: https://github.com/obophenotype/zebrafish-phenotype-ontology
+OBO Foundry webpage: http://obofoundry.org/ontology/zp.html
+Open: Yes

+

References

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/mungall-blog-radar/index.html b/reference/mungall-blog-radar/index.html new file mode 100644 index 000000000..9f341f6bd --- /dev/null +++ b/reference/mungall-blog-radar/index.html @@ -0,0 +1,3683 @@ + + + + + + + + + + + + + + + + + + + + + + + + Monkeying around with OWL - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Monkeying around with OWL

+

An index page to find some of our favourite articles on Chris' blog. +These are not all articles, but I selection we found useful during our every work.

+

Ontology development and modelling

+ +

Ontology curation

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/obook-maturity-indicator/index.html b/reference/obook-maturity-indicator/index.html new file mode 100644 index 000000000..6c1c1c529 --- /dev/null +++ b/reference/obook-maturity-indicator/index.html @@ -0,0 +1,3611 @@ + + + + + + + + + + + + + + + + + + + + + + + + OBOOK Maturity Indicator - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

OBOOK Maturity Indicator

+

Some resources on OBOOK are less well developed than others. We use the OBOOK Maturity Indicator to document this (discussion).

+
    +
  • : This page is under development and not yet suitable for self-study or teaching.
  • +
  • : This page is still under development (may be rough around the edges) but complete and suitable for self-study or teaching.
  • +
  • : This page is developed to an extent it can be considered stable (although nothing is ever really stable) and therefore suitable for self-study or teaching.
  • +
+

To add a status badge onto a site, simply paste a badge like this right under the title:

+
<a href="https://oboacademy.github.io/obook/reference/obook-maturity-indicator/"><img src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FOBOAcademy%2Fobook%2Fmaster%2Fdocs%2Fresources%2Fobook-badge-final.json" /></a>
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/odk/index.html b/reference/odk/index.html new file mode 100644 index 000000000..1d390f43f --- /dev/null +++ b/reference/odk/index.html @@ -0,0 +1,3695 @@ + + + + + + + + + + + + + + + + + + + + + + + + Ontology Development Kit (ODK) - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Ontology Development Kit (ODK) Reference

+

The ODK is essentially two things:

+
    +
  1. A toolbox. All frequently used tools for managing the ontology life cycle are bundled together into a Docker image: ROBOT, owltools, fastobo-validator, dosdp-tools, riot and many, many more.
  2. +
  3. A system, you could have say "methodology" for managing the ontology life cycle from continious integration and quality control to imports and release management.
  4. +
+

The Toolbox

+

The ODK bundles a lot of tools together, such as ROBOT, owltools, fastobo-validator and dosdp-tools. To get a better idea, its best to simply read the Dockerfile specifications of the ODK image:

+
    +
  • ODK Lite Image. This contains the most essentials tools related to ODK development. Most of the day to day activities of ontology developers with ROBOT are well covered by odklite.
  • +
  • ODK Full Image. Extends the ODK Lite image with a further round of powerful tools. It contains for example Apache Jena, the OBO Dashboard, the Konclude reasoner and a large array of command line tools.
  • +
+

The system for ontology life cycle management

+

One of the tools in the toolbox, the "seed my repo" function, allows us to generate a complete GitHub repository with everything needed to manage an OBO ontology according to OBO best practices. The two central components are

+
    +
  1. A Makefile that encodes the rules by which ontology release files should be derived from the source of truth (the edit file).
  2. +
  3. A support for CI such as GitHub actions or Travis for running continuous integration checks.
  4. +
+

ODK Project Configuration Schema

+

Schema can be found in ODK documentation here

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/ontology-curator/index.html b/reference/ontology-curator/index.html new file mode 100644 index 000000000..530f5560b --- /dev/null +++ b/reference/ontology-curator/index.html @@ -0,0 +1,3617 @@ + + + + + + + + + + + + + + + + + + + + + + + + A day in the life of an ontology curator - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

A Day in the Life of an Ontology Curator

+
    +
  1. Review issues on the issue tracker.
  2. +
  3. Tickets by organized by assigning labels (such as new term requests) and milestones
  4. +
  5. Can also sort tickets on Project boards +
  6. +
  7. In Mondo, we set priorities based on user requests, size of the ticket (ie amount of work required), if it is blocking something else, etc.
  8. +
  9. Edits to the Mondo ontology are made on Branches and via Pull Requests on the mondo-edit.obo file.
  10. +
  11. Example: work on an open ticket to add a new term using Protege.
  12. +
  13. Detailed instructions on how to add a new term are here.
  14. +
  15. Example: User request to add 50+ subtyps of acute myeloid leukemia. We used a ROBOT template.
  16. +
  17. Do you want to contribute? See tickets labeled good first issue.
  18. +
  19. Documentation and more instructions are available in the Mondo editors guide.
  20. +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/other-resources/index.html b/reference/other-resources/index.html new file mode 100644 index 000000000..60013ee5c --- /dev/null +++ b/reference/other-resources/index.html @@ -0,0 +1,3796 @@ + + + + + + + + + + + + + + + + + + + + + + + + Other useful resources - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Other Resources

+

Here's a collection of links about the Open Biological and Biomedical Ontologies (OBO), +and related topics.

+

If you're completely new to OBO, +I suggest starting with Ontologies 101:

+ +

If you're new to scientific computing more generally, +then I strongly recommend Software Carpentry, +which provides a set of very pragmatic introductions to +the Unix command line, git, Python, Make, +and other tools widely used by OBO developers.

+

Open Biological and Biomedical Ontologies

+

OBO is a community of people collaborating on open source ontologies for science. +We have a set of shared principles and best practises +to help people and data work together effectively.

+ +

Services

+

Here is a very incomplete list of some excellent services +to help you find an use OBO terms and ontologies.

+
    +
  • EMBL-EBI
  • +
  • OLS: Ontology Lookup Service + is an excellent ontology browser and search service
  • +
  • OxO + shows mappings between ontologies and terms
  • +
  • Zooma + for mapping free text to ontology terms
  • +
  • Onto-Animals
  • +
  • Ontobee + is an ontology browser
  • +
  • Ontofox + is an ontology extraction tool
  • +
  • Bioportal + provides ontology browsing, search, mapping, etc.
  • +
+

Tools

+

This is the suite of open source software that most OBO developers use.

+ +

Technical

+

This section is for technical reference, not beginners.

+

OBO projects use Semantic Web and Linked Data technologies:

+ +

These standards form layers:

+
    +
  1. IRI: Internationalized Resource Identifiers + are a superset of the familiar URLs used to locate resources on the web. + Every ontology term has a globally unique IRI.
  2. +
  3. RDF: Resource Description Format + is a standard for combining IRIs into subject-predicate-object "triples" + that make a statement about some thing. + Sets of triples form a graph (i.e. network), + and graphs can easily be merged to form larger graphs. + SPARQL is the language for querying RDF graphs.
  4. +
  5. RDF 1.1 Primer
  6. +
  7. SPARQL 1.1 Overview
  8. +
  9. RDFS: RDF Schema 1.1 + extends RDF with classes, hierarchies, and other features.
  10. +
  11. XSD: W3C XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes + is the common standard for datatypes in RDF
  12. +
  13. OWL: Web Ontology Language + extends RDF and RDFS to provide more powerful logic
  14. +
  15. OWL 2 Web Ontology Language Primer (Second Edition)
  16. +
+

Other useful resources on technical topics:

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/outreach/index.html b/reference/outreach/index.html new file mode 100644 index 000000000..00098a02c --- /dev/null +++ b/reference/outreach/index.html @@ -0,0 +1,3687 @@ + + + + + + + + + + + + + + + + + + + + + + Outreach materials - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

OBO Academy Outreach

+

Cite us

+

Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, & Nicolas Matentzoglu. (2022, August 3). OBO Academy: Training materials for bio-ontologists. 2022 ISMB Bio-Ontologies Community, Madison, WI. https://doi.org/10.5281/zenodo.6955490

+

Generic OBO Academy slide deck

+

Available here. Please feel free to use this slide deck to promote the OBO Academy.

+

Presentations

+
    +
  • Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, David Osumi-Sutherland, Nicolas Matentzoglu. "OBO Academy: +Training materials for Bio-ontologists". Presentation at OntoCommons, Virtual. June 14, 2023.
  • +
  • Nicole Vasilevsky and Nico Matentzoglu. Panel discussion at Knowledge Graph Conference 2023. May 08, 2023.
  • +
  • Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, Nicolas Matentzoglu. "OBO Academy: Training materials for Bio-ontologists." [Poster presentation] Biocuration 2022, Virtual. October 04, 2022.
  • +
  • James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, Nicolas Matentzoglu, Nicole Vasilevsky. "OBO Academy: Training materials for Bio-ontologists." [Lightning talk and Poster presentation] ICBO, Ann Arbor, MI. September 27, 2022. https://zenodo.org/record/7116623
  • +
  • Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, & Nicolas Matentzoglu. (2022, August 3). "OBO Academy: Training materials for bio-ontologists." Presentation at 2022 ISMB Bio-Ontologies Community, Madison, WI, July 2022
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/protege-faq/index.html b/reference/protege-faq/index.html new file mode 100644 index 000000000..ba6cb59f0 --- /dev/null +++ b/reference/protege-faq/index.html @@ -0,0 +1,3651 @@ + + + + + + + + + + + + + + + + + + + + + + + + Protege FAQ - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Protegé FAQs

+

How to escape characters in the class expression editor

+

To add an ontology term (such as a GO term) that contains ' in its name (e.g. RNA-directed 5'-3' RNA polymerase activity) in the class expression editor, you need to escape the ' characters. In Protegé 5.5 this is not automatically handled when you auto-complete with tab. To escape the character append \ before the ' -> RNA-directed 5\'-3\' RNA polymerase activity. You won't be able to add the annotation otherwise.

+

As in Protegé 5.5, the \ characters will show up in the description window, and when hovering over the term, you won't be able to click on it with a link. However, when you save the file, the relationship is saved correctly. You can double-check by going to the ontology text file and see that the term is correctly mentioned in the relationship.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/protege-interface/index.html b/reference/protege-interface/index.html new file mode 100644 index 000000000..67a0a74b3 --- /dev/null +++ b/reference/protege-interface/index.html @@ -0,0 +1,3742 @@ + + + + + + + + + + + + + + + + + + + + + + + + Protege interface - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Reference document for protege interface

+

For this reference, we will use the cell ontology to highlight the key information on the user interface in Protege

+

General interface buttons

+

+

'+' button (not shown above) = add +'?' button = explain axiom +'@' button = annotate +'x' button = remove +'o' button = edit

+

Active Ontology tab

+

Overview

+

When you open the ontology on protege, you should land on the Active ontology tab, alternatively, it is available on the top as one of your tabs.

+

+

Ontology Level Annotations

+

Annotations on the active ontology tab are ontology level annotations and contain metadata about the ontology. +This includes:

+
    +
  1. title (name of the ontology)
  2. +
  3. description
  4. +
  5. license
  6. +
  7. contributors (ideally this should be in ORCID but many ontologies use names instead)
  8. +
  9. references (under rdfs:comment)
  10. +
  11. preferred_root (this allows certain browsers to know which root to display the ontology from)
  12. +
+

Entities tab

+

Entities are where your "entries" in the ontology live and where you can add terms etc.

+

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/reasoning/index.html b/reference/reasoning/index.html new file mode 100644 index 000000000..585f72724 --- /dev/null +++ b/reference/reasoning/index.html @@ -0,0 +1,3644 @@ + + + + + + + + + + + + + + + + + + + + + + + + Reasoning - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Why do we need reasoning?

+

A quick personal perspective up-front. When I was finishing my undergrad, I barely had heard the term Semantic Web. What I had heard vaguely intrigued me, so I decided that for my final project, I would try to combine something Semantic Web related with my other major, Law and build a tool that could automatically infer the applicability of a law (written in OWL) given a legal case. Super naively, I just went went ahead, read a few papers about legal ontologies, build a simple one, loaded it into my application and somehow got it to work, with reasoning and all, without even having heard of Description Logic.

+

In my PhD, I worked on actual reasoning algorithms, which meant, no more avoiding logic. But - I did not get it. Up until this point in my life, I could just study harder and harder, and in the end I was confident with what I learned, but First Order Logic, in particular model theory and proofs, caused me anxiety until the date of my viva. In the end, a very basic understanding of model theory and Tableau did help me with charactering the algorithms I was working with (I was studying the effect of modularity, cutting out logically connected subsets of an ontology, on reasoning performance) but I can confidently say today: I never really, like deeply, understood logical proofs. I still cant read them - and I have a PhD in Reasoning (albeit from an empirical angle).

+

If you followed the Open HPI courses on logic, and you are anything like me, your head will hurt and you will want to hide under your blankets. Most students feel like that. For a complete education in Semantic Web technologies, going through this part once is essential: it tells you something about how difficult some stuff is under the hood, and how much work has been done to make something like OWL work for knowledge representation. You should have gained some appreciation of the domain, which is no less complex than Machine Learning or Stochastic Processes. But, in my experience, some of the most effective ontology engineers barely understand reasoning - definitely have no idea how it works - and still do amazing work. In that spirit, I would like to invite you at this stage to put logic and reasoning behind you (unless it made you curious of course) - you won't need to know much of that for being an effective Semantic Engineer. In the following, I will summarise some of the key take-aways that I find useful to keep in mind.

+
    +
  • Semantics define how to interpret an ontology. For example, in OWL, the statement Human SubClassOf: Mammal means that all instances of the Human class, like me, are also instances of the Mammal class. Or, in other words, from the statements:
  • +
+
Human SubClassOf: Mammal
+Nico type: Human
+
+

Semantics allow as to deduce that Nico:Mammal. What are semantics practically? Show me your semantics? Look at something like the OWL semantics. In there, you will find language statements (syntax) like X SubClassOf: Y and a bunch of formulae from model theory that describe how to interpret it - no easy read, and not really important for you now.

+
    +
  • OWL has a number of profiles, basically sub-languages where you can say less things. Why would we want to restrict our "expressivity"? Because their is a trade-off. An important slide I remember from when I learned about ontology languages was the triangle of complexity (here only paraphrased from memory):
  • +
+

What is this

+
    +
  1. When expressivity goes up, cognitive complexity and computational complexity go up.
  2. +
  3. When we want to decrease cognitive complexity (make it easier to build ontologies), expressivity goes down.
  4. +
  5. +

    When we want reasoners to be faster at making inferences (computational complexity), we need to decrease expressivity. + So we need to find a way to balance.

    +
  6. +
  7. +

    What are the most important practical applications of reasoning? There are many, and there will be many opinions, but in the OBO world, by far (95%) of all uses of reasoners pertain to the following:

    +
  8. +
  9. Classification. Most, if not all, of our ontologies are conceptually hierarchies of classes we use reasoners to automatically infer hierarchies. Look for example at the Xenopus Phenotype Ontology - the class hierarchy is entirely build with a reasoner - no Human intervention!
  10. +
  11. Debugging. There are two major threats to ontologies. In the worst case, they can be inconsistent - which means, totally broken. A slightly less bad, but still undesirable situation is that some of the classes in your ontologies break (in parlance, become unsatisfiable). This happens when you say some contradictory things about them. Reasoners help you find these unsatisfiable classes, and there is a special reasoning algorithm that can generate an explanation for you - to help fixing your problem.
  12. +
  13. +

    So in general, what is reasoning? There are probably a dozen or more official characterisations in the scientific literature, but from the perspective of biomedical ontologies, the question can be roughly split like this:

    +
  14. +
  15. +

    How can we capture what we know? This is the (research-) area of knowledge representation, logical formalisms, such as First Order Logic, Description Logic, etc. It is concerned with how we write down what we now:

    +
  16. +
+
All cars have four wheels
+If you are a human, you are also a mammal
+If you are a bird, you can fly (unless you are a penguin)
+
+
    +
  1. How can we uncover implicit knowledge efficiently? This is the area of reasoning, and while being closely related to the formalisms above, it makes sense to think of them in a distinct manner, as the problems are very different in practice. It can typically be grouped into the following two categories:
  2. +
  3. deductive reasoning infers by
  4. +
+

Lets think about a naive approach: using a fact-, or data-, base.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/release-artefacts/index.html b/reference/release-artefacts/index.html new file mode 100644 index 000000000..21c9810c9 --- /dev/null +++ b/reference/release-artefacts/index.html @@ -0,0 +1,3741 @@ + + + + + + + + + + + + + + + + + + + + + + + + Release Artefacts - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Release artefacts

+

For explanation of different release artefacts, please see discussion documentation on owl format variants

+

We made a first stab add defining release artefacts that should cover all use cases community-wide. We need to (1) agree they are all that is needed and (2) they are defined correctly in terms of ROBOT commands. This functionality replaces what was previously done using OORT.

+

Terminology:

+

The source ontology is the ontology we are talking about. A release artefact is a version of the ontology modified in some specific way, intended for public use. An import is a module of an external ontology which contains all the axioms necessary for the source ontology. A component is a file containing axioms that belong to the source ontology (but are for one reason or another, like definitions.owl, managed in a separate file). An axiom is said to be foreign if it 'belongs' to a different ontology, and native if it belongs to the source ontology. For example, the source ontology might have, for one reason or another, been physically asserted (rather than imported) the axiom TransitiveObjectProperty(BFO:000005). If the source ontology does not 'own' the BFO namespace, this axiom will be considered foreign.

+

There are currently 6 release defined in the ODK:

+
    +
  • base (required)
  • +
  • full (required)
  • +
  • non-classified (optional)
  • +
  • simple (optional)
  • +
  • basic (optional)
  • +
  • simple-non-classified (optional, transient)
  • +
+

We discuss all of them here in detail.

+

Release artefact 1: base (required)

+

The base file contains all and only native axioms. No further manipulation is performed, in particular no reasoning, redundancy stripping or relaxation. This release artefact is going to be the new backbone of the OBO strategy to combat incompatible imports and consequent lack of interoperability. (Detailed discussions elsewhere, @balhoff has documentation). Every OBO ontology will contain a mandatory base release (should be in the official OBO recommendations as well).

+

The ROBOT command generating the base artefact: +$(SRC): source ontology +$(OTHER_SRC): set of component ontologies

+
$(ONT)-base.owl: $(SRC) $(OTHER_SRC)
+    $(ROBOT) remove --input $< --select imports  --trim false \
+        merge $(patsubst %, -i %, $(OTHER_SRC)) \
+        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@
+
+

Release artefact 2: full (required)

+

The full release artefact contains all logical axioms, including inferred subsumptions. Redundancy stripping (i.e. redundant subclass of axioms) and typical relaxation operations are performed. All imports and components are merged into the full release artefact to ensure easy version management. The full release represents most closely the actual ontology as it was intended at the time of release, including all its logical implications. Every OBO ontology will contain a mandatory full release.

+

The ROBOT command generating the full artefact: +$(SRC): source ontology +$(OTHER_SRC): set of component ontologies

+
$(ONT)-full.owl: $(SRC) $(OTHER_SRC)
+    $(ROBOT) merge --input $< \
+        reason --reasoner ELK \
+        relax \
+        reduce -r ELK \
+        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@
+
+

Release artefact 3: non-classified (optional)

+

The non-classified release artefact reflects the 'unmodified state' of the editors file at release time. No operations are performed that modify the axioms in any way, in particular no redundancy stripping. As opposed to the base artefact, both component and imported ontologies are merged into the non-classified release.

+

The ROBOT command generating the full artefact: +$(SRC): source ontology +$(OTHER_SRC): set of component ontologies

+
$(ONT)-non-classified.owl: $(SRC) $(OTHER_SRC)
+    $(ROBOT) merge --input $< \
+        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@
+
+

Release artefact 4: simple (optional)

+

Many users want a release that can be treated as a simple existential graph of the terms defined in an ontology. This corresponds to the state of OBO ontologies before logical definitions and imports. For example, the only logical axioms in -simple release of CL will contain be of the form CL1 subClassOf CL2 or CL1 subClassOf R some CL3 where R is any objectProperty and CLn is a CL class. This role has be fulfilled by the -simple artefact, which up to now has been supported by OORT.

+

To construct this, we first need to assert inferred classifications, relax equivalentClass axioms to sets of subClassOf axioms and then strip all axioms referencing foreign (imported) classes. As ontologies occasionally end up with forieign classes and axioms merged into the editors file, we achieve this will a filter based on obo-namespace. (e.g. finding all terms with iri matching http://purl.obolibrary.org/obo/CL_{\d}7).

+

The ROBOT command generating the full artefact: +$(SRC): source ontology +$(OTHER_SRC): set of component ontologies +$(SIMPLESEED): all terms that 'belong' to the ontology

+
$(ROBOT) merge --input $< $(patsubst %, -i %, $(OTHER_SRC)) \
+    reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} \
+    relax \
+    remove --axioms equivalent \
+    relax \
+    filter --term-file $(SIMPLESEED) --select "annotations ontology anonymous self" --trim true --signature true \
+    reduce -r {{ project.reasoner }} \
+    annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@.tmp.owl && mv $@.tmp.owl $@
+
+

NOTES: This requires $(ONTOLOGYTERMS) to include all ObjectProperties usesd. --select parents is required for logical axioms to be retained, but results in a few upper-level classes bleeding through. We hope this will be fixed by further improvments to Monarch.

+

Release artefact 5: basic

+

Some legacy users (e.g. MGI) require an OBO DAG version of -simple. OBO files derived from OWL are not guarenteed to be acyclic, but acyclic graphs can be achieved using judicious filtering of relationships (simple existential restrictions) by objectProperty. The -basic release artefact has historically fulfilled this function as part of OORT driven ontology releases. The default -basic version corresponds to the -simple artefact with only 'part of' relationships (BFO:0000050), but others may be added where ontology editors judge these to be useful and safe to add without adding cycles. We generate by taking the simple release and filtering it

+

The ROBOT command generating the full artefact: +$(SRC): source ontology +$(OTHER_SRC): set of component ontologies +$(KEEPRELATIONS): all relations that should be preserved. +$(SIMPLESEED): all terms that 'belong' to the ontology

+
$(ROBOT) merge --input $< $(patsubst %, -i %, $(OTHER_SRC)) \
+    reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} \
+    relax \
+    remove --axioms equivalent \
+    remove --axioms disjoint \
+    remove --term-file $(KEEPRELATIONS) --select complement --select object-properties --trim true \
+    relax \
+    filter --term-file $(SIMPLESEED) --select "annotations ontology anonymous self" --trim true --signature true \
+    reduce -r {{ project.reasoner }} \
+    annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@.tmp.owl && mv $@.tmp.owl $@
+
+

Release artefact 6: simple-non-classified (optional)

+

This artefact caters to the very special and hopefully transient case of some ontologies that do not yet trust reasoning (MP, HP). The simple-non-classified artefact corresponds to the simple artefact, just without the reasoning step.

+

$(SRC): source ontology +$(OTHER_SRC): set of component ontologies +$(ONTOLOGYTERMS): all terms that 'belong' to the ontology

+
$(ONT)-simple-non-classified.owl: $(SRC) $(OTHER_SRC) $(ONTOLOGYTERMS)
+    $(ROBOT) remove --input $< --select imports \
+        merge  $(patsubst %, -i %, $(OTHER_SRC))  \
+        relax \
+        reduce -r ELK \
+        filter --term-file $(ONTOLOGYTERMS) --trim true \
+        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/semantic-engineering-toolbox/index.html b/reference/semantic-engineering-toolbox/index.html new file mode 100644 index 000000000..e6594bdb4 --- /dev/null +++ b/reference/semantic-engineering-toolbox/index.html @@ -0,0 +1,3729 @@ + + + + + + + + + + + + + + + + + + + + + + + + Semantic Engineering Toolbox - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

The Semantic OBO Engineer's Toolbox

+

Essentials

+ +

Automation

+ +

Text editors:

+ +

SPARQL query tool:

+ +

SPARQL endpoints

+ +

Templating systems

+ +

Ontology Mappings

+ +

Where to find ontologies and terms: Term browsers and ontology repositories

+
    +
  • OLS: The boss of the current term browsers out there. While the code base is a bit dated, it still gives access to a wide range of relevant open biomedical ontology terms. Note, while being a bit painful, it is possible to set up your own OLS (for your organisation) which only contains those terms/ontologies that are relevant for your work.
  • +
  • Ontobee: The default term browser for OBO term purls. For example, click on http://purl.obolibrary.org/obo/OBI_0000070. This will redirect you directly to Ontobee, to show you the terms location in the hierarchy. In practice, there is no particular reason why you would favour Ontobee over OLS for example - I just sometimes prefer the way Ontobee presents annotations and "uses" by other ontologies, so I use both.
  • +
  • AberOWL: Another ontology repository and semantic search engine. Some ontologies such as PhenomeNet can only be found on AberOWL, however, I personally prefer OLS.
  • +
  • identifiers.org: A centralised registry for identifiers used in the life sciences. This is one of the tools that bridge the gap between CURIEs and URLs, but it does not cover (OBO) ontologies very well, and if so, is not aware of the proper URI prefixes (see for example here, and HP term resolution that does not list the proper persistent URL of the HP identifier (http://purl.obolibrary.org/obo/HP_0000001)). Identifiers.org has mainly good coverage for databases/resources that use CURIE type identifiers. But: you can enter any ID you find in your data and it will tell you what it is associated with.
  • +
  • OBO Foundry Ontology Library. The OBO Foundry works with other repositories and term browsers such as OLS, Ontobee and BioPortal. For example, OLS directly reads the OBO Foundry registry metadata, and automatically loads new ontologies added to the OBO Foundry Ontology Library.
  • +
  • BioPortal
  • +
  • CPT Story. The Current Procedural Terminology was the by far most highly accessed Terminology on Bioportal - for many years. Due to license concerns, it had to be withdrawn from the repository. This story serves a cautionary tale of using terminologies with non-open or non-transparent licensing schemes.
  • +
  • AgroPortal: Like BioPortal, but focussed on the Agronomy domain.
  • +
  • Linked Open Data Vocabularies (LOV): Lists the most important vocabularies in the Linked Data space, such as Dublin Core, SKOS and Friend-of-a-Friend (FOAF).
  • +
+

Ontology visualisation

+
    +
  • OBO Graphviz: Library to visualise ontologies in beautifully readable graphics based on Dot.
  • +
+

Nico's top 10 tools for the Semantic OBO Engineer's Toolbox

+
    +
  1. ROBOT
  2. +
  3. Protégé
  4. +
  5. Term browsers (OLS, Ontobee)
  6. +
  7. Ontology Development Kit (ODK)
  8. +
  9. SPARQL (e.g. ROBOT query and Yasgui)
  10. +
  11. GNU Make
  12. +
  13. Text editor workflows (i.e. Atom, Sublime, VIM): a bit of regex
  14. +
  15. Basic Shell scripting and pipelining
  16. +
  17. From tables to ontologies: DOSDP templates and ROBOT templates
  18. +
  19. GitHub Actions
  20. +
+

Other tools in my toolbox

+

These are a bit less essential than the above, but I consider them still tremendously useful.

+
    +
  • Cogs (experimental) for automatically synchronising your spreadsheets with Google Sheets.
  • +
  • Basic Dockerfile development: This can help you automate processes that go beyond usual ODK day-to-day business, such as automated mapping tools, graph machine learning, NLP etc.
  • +
  • GitHub community management and git version control: Learn how to effectively manage your contributors, issue requests and code reviews. Also get your git commands straight - these can be life savers!
  • +
  • Basics in python scripting: This is always useful, and python is our go-to language for most of automation nowadays - this used to be Java. Most of the Java heavy lifting is done in ROBOT now!
  • +
  • SSSOM and sssom-py: Toolkit and framework for managing mappings between ontologies.
  • +
  • DROID: DROID is a web-based interface for working with make, managed by git.
  • +
  • OBO Dashboard: OBO-wide quality control monitor for OBO ontologies.
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/semantic-etl/index.html b/reference/semantic-etl/index.html new file mode 100644 index 000000000..bd4d733e9 --- /dev/null +++ b/reference/semantic-etl/index.html @@ -0,0 +1,3906 @@ + + + + + + + + + + + + + + + + + + + + + + + + Semantic ETL - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

The 3 phases of Semantic Data Engineering / ETL

+

+

Semantic Data Engineering or Semantic Extract-Transform-Load (ETL) is an engineering discipline that is concerned with extracting information from a variety of sources, linking it together into a knowledge graph and enabling a range of semantic analyses for downstream users such as data scientists or researchers.

+
    +
  1. Getting Data
  2. +
  3. Information Extraction from text
  4. +
  5. Obtaining data from external sources
  6. +
  7. In-house biocuration
  8. +
  9. Integrating data
  10. +
  11. Entity Resolution: Make sure that if your sources talk about the same things, they use the same ontologies to reference those things.
  12. +
  13. Knowledge merging: Combine the resolved sources into a coherent whole, for example a knowledge graph.
  14. +
  15. Analysis: Query the integrated data and run advanced analyses using Semantic Technologies (next week).
  16. +
+

Glossary:

+

The following glossary only says how we use the terms we are defining, not how they are defined by some higher authority.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TermDefinitionExample
EntityAn entity is a thing in the world, like a molecule, or something more complex, like a disease. Entities do not have to be material, they can be processes as well, like cell proliferation.Marfan syndrome, H2O molecule, Ring finger, Phone
TermA term is a sequence of characters (string) that refers to an entity in a precise way.SMOKER (referring to the role of being a smoker), HP:0004934 (see explanations below)
RelationA link between two (or more) entities that signifies some kind of interaction.:A :loves :B, :smoking :causes :cancer
PropertyA type of relation.The :causes in :smoking :causes :cancer
+

Getting the data

+

As a Semantic Engineer, you typically coordinate the data collection from three largely separate sources: +1. Unstructured text, for example a corpus of scientific literature +2. External biological databases, such as STRING, a database of Protein-Protein Interaction Networks. +3. Manual in-house bio-curation efforts, i.e. the manual translation and integration of information relevant to biology (or medicine) into a database.

+

Here, we are mostly concerned with the automated approaches of Semantic ETL, so we briefly touch on these and provide pointers to the others.

+

Information Extraction from text

+

The task of information extraction is concerned with extracting information from unstructured textual sources to enable identifying entities, like diseases, phenotypes and chemicals, as well as classifying them and storing them in a structured format.

+

The discipline that is concerned with techniques for extracting information from text is called Natural Language Processing (NLP).

+

NLP is a super exciting and vast engineering discipline which goes beyond the scope of this course. NLP is concerned with many problems such as document classification, speech recognition and language translation. In the context of information extraction, we are particularly interested in Named Entity Recognition (NER), and Relationship Extraction (ER).

+

Named Entity Recognition

+

Named Entity Recognition (NER) is the task of identifying and categorising entities in text. NER tooling provides functionality to first isolate parts of sentence that correspond to things in the world, and then assigning them to categories (e.g. Drug, Disease, Publication).

+

For example, consider this sentence:

+
As in the X-linked Nettleship-Falls form of ocular albinism (300500), the patients showed reduced visual acuity, photophobia, nystagmus, translucent irides, strabismus, hypermetropic refractive errors, and albinotic fundus with foveal hypoplasia.
+
+

An NER tool would first identify the relevant sentence parts that belong together:

+
As in the [X-linked] [Nettleship-Falls] form of [ocular albinism] (300500), the patients showed [reduced visual acuity], [photophobia], [nystagmus], [translucent irides], [strabismus], [hypermetropic refractive errors], and [albinotic fundus] with [foveal hypoplasia].
+
+

And then categorise them according to some predefined categories:

+
As in the Phenotype[X-linked] [Nettleship-Falls] form of Disease[ocular albinism] (300500), the patients showed Phenotype[reduced visual acuity], Phenotype[photophobia], Phenotype[nystagmus], Phenotype[translucent irides], Phenotype[strabismus], Phenotype[hypermetropic refractive errors], and Phenotype[albinotic fundus] with Phenotype[foveal hypoplasia].
+
+

Interesting sources for further reading:

+ +

Relationship extraction

+

Relationship extraction (RE) is the task of extracting semantic relationships from text. +RE is an important component for the construction of Knowledge Graphs from the Scientific Literature, a task that many Semantic Data Engineering projects pursue to augment or inform their manual curation processes.

+

Interesting sources for further reading:

+
    +
  • http://nlpprogress.com/english/relationship_extraction.html
  • +
  • https://github.com/roomylee/awesome-relation-extraction
  • +
+

Other data sources and in-house curation efforts

+
    +
  • Scientific data sources relevant to work around genes, phenotypes and diseases are plentiful. See here for an overview of the data sources used by the Monarch Initiative. All of the sources listed are part of a Semantic ETL pipeline involving the extraction of the data from data dumps (like published spreadsheets) or Web APIs, the transformation into a common format (including mapping to ontologies) and its subsequent load into the Monarch Knowledge Graph. More comprehensive lists are being produced in the academic literature, for example here.
  • +
  • In-house biocuration. Biocuration is the task of manual translation and integration of information relevant to biology (or medicine) into some kind of database form. Biocuration can take many forms:
  • +
  • The curation of scientific literature, i.e. extracting structured metadata from scientific papers to increase discoverability of relevant knowledge. The object of the curation is usually a particular publication, which goes through a triage process (Is the paper relevant to my problem? Is it good enough?), an initial metadata extraction phase (titles, authors, etc), and eventually to extracting the scientific knowledge (not unlike what the Named Entity Recongnition and Relation Extraction procedures described above) do.
  • +
  • The focussed curation of specific scientific entities, such as diseases. For example, you may be interested in discovering all therapeutic interventions / drugs used for treating a specific disease.
  • +
+

Integrating data

+

There is a huge amount of literature and tutorials on the topic of integrating data, the practice of consolidating data from disparate sources into a single dataset. We want to emphasise here two aspects of data integration, which are of particular importance to the Semantic Data engineer.

+
    +
  1. Entity Resolution: Make sure that if your sources talk about the same things, they use the same ontologies to reference those things.
  2. +
  3. Knowledge merging: Combine the resolved sources into a coherent whole, for example a knowledge graph.
  4. +
+

Entity Resolution (ER):

+

Entity resolution (ER), sometimes called "record linking", is the task of disambiguating records that correspond to real world entities across and within datasets. This task as many dimensions, but for us, the most important one is mapping a string, for example the one that was matched by our Named Entity Recognition pipeline, to ontology terms.

+

Given our example:

+
As in the Phenotype[X-linked] Nettleship-Falls form of Phenotype[ocular albinism] (300500), the patients showed Phenotype[reduced visual acuity], Phenotype[photophobia], Phenotype[nystagmus], Phenotype[translucent irides], Phenotype[strabismus], Phenotype[hypermetropic refractive errors], and Phenotype[albinotic fundus] with Phenotype[foveal hypoplasia].
+
+

We could end up, for example, resolving ocular albinism to HP:0001107.

+

There are a lot of materials about Entity Resolution in general: +- https://www.districtdatalabs.com/basics-of-entity-resolution +- https://www.sciencedirect.com/topics/computer-science/entity-resolution

+

In effect the term Ontology Mapping, which is the focus of this lesson, is Entity Resolution for ontologies - usually we don't have problem to use the two terms synonymously, although you may find that the literature typically favours one or the other.

+

Knowledge Graph / Ontology merging

+

Knowledge, Knowledge Graph or Ontology Merging are the disciplines concerned with combining all your data sources into a semantically coherent whole. This is a very complex research area, in particular to do this in a way that is semantically consistent. There are essentially two separate problems to be solved to achieve semantic merging: +1. The entities aligned during the entity resolution process must be aligned in the semantically correct way: if you you use logical equivalence to align them (owl:equivalentClasses) the classes must mean absolutely the same thing, or else you may run into the hairball problem, in essence faulty equivalence cliques. In cases of close, narrow or broadly matching classes, the respective specialised semantically correct relationships need to be used in the merging process. +2. The axioms of the merged ontologies must be logically consistent. For example, one ontology may say: a disease is a material entity. Another: a disease is a process. A background, or upper, ontology such as the ubiquitous Basic Formal Ontology (BFO) furthermore says that a process is not a material entity and vice versa. Merging this two ontologies would cause logical inconsistency.

+

Unfortunately, the literature on ontology and knowledge graph merging is still sparse and very technical. You are probably best off checking out the OpenHPI course on Ontology Alignment, which is closely related.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/sparql-basics/index.html b/reference/sparql-basics/index.html new file mode 100644 index 000000000..6da8e9d83 --- /dev/null +++ b/reference/sparql-basics/index.html @@ -0,0 +1,3724 @@ + + + + + + + + + + + + + + + + + + + + + + + + SPARQL basics - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Basic SPARQL commands useful for OBO Engineers

+

Basic SELECT query

+

A basic SELECT query contains a set of prefixes, a SELECT clause and a WHERE clause.

+
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+
+SELECT ?term ?value
+WHERE {
+  ?term rdfs:label ?value .
+}
+
+

Prefixes

+

Prefixes allow you to specify shortcuts. For example, instead of using the prefixes above, you could have simply said:

+
SELECT ?term ?value
+WHERE {
+  ?term <http://www.w3.org/2000/01/rdf-schema#label> ?value .
+}
+
+

Without the prefix. It means the exact same thing. But it looks nicer. Some people even go as far as adding entire entities into the prefix header:

+
PREFIX label: <http://www.w3.org/2000/01/rdf-schema#label>
+
+SELECT ?term ?value
+WHERE {
+  ?term label: ?value .
+}
+
+

This query is, again, the same as the ones above, but even more concise.

+

SELECT clause

+

The SELECT clause defines what you part of you query you want to show, for example, as a table.

+
SELECT ?term ?value
+
+

means: "return" or "show" whatever you find for the variable ?term and the variable ?value.

+

There are other cool things you can do in the SELECT clause:

+
    +
  • Maths. You can count.
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/sparql-reference/index.html b/reference/sparql-reference/index.html new file mode 100644 index 000000000..2e329e37c --- /dev/null +++ b/reference/sparql-reference/index.html @@ -0,0 +1,4213 @@ + + + + + + + + + + + + + + + + + + + + + + + + SPARQL templates - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Reference templates for SPARQL queries

+

This document contains template SPARQL queries that can be adapted. +Comments are added in-code with # above each step to explain them so that queries can be spliced together

+

Checks/Report generation

+

All terms native to ontology

+

note: we assume that all native terms here have the same namespace - that of the ontology

+
# select unique instances of the variable
+SELECT DISTINCT ?term
+WHERE {
+  # selecting where the variable term is either used as a subject or object
+  { ?s1 ?p1 ?term . }
+  UNION
+  { ?term ?p2 ?o2 . }
+  # filtering out only terms that have the MONDO namespace (assumed to be native terms)
+  FILTER(isIRI(?term) && (STRSTARTS(str(?term), "http://purl.obolibrary.org/obo/MONDO_")))
+}
+
+

Report of terms with labels containing certain strings in ubergraph

+
# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+prefix BFO: <http://purl.obolibrary.org/obo/BFO_>
+
+# selecting only unique instances of the three variables
+SELECT DISTINCT ?entity ?label WHERE
+{
+  # the variable label is a rdfs:label
+  VALUES ?property {
+    rdfs:label
+  }
+
+  # only look for uberon terms. note: this is only used in ubergraph, use filter for local ontology instead.
+  ?entity rdfs:isDefinedBy <http://purl.obolibrary.org/obo/uberon.owl> .
+
+  # defining the order of variables in the triple
+  ?entity ?property ?label .
+  # entity must be material
+  ?entity rdfs:subClassOf BFO:0000040
+  # filtering out triples where the variable label has sulcus or incisure, or fissure in it
+  FILTER(contains(STR(?label), "sulcus")||contains(STR(?label), "incisure")||contains(STR(?label), "fissure"))
+
+}
+# arrange report by entity variable
+ORDER BY ?entity
+
+

Report of labels and definitions of terms with certain namespace

+
prefix label: <http://www.w3.org/2000/01/rdf-schema#label>
+prefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
+prefix definition: <http://purl.obolibrary.org/obo/IAO_0000115>
+prefix owl: <http://www.w3.org/2002/07/owl#>
+
+# select a report with 3 variables
+SELECT DISTINCT ?term ?label ?def
+
+# defining the properties to be used
+    WHERE {
+        VALUES ?defproperty {
+        definition:
+        }
+        VALUES ?labelproperty {
+        label:
+        }
+
+# defining the order of the triples
+      ?term ?defproperty ?def .
+      ?term ?labelproperty ?label .
+
+# selects entities that are in a certain namespace
+  FILTER(isIRI(?term) && (STRSTARTS(str(?term), "http://purl.obolibrary.org/obo/CP_")))
+}
+
+# arrange report by term variable
+ORDER BY ?term
+
+

Definition lacks xref

+

adaptable for lacking particular annotation

+
# adding prefixes used
+prefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
+prefix definition: <http://purl.obolibrary.org/obo/IAO_0000115>
+prefix owl: <http://www.w3.org/2002/07/owl#>
+
+SELECT ?entity ?property ?value WHERE
+{
+  # the variable property has to be defintion (IAO:0000115)
+  VALUES ?property {
+    definition:
+  }
+  # defining the order of variables in the triple
+  ?entity ?property ?value .
+
+  # selecting annotation on definition
+  ?def_anno a owl:Axiom ;
+  owl:annotatedSource ?entity ;
+  owl:annotatedProperty definition: ;
+  owl:annotatedTarget ?value .
+
+  # filters out definitions which do not have a dbxref annotiton
+  FILTER NOT EXISTS {
+    ?def_anno oboInOwl:hasDbXref ?x .
+  }
+
+  # removes triples where entity is blank
+  FILTER (!isBlank(?entity))
+  # selects entities that are native to ontology (in this case MONDO)
+  FILTER (isIRI(?entity) && STRSTARTS(str(?entity), "http://purl.obolibrary.org/obo/MONDO_"))
+
+}
+# arrange report by entity variable
+ORDER BY ?entity
+
+

Checks wether definitions contain underscore characters

+

adaptable for checking if there is particular character in annotation

+
# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+prefix IAO: <http://purl.obolibrary.org/obo/IAO_>
+prefix definition: <http://purl.obolibrary.org/obo/IAO_0000115>
+
+# selecting only unique instances of the three variables
+SELECT DISTINCT ?entity ?property ?value WHERE
+{
+  # the variable property has to be definition (IAO:0000115)
+  VALUES ?property {
+    definition:
+  }
+  # defining the order of variables in the triple
+  ?entity ?property ?value .
+  # filtering out triples where the variable value has _ in it
+  FILTER( regex(STR(?value), "_"))
+  # removes triples where entity is blank
+  FILTER (!isBlank(?entity))
+}
+# arrange report by entity variable
+ORDER BY ?entity
+
+

Only allowing a fix set of annotation properties

+
# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+prefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
+prefix IAO: <http://purl.obolibrary.org/obo/IAO_>
+prefix RO: <http://purl.obolibrary.org/obo/RO_>
+prefix mondo: <http://purl.obolibrary.org/obo/mondo#>
+prefix skos: <http://www.w3.org/2004/02/skos/core#>
+prefix dce: <http://purl.org/dc/elements/1.1/>
+prefix dcterms: <http://purl.org/dc/terms/>
+
+# selecting only unique instances of the three variables
+SELECT DISTINCT ?term ?property ?value WHERE
+{
+  # order of the variables in the triple
+    ?term ?property ?value .
+    # the variable property is an annotation property
+    ?property a owl:AnnotationProperty .
+  # selects entities that are native to ontology (in this case MONDO)
+    FILTER (isIRI(?term) && regex(str(?term), "^http://purl.obolibrary.org/obo/MONDO_"))
+    # removes triples where the variable value is blank
+    FILTER(!isBlank(?value))
+  # listing the allowed annotation properties
+  FILTER (?property NOT IN (dce:creator, dce:date, IAO:0000115, IAO:0000231, IAO:0100001, mondo:excluded_subClassOf, mondo:excluded_from_qc_check, mondo:excluded_synonym, mondo:pathogenesis, mondo:related, mondo:confidence, dcterms:conformsTo, mondo:should_conform_to, oboInOwl:consider, oboInOwl:created_by, oboInOwl:creation_date, oboInOwl:hasAlternativeId, oboInOwl:hasBroadSynonym, oboInOwl:hasDbXref, oboInOwl:hasExactSynonym, oboInOwl:hasNarrowSynonym, oboInOwl:hasRelatedSynonym, oboInOwl:id, oboInOwl:inSubset, owl:deprecated, rdfs:comment, rdfs:isDefinedBy, rdfs:label, rdfs:seeAlso, RO:0002161, skos:broadMatch, skos:closeMatch, skos:exactMatch, skos:narrowMatch))
+}
+
+

Checking for misused replaced_by

+

adaptable for checking that a property is used in a certain way

+
# adding prefixes used
+PREFIX owl: <http://www.w3.org/2002/07/owl#>
+PREFIX oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
+PREFIX replacedBy: <http://purl.obolibrary.org/obo/IAO_0100001>
+
+# selecting only unique instances of the three variables
+SELECT DISTINCT ?entity ?property ?value WHERE {
+ # the variable property is IAO_0100001 (item replaced by)
+ VALUES ?property { replacedBy: }
+
+ # order of the variables in the triple
+ ?entity ?property ?value .
+ # removing entities that have either owl:deprecated true or oboInOwl:ObsoleteClass (these entities are the only ones that should have replaced_by)
+ FILTER NOT EXISTS { ?entity owl:deprecated true }
+ FILTER (?entity != oboInOwl:ObsoleteClass)
+}
+# arrange report by entity variable
+ORDER BY ?entity
+
+

Count

+

Count class by prefixes

+
# this query counts the number of classes you have with each prefix (eg number of MONDO terms, CL terms, etc.)
+
+# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+prefix obo: <http://purl.obolibrary.org/obo/>
+
+# selecting 2 variables, prefix and numberOfClasses, where number of classes is a count of distinct cls
+SELECT ?prefix (COUNT(DISTINCT ?cls) AS ?numberOfClasses) WHERE
+{
+  # the variable cls is a class
+  ?cls a owl:Class .
+  # removes any cases where the variable cls is blank
+  FILTER (!isBlank(?cls))
+  # Binds the variable prefix as the prefix of the class (eg. MONDO, CL, etc.). classes that do not have obo purls will come out as blank in the report.
+  BIND( STRBEFORE(STRAFTER(str(?cls),"http://purl.obolibrary.org/obo/"), "_") AS ?prefix)
+}
+# grouping the count by prefix
+GROUP BY ?prefix
+
+

Counting subclasses in a namespace

+
# this query counts the number of classes that are subclass of CL:0000003 (native cell) that are in the pcl namespace
+
+# adding prefixes used
+PREFIX owl: <http://www.w3.org/2002/07/owl#>
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+PREFIX CL: <http://purl.obolibrary.org/obo/CL_>
+PREFIX PCL: <http://purl.obolibrary.org/obo/PCL_>
+
+# count the number of unique term
+SELECT (COUNT (DISTINCT ?term) as ?pclcells)
+WHERE {
+    # the variable term is a class
+    ?term a owl:Class .
+    # the variable term has to be a subclass of CL:0000003, including those that are subclassof by property path
+    ?term rdfs:subClassOf* CL:0000003
+  # only count the term if it is in the pcl namespace
+  FILTER(isIRI(?term) && (STRSTARTS(str(?term), "http://purl.obolibrary.org/obo/PCL_")))
+}
+
+

Removing

+

Removes all RO terms

+

adaptable for removing all terms of a particular namespace

+
# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+
+# removing triples
+DELETE {
+  ?s ?p ?o
+}
+WHERE
+{
+  {
+    # the variable p must be a rdfs:label
+    VALUES ?p {
+      rdfs:label
+    }
+  # the variable s is an object property
+  ?s a owl:ObjectProperty ;
+  # the other variables can be anything else (note the above value restriction of p)
+  ?p ?o
+    # filter out triples where ?s starts with "http://purl.obolibrary.org/obo/RO_"
+    FILTER (isIRI(?s) && STRSTARTS(str(?s), "http://purl.obolibrary.org/obo/RO_"))
+  }
+}
+
+

Deleting axiom annotations by prefix

+
# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+
+# delete triples
+DELETE {
+  ?anno ?property ?value .
+}
+WHERE {
+  # the variable property is either synonym_type: or source:
+  VALUES ?property { synonym_type: source: }
+  # structure of variable value and variable anno
+  ?anno a owl:Axiom ;
+         owl:annotatedSource ?s ;
+         owl:annotatedProperty ?p ;
+         owl:annotatedTarget ?o ;
+         ?property ?value .
+  # filter out the variable value which start with "ICD10EXP:"
+  FILTER(STRSTARTS(STR(?value),"ICD10EXP:"))
+}
+
+

Replacing

+

Replace oboInOwl:source with oboInOwl:hasDbXref in synonyms annotations

+

adaptable for replacing annotations properties on particular axioms

+
# adding prefixes used
+prefix owl: <http://www.w3.org/2002/07/owl#>
+prefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
+prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+
+# delete triples where the relation is oboInOwl:source
+DELETE {
+    ?ax oboInOwl:source ?source .
+}
+# insert triples where the variables ax and source defined above are used, but using oboInOwl:hasDbXref instead
+INSERT {
+    ?ax oboInOwl:hasDbXref ?source .
+}
+WHERE
+{
+  # restricting to triples where the property variable is in this list
+  VALUES ?property { oboInOwl:hasExactSynonym oboInOwl:hasNarrowSynonym  oboInOwl:hasBroadSynonym oboInOwl:hasCloseSynonym oboInOwl:hasRelatedSynonym } .
+  # order of the variables in the triple
+  ?entity ?property ?value .
+  # structure on which the variable ax and source applies
+  ?ax rdf:type owl:Axiom ;
+    owl:annotatedSource ?entity ;
+    owl:annotatedTarget ?value ;
+    owl:annotatedProperty ?property ;
+    oboInOwl:source ?source .
+  # filtering out triples where entity is an IRI
+  FILTER (isIRI(?entity))
+}
+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/synonyms-obo/index.html b/reference/synonyms-obo/index.html new file mode 100644 index 000000000..107c36bea --- /dev/null +++ b/reference/synonyms-obo/index.html @@ -0,0 +1,3773 @@ + + + + + + + + + + + + + + + + + + + + + + + + Synonyms - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Synonyms in OBO

+

A synonym indicates an alternative name for a term. Terms can have multiple synonyms.

+

The scope of a synonym may fall into one of four categories:

+

Exact

+

The definition of the synonym is exactly the same as primary term definition. This is used when the same class can have more than one name.

+

For example, hereditary Wilms' tumor has the exact synonoym familial Wilms' tumor.

+

Additionally, translations into other languages are listed as exact synonyms. For example, the Plant Ontology list both Spanish and Japanese translations as exact synonyms; e.g. anther wall has exact synonym ‘pared de la antera’ (Spanish) and ‘葯壁 ‘(Japanese).

+

Narrow

+

The definition of the synonym is the same as the primary definition, but has additional qualifiers.

+

For example, pod is a narrow synonym of fruit.

+

Note - when adding a narrow synonym, please first consider whether a new subclass should be added instead of a narrow synonym. If there is any uncertainty, start a discussion on the GitHub issue tracker.

+

Broad

+

The primary definition accurately describes the synonym, but the definition of the synonym may encompass other structures as well. In some cases where a broad synonym is given, it will be a broad synonym for more than one ontology term.

+

For example, Cyst of eyelid has the broad synonym Lesion of the eyelid.

+

Note - when adding a broad synonym, please first consider whether a new superclass should be added instead of a broad synonym. If there is any uncertainty, start a discussion on the GitHub issue tracker.

+ +

This scope is applied when a word of phrase has been used synonymously with the primary term name in the literature, but the usage is not strictly correct. That is, the synonym in fact has a slightly different meaning than the primary term name. Since users may not be aware that the synonym was being used incorrectly when searching for a term, related synonyms are included.

+

For example, Autistic behavior has the related synonym Autism spectrum disorder.

+

Synonym types

+

Synonyms can also be classified by types. The default is no type. The synonym types vary in each ontology, but some commonly used synonym types include:

+
    +
  • abbreviation - to indicate the synonym is an abbreviation. Note the scope for an acronym should be determined on a case-by-case basis. Not all acronyms are necessarily exact.
  • +
  • ambiguous - to indicate the synonym is open to more than one interpretation; may have a double meaning
  • +
  • dubious synonym - to indicate the synonym may be suspect
  • +
  • layperson term - to indicate the synonym is common language (used by the Human Phenotype Ontology)
  • +
  • plural form - indicating the form of the term that means more than one
  • +
  • UK spelling - the english language spelling that is used in the United Kingdom (UK) but not in the United States (US)
  • +
+

Database cross references

+

Whenever possible, database cross-references (dbxrefs) for synonyms should be provided, to indicate the publication that used the synonym. References to PubMed IDs should be in the format PMID:XXXXXXX (no space). However, dbxrefs for synonyms are not mandatory in most ontologies.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/tables-and-triples/index.html b/reference/tables-and-triples/index.html new file mode 100644 index 000000000..c29ba363d --- /dev/null +++ b/reference/tables-and-triples/index.html @@ -0,0 +1,4791 @@ + + + + + + + + + + + + + + + + + + + + + + + + Tables and Triples - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + + +

Tables and Triples

+

Tables and triples seem very different. +Tables are familiar and predictable. +Triples are weird and floppy. +SQL is normal, SPARQL is bizarre, at least at first.

+

Tables are great, and they're the right tool for a lot of jobs, +but they have their limitations. +Triples shine when it comes to merging heterogeneous data. +But it turns out that there's a clear path from tables to triples, +which should help make RDF make more sense.

+

Tables

+

Tables are great! +Here's a table!

+ + + + + + + + + + + + + + + + + + + + + + + + + +
first_namelast_name
LukeSkywalker
LeiaOrgana
DarthVader
HanSolo
+

You won't be surprised to find out +that tables have rows and columns. +Often each row corresponds to some thing +that we want to talk about, +such as a fictional character from Star Wars. +Each column usually corresponds to some sort of property +that those things might have. +Then the cells contain the values of those properties +for their respective row. +We take some sort of complex information about the world, +and we break it down along two dimensions: +the things (rows) and their properties (columns).

+

Primary Keys

+

Tables are great! +We can add another name to our table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
first_namelast_name
LukeSkywalker
LeiaOrgana
DarthVader
HanSolo
AnakinSkywalker
+

Hmm. +That's a perfectly good table, +but it's not capturing the information that we wanted. +It turns out (Spoiler Alert!) that Anakin Skywalker is Darth Vader! +We might have thought that the rows of our table +were describing individual people, +but it turns out that they're just describing individual names. +A person can change their name +or have more than one name.

+

We want some sort of identifier +that lets us pick out the same person, +and distinguish them from all the other people. +Sometimes there's a "natural key" that we can use for this purpose: +some bit of information that uniquely identifies a thing. +When we don't have a natural key, we can generate an "artificial key". +Random strings and number can be good artificial keys, +but sometimes a simple incrementing integer is good enough.

+

The main problem with artificial keys +is that it's our job to maintain the link +between the thing and the identifier that we gave it. +We prefer natural keys because we just have to inspect that thing +(in some way) +to figure out what to call it. +Even when it's possible, +sometimes that's too much work. +Maybe we could use a DNA sequence as a natural key for a person, +but it probably isn't practical. +We do use fingerprints and facial recognition, +for similar things, though.

+

(Do people in Star Wars even have DNA? +Or just midichlorions?)

+

Let's add a column with an artificial key to our table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idfirst_namelast_name
1LukeSkywalker
2LeiaOrgana
3DarthVader
4HanSolo
3AnakinSkywalker
+

This is our table of names, +allowing a given person to have multiple names. +But what we thought we wanted was a person table +with one row for each person, like this:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idfirst_namelast_name
1LukeSkywalker
2LeiaOrgana
3DarthVader
4HanSolo
+

In SQL we could assert that the "sw_id" column of the person table +is a PRIMARY KEY. +This means it must be unique. +(It probably shouldn't be NULL either!)

+

The names in the person table could be the primary names +that we use in our Star Wars database system, +and we could have another alternative_name table:

+ + + + + + + + + + + + + + + +
sw_idfirst_namelast_name
3AnakinSkywalker
+

Holes

+

Tables are great! +We can add more columns to our person table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idfirst_namelast_nameoccupation
1LukeSkywalkerJedi
2LeiaOrganaprincess
3DarthVader
4HanSoloscoundrel
+

The 2D pattern of a table is a strong one. +It not only provides a "slot" (cell) +for every combination of row and column, +it also makes it very obvious when one of those slots is empty. +What does it mean for a slot to be empty? +It could mean many things.

+

For example, in the previous table +in the row for Darth Vader, +the cell for the "occupation" column is empty. +This could mean that:

+
    +
  • we don't know whether he has an occupation
  • +
  • we know that he has an occupation, but we don't know which occupation it is.
  • +
  • we might know, but we haven't bothered to write it down yet
  • +
  • we might know, but it doesn't fit nicely + into the New Republic Standard Registry of Occupations; + in other words, we know what his occupation is, + but including it here would violate a constraint on our database
  • +
  • we specifically know that he doesn't have an occupation; + we triple-checked
  • +
  • we know more generally (Spoiler Alert!!) that he's dead, + and dead people can't have an occupation.
  • +
+

I'm sure I haven't captured all the possibilities. +The point is that there's lot of possible reasons +why a cell would be blank. +So what can we do about it?

+

If our table is stored in a SQL database, +then we have the option of putting a NULL value in the cell. +NULL is pretty strange. +It isn't TRUE and it isn't FALSE. +Usually NULL values are excluded from SQL query results +unless you are careful to ask for them.

+

The way that NULL works in SQL eliminates some of the possibilities above. +SQL uses the "closed-world assumption", +which is the assumption that if a statement is true then it's known to be true, +and conversely that if it's not known to be true then it's false. +So if Anakin's occupation is NULL in a SQL database, +then as far as SQL is concerned, +we must know that he doesn't have an occupation. +That might not be what you were expecting!

+

The Software Carpentry module on +Missing Data +has more information.

+

Multiple Values

+

Tables are great! +Let's add even more information to our table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idfirst_namelast_nameoccupationenemy
1LukeSkywalkerJedi3
2LeiaOrganaprincess3
3DarthVader1,2,4
4HanSoloscoundrel3
+

We're trying to say that Darth Vader is the enemy of everybody else in our table. +We're using the primary key of the person in the enemy column, which is good, +but we've ended up with multiple values in the "enemy" column +for Darth Vader.

+

In any table or SQL database you could +make the "enemy" column a string, +pick a delimiter such as the comma, +and concatenate your values into a comma-separated list. +This works, but not very well.

+

In some SQL databases, such as Postgres, +you could given the "enemy" column an array type, +so it can contain multiple values. +You get special operators for querying inside arrays. +This can work pretty well.

+

The usual advice is to break this "one to many" information +into a new "enemy" table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idenemy
13
23
31
32
34
41
+

Then you can JOIN the person table to the enemy table as needed.

+

Sparse Tables

+

Tables are great! +Let's add even more information to our table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idfirst_namelast_nameoccupationfatherlightsaber_colorship
1LukeSkywalkerJedi3green
2LeiaOrganaprincess3
3DarthVaderred
4HanSoloscoundrelMillennium Falcon
+

A bunch of these columns only apply to a few rows. +Now we've got a lot more NULLs to deal with. +As the number of columns increases, +this can become a problem.

+

Property Tables

+

Tables are great! +If sparse tables are a problem, +then let's try to apply the same solution +that worked for the "many to one" problem in the previous section.

+

name table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idfirst_namelast_name
1LukeSkywalker
2LeiaOrgana
3DarthVader
4HanSolo
3AnakinSkywalker
+

occupation table:

+ + + + + + + + + + + + + + + + + + + + + +
sw_idoccupation
1Jedi
2princess
4scoundrel
+

enemy table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idenemy
13
23
31
32
34
41
+

father table:

+ + + + + + + + + + + + + + + + + +
sw_idfather
13
23
+

lightsaber_color table:

+ + + + + + + + + + + + + + + + + +
sw_idlightsaber_color
1green
3red
+

ship table:

+ + + + + + + + + + + + + +
sw_idship
4Millennium Falcon
+

Hmm. +Yeah, that will work. +But every query we write will need some JOINs. +It feels like we've lost something.

+

Entity, Attribute, Value

+

Tables are great! +But there's such a thing as too many tables. +We started out with a table +with a bunch of rows and a bunch of columns, +and ended up with a bunch of tables +with a bunch of rows but just a few columns.

+

I have a brilliant idea! +Let's combine all these property tables into just one table, +by adding a "property" column!

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idpropertyvalue
1first_nameLuke
2first_nameLeia
3first_nameDarth
4first_nameHan
5first_nameAnakin
1last_nameSkywalker
2last_nameSkywalker
3last_nameVader
4last_nameSolo
5last_nameSkywalker
1occupationJedi
2occupationprincess
4occupationscoundrel
1enemy3
2enemy3
3enemy1
3enemy2
3enemy4
4enemy1
1father3
2father3
1lightsaber_colorgreen
3lightsaber_colorred
4shipMillenium Falcon
+

It turns out that I'm not the first one to think of this idea. +People call it "Entity, Attribute, Value" or "EAV". +People also call it an "anti-pattern", +in other words: a clear sign that you've made a terrible mistake.

+

There are lots of circumstances in which +one big, extremely generic table is a bad idea. +First of all, you can't do very much +with the datatypes for the property and value columns. +They kind of have to be strings. +It's potentially difficult to index. +And tables like this are miserable to query, +because you end up with all sorts of self-joins to handle.

+

But there's at least one use case where it turns out to work quite well...

+

Merging Tables

+

Tables are great! +Until they're not.

+

The strong row and column structure of tables +makes them great for lots of things, +but not so great for merging data from different sources. +Before you can merge two tables +you need to know all about:

+
    +
  1. how the columns are structured
  2. +
  3. what the rows mean
  4. +
  5. what the cells mean
  6. +
+

So you need to know the schemas of the two tables +before you can start merging them together. +But if you happen to have two EAV tables then, +as luck would have it, +they already have the same schema!

+

You also need to know that you're talking about the same things: +the rows have to be about the same things, +you need to be using the same property names for the same things, +and the cell values also need to line up. +If only there was an open standard for specifying globally unique identifiers...

+

Yes, you guessed it: URLs (and URNs and URIs and IRIs)! +Let's assume that we use the same URLs for the same things +across the two tables. +Since we're a close-knit community, +we've come to an agreement on a Star Wars data vocabulary.

+

URLs are annoyingly long to use in databases, +so let's use standard "sw" prefix to shorten them. +Now we have table 1:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idpropertyvalue
sw:1sw:first_nameLuke
sw:2sw:first_nameLeia
sw:3sw:first_nameDarth
sw:4sw:first_nameHan
sw:5sw:first_nameAnakin
sw:1sw:last_nameSkywalker
sw:2sw:last_nameSkywalker
sw:3sw:last_nameVader
sw:4sw:last_nameSolo
sw:5sw:last_nameSkywalker
sw:1sw:occupationsw:Jedi
sw:2sw:occupationsw:princess
sw:4sw:occupationsw:scoundrel
+

and table 2:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sw_idpropertyvalue
sw:1sw:enemysw:3
sw:2sw:enemysw:3
sw:3sw:enemysw:1
sw:3sw:enemysw:2
sw:3sw:enemysw:4
sw:4sw:enemysw:1
sw:1sw:fathersw:3
sw:2sw:fathersw:3
sw:1sw:lightsaber_colorgreen
sw:3sw:lightsaber_colorred
sw:4sw:shipMillenium Falcon
+

To merge these two tables, we simple concatenate them. +It couldn't be simpler.

+

Wait, this looks kinda familiar...

+

RDF

+

These tables are pretty much in RDF format. +You just have to squint a little!

+
    +
  • sw_id == subject
  • +
  • property == predicate
  • +
  • value == object
  • +
+

Each row of the table is a subject-predicate-object triple. +Our subjects, predicates, and some objects are URLs. +We also have some literal objects. +We could turn this table directly into Turtle format +with a little SQL magic +(basically just concatenating strings):

+
SELECT "@prefix sw: <http://example.com/sw_> ."
+UNION ALL
+SELECT ""
+UNION ALL
+SELECT
+   sw_id
+|| " "
+|| property
+|| " "
+|| IF(
+     INSTR(value, ":"),
+     value,                -- CURIE
+     """" || value || """" -- literal
+   )
+|| " ."
+FROM triple_table;
+
+

The first few lines will look like this:

+
@prefix sw: <http://example.com/sw_> .
+
+sw:1 sw:first_name "Luke" .
+sw:2 sw:first_name "Leia" .
+sw:3 sw:first_name "Darth" .
+sw:4 sw:first_name "Han" .
+
+

Two things we're missing from RDF are +language tagged literals and typed literals. +We also haven't used any blank nodes in our triple table. +These are easy enough to add.

+

The biggest thing that's different about RDF +is that it uses the "open-world assumption", +so something may be true even though +we don't have a triple asserting that it's true. +The open-world assumption is a better fit +than the closed-world assumption +when we're integrating data on the Web.

+

Conclusion

+

Tables are great! +We use them all the time, +they're strong and rigid, +and we're comfortable with them.

+

RDF, on the other hand, looks strange at first. +For most common data processing, +RDF is too flexible. +But sometimes flexiblity is the most important thing.

+

The greatest strength of tables is their rigid structure, +but that's also their greatest weakness. +We saw a number of problems with tables, +and how they could be overcome +by breaking tables apart into smaller tables, +until we got down to the most basic pattern: +subject-predicate-object. +Step by step, we were pushed toward RDF.

+

Merging tables is particularly painful. +When working with data on the Web, +merging is one of the most common and important operations, +and so it makes sense to use RDF for these tasks. +If self-joins with SQL is the worst problem for EAV tables, +then SPARQL solves it.

+

These examples show that it's not really very hard +to convert tables to triples. +And once you've seen SPARQL, the RDF query language, +you've seen one good way to convert triples to tables: +SPARQL SELECT results are just tables!

+

Since it's straightforward to convert +tables to triples and back again, +make sure to use the right tool for the right job. +When you need to merge heterogeneous data, reach for triples. +For most other data processing tasks, use tables. +They're great!

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/troublehooting-robot/index.html b/reference/troublehooting-robot/index.html new file mode 100644 index 000000000..c3b01e78a --- /dev/null +++ b/reference/troublehooting-robot/index.html @@ -0,0 +1,3837 @@ + + + + + + + + + + + + + + + + + + + + + + + + Troubleshooting ROBOT - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + +

Lessons learned from troubleshooting ROBOT

+

Prerequisites

+ +

Learning objectives

+

Learn common mistakes when using ROBOT and how to troubleshoot and fix them.

+

Lessons learned

+

Copying-pasting (especially in google docs) can introduce unexpected format changes in row 2 of the template:

+
    +
  • Note that these format changes are not always visible.
  • +
  • The most common typos are:
  • +
  • introduction of space in cells
  • +
  • single quotes are changed into apostrophes
  • +
  • These errors are most commonly reported as "MANCHESTER PARSE ERROR"
  • +
+

Restrictions for the first 2 rows of a ROBOT template:

+
    +
  • In the same column, it is OK to have a header string (row #1) with no template string (row #2).
  • +
  • the information in the column is useful to curators (e.g. term labels) but will be ignored by ROBOT.
  • +
+

+
    +
  • In the same column, if there is a template string (row #2), there MUST be a header string (row #1)
  • +
  • if the row #1 is missing, the error will be reported as: COLUMN MISMATCH ERROR the template string in column 1 must have a corresponding header in table "tmp/merge_template.tsv”
  • +
+

+

The content of the template break some OBO or Protege rules

+
    +
  • for example, Protege only allows one comment on a class. If you are adding new comments to terms via ROBOT, you will get an error if a comment already exists on a term.
  • +
  • error will be reported as: OBO STRUCTURE ERROR Ontology does not conform to OBO structure rules: multiple comment tags not allowed.
  • +
  • Note: If you run ROBOT and get an error, it may create a blank file. You need to discard the changes and/or open a new branch. The error with the optional “null” is when the mondo-edit file is empty.
    +Optional.get() cannot be called on an absent value
    +Use the -vvv option to show the stack trace.
    +Use the --help option to see usage information
    +make: *** [mondo.Makefile:454: merge_template] Error 1
  • +
+

New ID prefix:

+
    +
  • ROBOT template can be used to add axioms containing terms (and IDs) from other ontologies which were recently imported
  • +
  • The ID prefix is not recognized by ROBOT, and the error is reported as MANCHESTER PARSE ERROR
  • +
  • Resolution: the ontology Makefile should be updated to include the prefix in the merge_template.
  • +
  • Note: If you run ROBOT and get an error, it may create a blank file. You need to discard the changes and/or open a new branch.
  • +
+

Example templates

+
    +
  • Example templates from Mondo are available here
  • +
  • Example templates from OBI are available here
  • +
+

Contributors

+
    +
  • Sabrina Toro (ORCID)
  • +
  • Nicole Vasilevsky (ORCID)
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/reference/wikidata/index.html b/reference/wikidata/index.html new file mode 100644 index 000000000..5192f2e12 --- /dev/null +++ b/reference/wikidata/index.html @@ -0,0 +1,3801 @@ + + + + + + + + + + + + + + + + + + + + + + + + A reference guide to Wikidata - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+ +
+ + + +
+
+ + + + + + + + + + + + + +

A reference guide to Wikidata

+ +

A reference guide to Wikidata and its connection to OBO

+

Introduction to Wikidata

+ +

OBO in Wikidata

+ +

Licenses

+

On Wikidata the following licenses applies:

+

"All structured data from the main, Property, Lexeme, and EntitySchema namespaces is available under the Creative Commons CC0 License; text in the other namespaces is available under the Creative Commons Attribution-ShareAlike License"

+

Adding non-CC0 licensed OBO ontologies in full might be problematic due to +* License stacking

+

IANL, but my understanding is that as long as only URI mappings are created to OBO ontology terms no licenses are breached (even if the ontology is not CC0)

+

Why map OBO uris to Wikidata?

+
    +
  • Wikidata is a hub in the Linked Open Data cloud; it is, thus, a good place to crowdsource database cross references (e.g. between the Cell Ontology and FMA).
  • +
  • Wikidata provides direct links between items and Wikipedia, as well as a proxy for how many different Wikipedia languages are available for each concept. These can be acessed via SPARQL queries (e.g https://w.wiki/6Tpd). Wikipedia links are useful for adding explainability to applications, and language count can be a proxy for popularity of concepts.
      +
    • E.g. The top popular concepts with a CL ID are "Cell", "Red Blood Cell" and "Neuron" with over 100 Wikipedia languages each (https://w.wiki/6TyY)
    • +
    +
  • +
  • Wikidata is multilingual and most (if not all) OBO ontologies are English-only. Wikidata provides infrastructure to record preferred labels accross 200+ languages (not sure the current number).
  • +
+

Notable differences

+
    +
  • Wikidata's model is definition-free. The meaning of Wikidata terms by a combination of the label, description, aliases and statements.
  • +
  • Wikidata does not support reasoning, as supporting inconsistencies are a feature (not a bug). It is so to handle knowledge diversity.
  • +
+

Literature

+ +

Tools

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/resources/obook-badge-development.json b/resources/obook-badge-development.json new file mode 100644 index 000000000..6d3ac2178 --- /dev/null +++ b/resources/obook-badge-development.json @@ -0,0 +1 @@ +{"schemaVersion": 1, "label": "OBOOK Maturity Indicator", "message": "Under Development", "color": "red"} diff --git a/resources/obook-badge-draft.json b/resources/obook-badge-draft.json new file mode 100644 index 000000000..2eab12734 --- /dev/null +++ b/resources/obook-badge-draft.json @@ -0,0 +1 @@ +{"schemaVersion": 1, "label": "OBOOK Maturity Indicator", "message": "Complete Draft", "color": "yellow"} diff --git a/resources/obook-badge-stable.json b/resources/obook-badge-stable.json new file mode 100644 index 000000000..2efadb7a5 --- /dev/null +++ b/resources/obook-badge-stable.json @@ -0,0 +1 @@ +{"schemaVersion": 1, "label": "OBOOK Maturity Indicator", "message": "Stable", "color": "green"} diff --git a/resources/odk.bat b/resources/odk.bat new file mode 100644 index 000000000..eb2321536 --- /dev/null +++ b/resources/odk.bat @@ -0,0 +1 @@ +docker run -v %cd%\:/work -w /work/ -e ROBOT_JAVA_ARGS="-Xmx8G" -e JAVA_OPTS="-Xmx8G" --rm -ti obolibrary/odkfull %* diff --git a/resources/odk.sh b/resources/odk.sh new file mode 100644 index 000000000..747358c42 --- /dev/null +++ b/resources/odk.sh @@ -0,0 +1,17 @@ +#!/bin/sh +# Wrapper script for docker. +# +# This is used primarily for wrapping the GNU Make workflow. +# Instead of typing "make TARGET", type "./run.sh make TARGET". +# This will run the make workflow within a docker container. +# +# Place this file in the folder from which you want to use the docker container. +# Note that the ODK will only be able to access files in that particular directory. +# +# In your terminal, you first go to the directory that contains this wrapper +# script - then you can run 'sh odk.sh robot --version' to see if it works. +# For more experienced developers you can add the odk.sh file to you path and give it access +# +# To your entire user directory by adding '-v /Users/username/:/work' + +docker run -e ROBOT_JAVA_ARGS='-Xmx25G' -e JAVA_OPTS='-Xmx25G' -v $PWD/:/work -w /work --rm -ti obolibrary/odkfull "$@" diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 000000000..f67d5e021 --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"On becoming an OBO Semantic Engineer","text":"

Welcome to the OBOOK and our OBO Semantic Engineering Training!

"},{"location":"#introduction-to-the-obook-open-biological-and-biomedical-ontologies-organized-knowledge","title":"Introduction to the OBOOK (Open Biological and Biomedical Ontologies Organized Knowledge)","text":"

Documentation in the OBOOK is organised into 4 distinct sections based on the Di\u00e1taxis framework of documentation:

  1. Tutorials: Learning-oriented documentation that contains exercises to help a beginner achieve basic competence in a specific area.
  2. How-to Guides: Task-oriented documentation that functions as directions to guide the reader through the steps to achieve a specific end.
  3. Reference Guides: Information-oriented documentation that describes a single topic in a succinct, technical and orderly way.
  4. Explanations: Understanding-oriented documentation that clarifies, deepens and broadens the reader\u2019s understanding of a subject.

To accommodate for the various training use cases we support, we added the following categories:

  1. Courses: A convenience content type that assembles materials from OBOOK for a specific, taught unit, such as the yearly ICBO tutorials.
  2. Pathways: A kind of course pertaining to a specific role in the OBO-sphere, such as curator or software developer.
  3. Lessons: A collection of materials (tutorials, explanations and how-to guides) that together aim to teach a well defined concept.

Note: We are in the process of transforming the documentation accordingly, so please be patient if some of the documentation is not yet in the correct place. Feel free to create an issue if you find something that you suspect isn't in place.

"},{"location":"#editorial-team","title":"Editorial Team","text":"
  • James Overton, Knocean Inc. James has been a developer of software to support ontology development in and around the OBO sphere for more than a decade and delivers services to the OBO community through his company, Knocean Inc.
  • Becky Jackson, Bend Informatics. Becky has been a Semantic Software developer and Ontology Pipeline specialist since 2016, now working as an independent consultant.
  • Nicole Vasilevsky, Critical Path Institute. Nicole is the Associate Director of Data Science and an Ontology Curator for the Mondo Disease Ontology, and contributes to several other ontologies including the Human Phenotype Ontology, Uberon Anatomy Ontology, and Cell Ontology.
  • Nicolas Matentzoglu, Semanticly, Athens, Greece. Nico is an Ontology Engineer and Ontology Pipeline Specialist, being the Principal Ontology Pipeline Developer for the Monarch Initiative.
  • Shawn Tan, Novo Nordisk
  • David Osumi-Sutherland, EMBL-EBI
  • Sabrina Toro, University of Colorado

If you would like to contribute to this training, please find out more here.

"},{"location":"#content","title":"Content","text":"
  • Getting started (read this first)
  • Course overview and lessons
  • How to contribute
  • Getting started for OBOOK documentation writers
"},{"location":"#acknowledgements","title":"Acknowledgements","text":""},{"location":"#critical-path-institute","title":"Critical Path Institute","text":"

Critical Path Institute (CPI) is an independent, nonprofit organisation dedicated to bringing together experts from regulatory agencies, industry and academia to collaborate and improve the medical product development process.

In April 2021, the CPI has commissioned the first version of this OBO course, contributing not only funding for the preparation and delivery of the materials, but also valuable feedback about the course contents and data for the practical exercises. We thank the CPI for contributing significantly to the OBO community and open science!

https://c-path.org/

"},{"location":"contributing/","title":"Contributing to OBO Semantic Engineering Tutorials","text":"

We rely on our readers to correct our materials and add to them - the hope is to centralise all the usual teaching materials for OBO ontology professionals in one place. Feel free to:

  • Request new lessons (video/how-to guides) on the issue tracker
  • Make a pull request if you find errors or want to add some clarifying remarks. All files of the OBOAcademy website can be found in the docs directory. The Table of Contents is edited here.
  • Join the OBO slack space (#obo-training channel) to ask any questions (you can request access on the issue tracker)
"},{"location":"getting-started-obook/","title":"Getting started for OBOOK editors","text":"

The OBOOK is trying to centralise all OBO documentation in one place. It is, and will be, a big construction site, for years to come. The goal is to iterate and make things better.

We follow two philosophies:

  • Diataxis for organising our documentation
  • Flipped classroom for the organisation of training materials

There are three main consequences to this:

  1. Our materials are organised in a certain way (according to the four-way split suggested by Diataxis).
  2. We superimpose three more categories to organise the content across all materials and facilitate self guided studying: Pathways, courses and lessons (see below).
  3. All training materials must be self-contained to ensure that they can be studied without any further guidance by a teacher.
"},{"location":"getting-started-obook/#preparation","title":"Preparation","text":"
  • Browse through this page: https://diataxis.fr/
  • Watch the introduction to the Diataxis framework:
"},{"location":"getting-started-obook/#beyond-diataxis-the-obook-categories","title":"Beyond Diataxis: the OBOOK categories:","text":"

We just introduced a new concept to OBOOK called pathways. The idea is that we provide a linear guide for all 6 roles mentioned on the getting started page through the materials. This will help us also complete the materials and provide a good path to reviewing them regularly.

"},{"location":"getting-started-obook/#tutorial","title":"Tutorial","text":"

A step-by-step guide to complete a well-defined mini-project. Examples: ROBOT template tutorial. DOSDP template tutorial. Protege tutorial on using the reasoner.

"},{"location":"getting-started-obook/#lesson","title":"Lesson","text":"

A collection of materials (tutorials, explanations and how-to-guides) that together seek to teach a well defined concept. Examples: Contributing to OBO ontologies; An Introduction to templates in OBO; An Introduction to OBO Application development. While the distinction to \"tutorial\" is often fuzzy, the main distinguishing feature should be that a lesson conveys a general concept independent of some concrete technology stack. While we use concrete examples in lessons, we do always seek to generalise to problem space.

"},{"location":"getting-started-obook/#course","title":"Course","text":"

A convenience content type that allows us to assemble materials from obook for a specific taught unit, such as the yearly ICBO tutorials, or the ongoing Monarch Ontology Tutorials and others. Course pages serve as go-to-pages for course participants and link to all the relevant materials in the documentation. Course usually comprise lessons, tutorials and how-to guides.

"},{"location":"getting-started-obook/#pathways","title":"Pathways","text":"

A pathway is a kind of course, but without the expectation that it is ever taught in a concrete setting. A pathways pertains to a single concrete role (Ontology Curator, Pipeline Developer etc). It is a collection of materials (lessons, tutorials, how-to-guides) that is ordered in a linear fashion for the convenience of the student. For example, we are developing a pathway for ontology pipeline developers that start by teaching common concepts such as how to make term requests etc, and then go into depth on ROBOT pipelines, ODK and Make.

"},{"location":"getting-started-obook/#best-practices","title":"Best practices:","text":"
  • Items in the explanation section should conceptually start with a Why or a How question.
  • For ordered lists, only use 1. 1. 1., ever 1. 2. 3. This makes it easier to remove and shuffle items during edits
"},{"location":"getting-started/","title":"How to start with the lessons","text":"

Before you start with the lessons of this course, keep the following in mind:

  1. The materials in this course are all intended to be used for self-study. We sometimes offer flipped-classroom sessions for new members on our teams - this means that we expect them to work through the entire course themselves and then come to us with questions and requests for clarifications.
  2. There is no need to reinvent the wheel: there are a lot of great materials out there already. Providing references to these external resources is an essential part of the course - some lessons primarily comprise external tutorials, blog articles and more - please make sure you take advantage of them.
  3. Some of the materials developed by us are a bit rough around the edges, and we need your help to fix and improve them. To that end, we appreciate anything from suggestions for improvement to pull requests.
  4. Depending on your specific role and interest, you can choose which lessons are relevant to you. There is no specific order, but if you want to start somewhere, we recommend Contributing to OBO ontologies: Protege and Github and/or Using Ontologies and Ontology Terms

"},{"location":"getting-started/#the-different-roles-of-obo-semantic-engineering","title":"The different roles of OBO Semantic Engineering","text":"

There are a wide variety of entry points into the OBO world, for example:

"},{"location":"getting-started/#database-curator-you-are","title":"Database Curator: You are","text":"
  • using ontologies for annotating datasets, experiments and publications
  • requesting new terms from ontologies
  • suggesting corrections to existing ontologies, such as wrong or missing synonyms, typos and definitions
"},{"location":"getting-started/#ontology-curator-you-are","title":"Ontology Curator: You are","text":"
  • developing and maintaining ontologies
  • adding terms to ontologies
  • performing changes to ontologies, like adding or correcting synonyms
  • responsible for ontology releases
"},{"location":"getting-started/#ontology-engineerdeveloper-you-are","title":"Ontology Engineer/Developer: You are","text":"
  • developing design patterns for ontologies, specifying the logical structure of terms
  • responsible for ensuring the specification and consistent application of metadata in your ontologies (which annotation properties to use, minimal metadata standards)
  • defining quality control checks
"},{"location":"getting-started/#ontology-pipeline-specialist-you-are","title":"Ontology Pipeline Specialist: You are","text":"
  • developing ontology pipelines with make and ROBOT
  • building the release and quality control architecture that Engineers and Curators need to do their work.
  • building infrastructure for application ontologies, implementing dynamic imports modules, transformations of and mappings to other ontologies.
"},{"location":"getting-started/#semantic-etl-engineer-you-are","title":"Semantic ETL Engineer: You are","text":"
  • building ingests from public life science resources such as Bgee, Panther, UniProt and many more
  • using ontologies to glue together data from different sources
  • using ontologies to augment the information in your data sources through inference
"},{"location":"getting-started/#semantic-software-engineer-you-are","title":"(Semantic) Software Engineer: You are","text":"
  • using ontologies to generate value to end-user applications (user interfaces, semantic faceted search)
  • building widgets that exploit the logical and graph structure of ontologies, for example phenotypic profile matching
  • building ontology term browsers such as OLS.

Of course, many of you will occupy more than one of the above \"hats\" or roles. While they all require specialised training, many shared skill requirements exist. This course is being developed to:

  • Provide basic training for OBO Semantic Engineers of any of the above flavours
  • Provide an entry point for people new to the field, for example as part of onboarding activities for projects working with ontologies
  • Capture some of the typical pitfalls and how-to's guides to address common problems across the OBO-sphere
"},{"location":"overview/","title":"Overview","text":""},{"location":"overview/#lessons","title":"Lessons","text":""},{"location":"overview/#using-ontologies-and-ontology-terms","title":"Using Ontologies and Ontology Terms","text":"
  • Target roles: Database Curators
  • Skills:
  • know what ontologies are good for
  • find good ontologies: ontology repositories, OBO
  • find good terms: ontology browsers
  • assess for use: license, quality
  • map local terms to ontology terms
  • identify missing terms
  • use IRIs, prefixes, CURIEs, labels
  • use Protege?
"},{"location":"overview/#contributing-to-obo-ontologies-1-protege-and-github","title":"Contributing to OBO ontologies 1: Protege and Github","text":"
  • Target roles: Database Curators, Ontology Curator, Ontology Engineer/Developer
  • Builds on:
  • Ontology Term Use
  • Skills:
  • use GitHub: issues, Pull Requests
  • understand basic Open Source etiquette
    • reading READMEs
  • understand basics of ontology development workflows
  • understand ontology design patterns
  • use templates: ROBOT, DOS-DP
  • basics of OWL
"},{"location":"overview/#ontology-fundamentals","title":"Ontology Fundamentals","text":"
  • Target roles: Ontology Curators, Ontology Engineer/Developer
  • Builds on:
  • Ontology Term Use
  • Skills:
  • RDF
  • RDFS
  • OWL
  • Reasoners
  • basic SPARQL
  • Turtle, JSON-LD
"},{"location":"overview/#linked-data-analysis","title":"Linked Data Analysis","text":"
  • Target roles: Ontology Curators, (Semantic) Software Engineer
  • Builds on:
  • Ontology Fundamentals
  • Skills:
  • Advanced SPARQL
  • Term enrichment
  • Semantic similarity
  • Named Entity Recognition
  • more...
"},{"location":"overview/#ontology-development","title":"Ontology Development","text":"
  • Builds on:
  • Ontology Fundamentals
  • Contributing to OBO ontologies
  • Skills:
  • Manage GitHub
  • Manage ontology imports
  • Use ROBOT extract: MIREOT, SLME
  • Use ROBOT report
  • Pruning trees
"},{"location":"overview/#semantic-databases","title":"Semantic Databases","text":"
  • Builds on:
  • Ontology Development
  • Skills:
  • advanced term mapping
  • ontology terms in SQL
  • terminology table JOINs, constraints
  • convert tables to triples
  • triplestores
  • knowledge graphs
"},{"location":"overview/#automating-ontology-development-workflows","title":"Automating Ontology Development Workflows","text":"
  • Builds on:
  • Ontology Development
  • Ontology Pipelines
  • Skills:
  • Unix shell
  • make
  • Advanced git, GitHub
  • ROBOT
  • ODK
"},{"location":"overview/#developing-an-obo-reference-ontology","title":"Developing an OBO Reference Ontology","text":"
  • Builds on:
  • Ontology Development Automation
  • Skills:
  • Detailed knowledge of OBO principles and best practises
  • Use OBO Dashboard
  • Use OBO Registry
  • Use PURL system
"},{"location":"overview/#tutorials","title":"Tutorials","text":"
  • ROBOT Tutorial 1: Convert, Extract and Template
  • ROBOT Tutorial 2: Annotate, Merge, Reason and Diff
  • Introduction to GitHub
  • Intro to managing and tracking issues in GitHub
"},{"location":"overview/#how-to-guides","title":"How-to guides","text":"
  • Install Elk 0.5 in Protege
  • Getting set up with Docker and the Ontology Development Kit
"},{"location":"config/template/","title":"Course title","text":""},{"location":"config/template/#prerequisites","title":"Prerequisites","text":"
  • TBD
"},{"location":"config/template/#preparation","title":"Preparation","text":"
  • TBD
"},{"location":"config/template/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

Description: add here

"},{"location":"config/template/#learning-objectives","title":"Learning objectives","text":"
  • add learning objectives here
"},{"location":"config/template/#tutorials","title":"Tutorials","text":"
  • in person or video (link videos here as they become available)
"},{"location":"config/template/#additional-materials-and-resources","title":"Additional materials and resources","text":"
  • TBD
"},{"location":"config/template/#contributors","title":"Contributors","text":"
  • Add contributors with ORCID here
"},{"location":"courses/icbo2021/","title":"ICBO Tutorial 2021","text":"

Wednesday, September 15, 2021

  • 4 PM to 7 PM CEST
  • 10 AM to 1 PM EDT
  • 7 AM to 10 AM PDT
"},{"location":"courses/icbo2021/#goal","title":"Goal","text":"

The goal of this tutorial is to provide a flavor of the OBO landscape, from the OBO Foundry organization to the ontology curators and OBO engineers that are doing the daily ontology development.

"},{"location":"courses/icbo2021/#organizers","title":"Organizers","text":"
  • James A. Overton, Knocean Inc.
  • Chris Mungall, Lawrence Berkeley National Laboratory
  • Nicole Vasilevsky, University of Colorado Anschutz Medical Campus
  • Nico Matentzoglu, semanticly Ltd
  • Randi Vita, La Jolla Institute for Allergy & Immunology
"},{"location":"courses/icbo2021/#agenda","title":"Agenda","text":"Time CEST Presenter Topic 4:00 - 4:10pm James Overton Workshop overview 4:10 - 4:20pm James Overton OBO Foundry Overview 4:20 - 4:30pm Nicole Vasilevsky Controlled Vocabularies and Ontologies 4:30 - 4:50pm Nicole Vasilevsky Using and Reusing Ontology Terms 4:50 - 5:25pm Nicole Vasilevsky A day in the life of an Ontology Curator 5:25 - 5:30pm Break 5:30pm - 5:40pm Nico Matentzoglu Ontology 201 Overview 5:40 - 6:15 pm James Overton ROBOT Tutorial 6:15 - 6:35 pm Nico Matentzoglu ODK presentation 6:35 - 6:55 pm Nico Matentzoglu A brief introduction into ontology QC using the OBO dashboard 6:55 - 7:00 pm James Overton Wrap up"},{"location":"courses/icbo2022/","title":"ICBO OBO Tutorial 2022: Using and Reusing Ontologies","text":"

September 26, 2022, 9:00 am \u2013 12:30 pm ET

  • Overview
  • Organizers
  • Agenda

We'd love any feedback on this tutorial via this short survey.

"},{"location":"courses/icbo2022/#overview","title":"Overview","text":"

The Open Biological and Biomedical Ontologies (OBO) community includes hundreds of open source scientific ontology projects, committed to shared principles and practices for interoperability and FAIR data. An OBO tutorial has been a regular feature of ICBO for a decade, introducing new and experienced ontology users and developers to ontologies in general, and to current OBO tools and techniques specifically. While ICBO attracts many ontology experts, it also includes an audience of ontology beginners, and of ontology users looking to become ontology developers or to further refine their skills. Our OBO tutorial will help beginner and intermediate ontology users with a combination of theory and hands-on practice.

For ICBO 2022 we will host a half-day OBO tutorial consisting of two parts, with a unifying theme of ontology term reuse.

The first part of our tutorial will be introductory, aimed at an audience that is new to ontologies and to the OBO Foundry. We will introduce OBO, its community, principles, resources, and best practices. We will finish the first part with a hands-on lesson in basic tools: ontology browsers, how to contribute to ontologies via GitHub (creating issues and making Pull Requests), and the Protege ontology editor.

The second part will build on the first, addressing an audience that is familiar with ontologies and OBO, and wants to make better use of OBO workflows and tools in their own projects. The focus will be on making best use of OBO community open source software. We will introduce ROBOT, the command-line tool and library for automating ontology development tasks. We will show how the Ontology Development Kit (ODK) is used to standardize ontology projects with a wide range of best practices. The special emphasis of this year's tutorial will be ontology reuse, and specifically on how ROBOT and ODK can be used to manage imports from other ontologies and overcome a number of challenges to term reuse.

This material for this year's OBO Tutorial will build on the content here in the OBO Academy. The OBO Academy offers free, open, online resources with self paced learning materials covering various aspects of ontology development and curation and OBO. Participants are encouraged to continue their learning using this OBO Academy website, and contribute to improving the OBO documentation.

As an outcome of this workshop, we expect that new ontologists will have a clearer understanding of why we need and use ontologies, how to find ontology terms and contribute to ontologies and make basic edits using Protege. Our more advanced participants should be able to apply OBO tools and workflows to their own ontology development practices.

"},{"location":"courses/icbo2022/#organizers","title":"Organizers","text":"
  • James A. Overton, Knocean Inc.
  • Becky Jackson, Bend Informatics
  • Chris Mungall, Lawrence Berkeley National Laboratory
  • Nicole Vasilevsky, University of Colorado Anschutz Medical Campus
  • Nico Matentzoglu, Semanticly, Athens, Greece
  • Randi Vita, La Jolla Institute for Allergy & Immunology
"},{"location":"courses/icbo2022/#agenda","title":"Agenda","text":"Time Topic Presenter 09:00 am ET Introduction to OBO, its community, principles, resources, and best practices James Overton 09:20 am ET Hands-on lesson in basic tools: see details below Nicole Vasilevsky 10:15 am ET Coffee break 10:30 am ET Introduction to ROBOT Becky Jackson 11:30 pm ET Introduction to the Ontology Development Kit (ODK) and Core Workflows Nico Matentzoglu 12:15 pm ET How to be an open science ontologist (Slides are here) Nico Matentzoglu"},{"location":"courses/icbo2022/#hands-on-lesson-in-basic-tools","title":"Hands on lesson in basic tools","text":"

Instructor: Nicole Vasilevsky

"},{"location":"courses/icbo2022/#outline","title":"Outline","text":"
  1. Protege ontology editor
    • Protege basic functionality
    • Plugins. See guide on installing ELK reasoner.
  2. How to contribute to ontologies via GitHub
    • ontology maintenance and workflows
    • practice with reasoners
    • making Pull Requests (PRs)

Example: We will work on this ticket.

"},{"location":"courses/icbo2023/","title":"ICBO OBO Tutorial 2023: Using and Reusing Ontologies","text":"

Conference website: https://icbo-conference.github.io/icbo2023/

ICBO Workshops details: https://www.icbo2023.ncor-brasil.org/program.html#workshops

Date: August 28, 2023 13:30-15:00 (Part 1) and 15:30-15:45 (Part 2)

  • Overview
  • Organizers
  • Preparation
  • Agenda

"},{"location":"courses/icbo2023/#overview","title":"Overview","text":"

The Open Biological and Biomedical Ontologies (OBO) community includes hundreds of open source scientific ontology projects, committed to shared principles and practices for interoperability and FAIR data. An OBO tutorial has been a regular feature of ICBO for a decade, introducing new and experienced ontology users and developers to ontologies in general, and to current OBO tools and techniques specifically. While ICBO attracts many ontology experts, it also includes an audience of ontology beginners, and of ontology users looking to become ontology developers or to further refine their skills. Our OBO tutorial will help beginner and intermediate ontology users with a combination of theory and hands-on practice.

For ICBO 2023 we will host a half-day OBO tutorial consisting of two parts.

The first part of our tutorial will be introductory, aimed at an audience that is new to ontologies and to the OBO Foundry. We will introduce OBO, its community, principles, resources, and best practices. We will finish the first part with a hands-on lesson in basic tools: ontology browsers, how to contribute to ontologies via GitHub (creating issues and making Pull Requests), and the Protege ontology editor.

The second part will build on the first, addressing an audience that is familiar with ontologies and OBO, and wants to make better use of OBO workflows and tools in their own projects.

This material for this year's OBO Tutorial will build on the content here in the OBO Academy. The OBO Academy offers free, open, online resources with self paced learning materials covering various aspects of ontology development and curation and OBO. Participants are encouraged to continue their learning using this OBO Academy website, and contribute to improving the OBO documentation.

"},{"location":"courses/icbo2023/#organizers","title":"Organizers","text":"
  • Nicole Vasilevsky, Critical Path Institute, Tucson, AZ, USA (Based in Portland, OR, USA)
  • Nico Matentzoglu, Semanticly, Athens, Greece
  • Tiago Lubiana, Universidade de S\u00e3o Paulo, S\u00e3o Paulo, SP, Brazil
"},{"location":"courses/icbo2023/#advance-preparation","title":"Advance preparation","text":"

The tutorial is designed to be 'show and tell' format, but you are welcome to install the following software on your machine in advance, if you'd like to follow along in real time:

  • GitHub Desktop
  • Protege
  • ROBOT

"},{"location":"courses/icbo2023/#agenda","title":"Agenda","text":"Time Topic Presenter Duration 13:30 pm ET Welcome Tiago Lubiana and Nico Matentzoglu 5 min 13:35 pm ET Introduction to OBO, its community, principles, resources, and best practices Darren Natale 20 min 13:55 pm ET Hands-on lesson in basic tools Sabrina Toro 35 min 14:30 pm ET Protege updates and new features Damien Goutte-Gattat 15 min 14:45 pm ET Overview of OBO Dashboard Anita Caron 15 min 15:00 pm ET Break 15 min 15:15 pm ET Introduction to ROBOT Becky Jackson 30 min 15:45 pm ET Role of ChatGPT in OBO Ontology Development Sierra Moxon 15 min 16:00 pm ET How to be an Open Science Engineer Nico Matentzoglu 15 min 16:15 pm ET Discussion and Wrap up Tiago Lubiana 30 min 16:45 pm ET Adjourn"},{"location":"courses/monarch-obo-training/","title":"OBO Academy - Monarch Training Series","text":""},{"location":"courses/monarch-obo-training/#goal","title":"Goal","text":"

The goal of this course is to provide ongoing training for the OBO community. As with previous tutorials, we follow the flipped classroom concept: as organisers, we provide you with materials to look at, and you will work through the materials on your own. During our biweekly meeting, we will answer your questions, provide you with additional demonstrations where needed and go into depth wherever you as a student are curious to learn more. This means that this course can only work if you are actually putting in the time to preparing the materials. That said, we nevertheless welcome anyone to just lurk or ask related questions.

"},{"location":"courses/monarch-obo-training/#you-students","title":"You (Students)","text":"
  • Read the \"Getting started\" guide
  • Check which lessons interest you in the upcoming schedule - just participate in the ones you care about
  • Prepare the lessons (between 3 and 7 hours of preparation time)
  • Prepare questions for the revision sessions (without questions, the revision sessions will be silent and awkward)
  • Make detailed issues on our issue tracker when materials are broken, hard to follow or need more details - that is really important as we rely on you to help to improve our materials continuously.
  • Request new course units from us using the issue tracker.
"},{"location":"courses/monarch-obo-training/#we-tutors-and-organisers","title":"We (Tutors and Organisers)","text":"
  • Nicole Vasilevsky, Critical Path Institute
  • Nico Matentzoglu, Semanticly, Athens, Greece
  • Sabrina Toro, University of Colorado Anschutz Medical Campus
  • Sarah Gehrke, University of Colorado Anschutz Medical Campus
  • Prepare the materials for each lesson and provide schedules
  • Build new training materials where needed
  • Organise the course and rooms
"},{"location":"courses/monarch-obo-training/#schedule","title":"Schedule","text":"

Note: this is tentative and subject to change

Date Lesson Notes Recordings 2023/10/03 Units modelling in and around OBO James Overton 2023/09/19 Improving ontology interoperability with Biomappings Charlie Hoyt 2023/09/05 Modern prefix management with Bioregistry and curies Charlie Hoyt 2023/08/22 How to determine if two entities are the same? Nico (subject open for debate) 2023/08/08 Cancelled: Summer break July 2023 Cancelled: Summer break 2023/06/27 Cancelled 2023/06/13 Modelling with Subclass and Equivalent class statements Tutorial by Henriette Harmse slides 2023/05/30 First steps with ChatGPT for semantic engineers and curators Led by Sierra Moxon and Nico Matentzoglu N/A 2023/05/16 Cancelled (Monarch/C-Path workshop) 2023/05/02 Cancelled (No meeting week) 2023/04/18 Overview of Protege 5.6 - the latest features Tutorial by Damien Goutte-Gattat (slides) Here 2023/04/04 Introduction to Exomiser Tutorial by Valentina, Yasemin and Carlo from QMUL. Here 2023/03/21 Introduction to Wikidata Tutorial by experts in the field Andra Waagmeester and Tiago Lubiana Here 2023/03/07 OAK for the Ontology Engineering community Tutorial by Chris Mungall Here 2023/02/21 OBO Academy Clinic Bring your ontology issues and questions to discuss with Sabrina and Nico! Attend the Ontology Summit Seminars instead! 2023/02/07 Querying the Monarch KG using Neo4J Tutorial by Kevin Schaper Here 2023/01/24 OBO Academy Clinic Bring your ontology issues and questions to discuss with Sabrina and Nico! 2023/01/10 Modeling with taxon constraints Tutorial by Jim Balhoff Here 2022/12/27 No Meeting Enjoy the Holidays! 2022/12/13 Introduction to Semantic Entity Matching Slides Here 2022/11/29 OBO Academy hackathon Work on open tickets together. 2022/11/15 Contributing to OBO ontologies - Part 2 Here 2022/11/01 Contributing to OBO ontologies - Part 1 Here 2022/10/18 Introduction to Medical Action Ontology (MAxO) Here 2022/10/04 No meeting - ISB virtual conference: register here 2022/09/20 How to be an open science ontologist Here 2022/09/06 Pull Requests: Part 2 Here 2022/07/26 Pull Requests: Part 1 Here 2022/07/12 Basic introduction to the CLI: Part 2 Due to intermitent connection issues, the first few minutes of this recording are not included. Refer to the Tutorial link for the initial directions. Here 2022/06/28 Basic introduction to the CLI: Part 1 Here 2022/06/14 Application/project ontologies Here 2022/05/31 Contributing to ontologies: annotation properties Here 2022/05/17 Introduction to managing mappings with SSSOM Here 2022/05/03 No meeting 2022/04/19 Disjointness and Unsatisfiability Here 2022/04/05 No meeting 2022/03/22 Creating an ontology from scratch Here 2022/03/08 Obsoletions in OBO ontologies Review Obsoleting an Existing Ontology Term and Merging Ontology Terms. Slides are here. Here 2022/02/22 SPARQL for OBO ontology development Here 2022/02/07 ODK/DOSDPs Here 2022/01/25 Contributing to OBO ontologies This is not new content but we'll start at the beginning again with our previous lessons. Here 2022/01/11 Office hours with Nicole and Sabrina - no formal lesson Bring any open questions. 2021/12/14 Lessons learned from troubleshooting ROBOT Open discussion, no advance preparation is needed. 2021/11/30 Semantics of object properties (including Relations Ontology) 2021/11/16 SPARQL for OBO ontology development Here 2021/11/02 Templating: DOSDPs and ROBOT 2021/10/19 Ontology Design 2021/10/05 Cancelled due to overlap with ISB conference 2021/09/21 Ontology Pipelines with ROBOT 2 2021/09/08 Migrating legacy ontology systems to ODK 2021/09/07 Ontology Pipelines with ROBOT 2021/09/01 Manage dynamic imports the ODK 2021/08/25 Ontology Release Management with the ODK Here 2021/08/24 Contributing to OBO ontologies 2 Here 2021/08/17 Contributing to OBO ontologies"},{"location":"courses/monarch-obo-training/#notes","title":"Notes","text":"

Most of materials used by this course were developed by James Overton, Becky Jackson, Nicole Vasilevsky and Nico Matentzoglu as part of a project with the Critical Path Institute (see here). The materials are improved as part of an internal training program (onboarding and CPD) for the Phenomics First project (NIH / NHGRI #1RM1HG010860-01).

Thanks to Sarah Gehrke for her help with project management.

"},{"location":"courses/ontology-summit-2023/","title":"Ontology Summit 2023","text":"

This course unit only covers the OBO part of the Ontology Summit 2023, for a full overview see https://ontologforum.org/index.php/OntologySummit2023.

"},{"location":"courses/ontology-summit-2023/#goal","title":"Goal","text":"

Giving a broad overview of the key OBO methodologies and tools to the general ontology community.

"},{"location":"courses/ontology-summit-2023/#tutors","title":"Tutors","text":"
  • Nico Matentzoglu
"},{"location":"courses/ontology-summit-2023/#schedule","title":"Schedule","text":"Date Lesson Tutors Notes 2023/01/25 Introduction to COB Chris Mungall Slides 2023/02/01 Introduction to ROBOT and OAK James Overton and Chris Mungall
  • ROBOT Slides
  • OAK Slides 2023/02/08 Managing the Ontology Life Cycle with the Ontology Development Kit Anita Caron, Damien Goutte-Gattat, Philip Stroemert, Nicolas Matentzoglu
    • 09:00am: Introduction and use cases and workflows
    • 09:15am: Overview of the ODK toolbox
    • 09:30am: Setting up your own repo
    • 10:00am: Advanced customisation, adding a custom SPARQL check
      • 2023/02/15 Using Dashboards to monitor OBO ontologies Charlie Hoyt, Nicolas Matentzoglu, Anita Caron
        • 09:05am: The problem of encouraging and monitoring ontology standardisation (@matentzn, @cthoyt)
        • 09:15am: Overview of the OBO Dashboard: Standardising metadata across OBO Foundry ontologies (@matentzn)
        • 09:30am: Other dashboards for standardising metadata (oquat, versions) (@cthoyt)
        • 09:37am: Dashboards for measuring social workflows (OBO health) (@cthoyt)
        • 09:45am: Using the OBO Dashboard Kit to create your own, customised Dashboard (@anitacaron)
        2023/02/02 Using OBO Ontologies: Ubergraph and other applications Jim Balhoff
        • 09:00am: Ubergraph: integrating OBO ontologies into a unified semantic graph
        • 09:35am: SSSOM - Open, FAIR and standardised mappings for ontologies, controlled vocabularies and database entities
        "},{"location":"explanation/annotation-properties/","title":"Contributing to ontologies: annotation properties","text":"

        Editors: Sabrina Toro (@sabrinatoro), Nicolas Matentzoglu (@matentzn) Examples with images can be found here.

        "},{"location":"explanation/annotation-properties/#what-are-annotation-properties","title":"What are annotation properties?","text":"

        An entity such as an individual, a class, or a property can have annotations, such as labels, synonyms and definitions. An annotation property is used to link the entity to a value, which in turn can be anything from a literal (a string, number, date etc) to another entity (such as, another class).

        Here are some examples of frequently used annotation properties: (every element in bold is an annotation property)

        http://purl.obolibrary.org/obo/MONDO_0004975

        • rdfs:label \u2013> \u2018Alzheimer disease\u2019
        • oboInOwl:hasExactSynonym \u2013> Alzheimer dementia
        • oboInOwl:hasDbXref -> NCIT:C2866
        • skos:exactMatch -> http://www.orpha.net/ORDO/Orphanet_238616
        "},{"location":"explanation/annotation-properties/#some-useful-things-to-know-about-annotation-properties","title":"Some useful things to know about annotation properties","text":"

        Annotation properties have their own IRIs, just like classes and individuals. For example, the IRI of the RDFS built in label property is http://www.w3.org/2000/01/rdf-schema#label. Other examples:

        • oboInOwl:hasExactSynonym : http://www.geneontology.org/formats/oboInOwl#hasExactSynonym
        • oboInOwl:hasDbXref : http://www.geneontology.org/formats/oboInOwl#hasDbXref

        Annotation properties are just like other entities (classes, individuals) and can have their own annotations. For example, the annotation propert http://purl.obolibrary.org/obo/IAO_0000232 has an rdfs:label ('curator note') and a human readable definition (IAO:0000115): 'An administrative note of use for a curator but of no use for a user'.

        Annotation properties can be organised in a hierarchical structure.

        For example, the annotation property 'synonym_type_property' (http://www.geneontology.org/formats/oboInOwl#SynonymTypeProperty) is the parent property of other, more specific ones (such as \"abbreviation\").

        Annotation properties are (usually) used with specific type of annotation values.

        • Literal: (one can see [type: xsd:string] in the annotation)
        • xsd:string
          • e.g. 'definition' (http://purl.obolibrary.org/obo/IAO_0000115)
        • xds:boolean
          • e.g. 'owl:deprecated' (http://www.w3.org/2002/07/owl#deprecated)
        • Entity IRI :
        • Classes or individuals: e.g. 'has curation status' (http://purl.obolibrary.org/obo/IAO_0000114)
        • Arbitray URIs, e.g. links to website with the 'term tracker item' (type xsd:anyURI) (http://purl.obolibrary.org/obo/IAO_0000233) property
        • Or even other annotation properties *
          • e.g. 'has_synonym_type' (http://www.geneontology.org/formats/oboInOwl#hasSynonymType)
          • e.g. 'in_subset' (http://purl.obolibrary.org/obo/IAO_0000112)

        Note: the type of annotation required for an annotation property can be defined by adding a Range + \"select datatype\" in the Annotation Property's Description e.g. : 'scheduled for obsoletion on or after' (http://purl.obolibrary.org/obo/IAO_0006012)

        • Annotations do not affect reasoning. No matter what values you connect with your annotation properties, the reasoner will ignore it - even if it is nonsensical.
        "},{"location":"explanation/annotation-properties/#annotation-property-vs-data-and-object-properties","title":"Annotation Property vs Data and Object Properties","text":"

        Some annotation properties look like data properties (connecting an entity to a literal value) and others look like object properties (connecting an entity to another entity). Other than the fact that statements involving data and object properties look very different in RDF, the key difference from a user perspective is that OWL Reasoners entirely ignore triples involving annotation properties. Data and Object Properties are taken into account by the reasoner.

        Object properties are different to annotation properties in that they:

        • connect pairs of individuals in way that affects reasoning
        • represent relationship between classes in way that affects reasoning
        • Example property: 'has part' (http://purl.obolibrary.org/obo/BFO_0000051)
        • Object Properties can have the following property characteristics: Inverse, Symmetric, Asymmetric, Reflexive, Irreflexive, Functional, Inverse Functional, and Transitive which effect reasoning. Annotation properties cannot have such properties (or if they had, reasoners would ignore them).

        Data properties are different to annotation properties in that they:

        • connect individuals with literals in way that affects reasoning
        • represent relation between a class and literal in way that affects reasoning
        • You can use data properties to logically define OWL classes with data ranges. For example, you can define the class of Boomer as all people born between 1946 and 1964. If an individual would be asserted to be a Boomer, but is born earlier than 1946, the reasoner would file a complaint.
        • Example Data Property: 'hasName', 'hasPrice', 'hasCalories', 'hasSugarContent',...
        • More details on how to use Data Properties here
        "},{"location":"explanation/annotation-properties/#creating-new-annotation-properties","title":"Creating new Annotation Properties","text":"

        Note: before creating a new annotation property, it is always a good idea to check for an existing annotation property first.

        • For example: OBO Metadata Ontology (https://www.ebi.ac.uk/ols/ontologies/omo), which could be imported

        Detailed explanations for adding a new annotation property can be found here

        "},{"location":"explanation/annotation-properties/#the-term-annotation-in-ontologies-and-data-curation-means-different-things","title":"The term \"Annotation\" in Ontologies and Data Curation means different things.","text":"

        The word \"annotation\" is used in different contexts to mean different things. For instance, \"annotation in owl\" (ie annotations to an ontology term) is different from \"annotation in the biocuration sense\" (ie gene-to-disease, gene-to-phenotype, gene-to-function annotations). It is therefore crucial to give context when using the word \"annotation\".

        "},{"location":"explanation/existential-restrictions/","title":"Existential restrictions","text":""},{"location":"explanation/existential-restrictions/#prerequesites","title":"Prerequesites","text":"
        • SubClassOf vs EquivalentTo
        "},{"location":"explanation/existential-restrictions/#qualified-existential-restrictions","title":"Qualified existential restrictions","text":""},{"location":"explanation/existential-restrictions/#semantics","title":"Semantics","text":"

        Given

        ObjectProperty: r\nClass: D\n    EquivalentTo: r some C\nClass: C\n

        the semantics of r some C is the set of individuals such that for each individual x there is at least 1 individual y of type C that is linked to x via the object property r.

        Based on this semantics, a possible world adhering to our initial equivalence axiom may be:

        In this Venn diagram we assume individuals are black dots. Thus, our world consists of 7 individuals, with only 2 classes, namely C and D, as well 2 object properties, namely r and q. In this world, D and thus the class r some C, consist of only 2 individuals. D and r some C consist of only 2 individuals because these are the only individuals linked via object property r to at least 1 individual respectively in C.

        "},{"location":"explanation/existential-restrictions/#examples","title":"Examples","text":"

        In the following we define a pet owner as someone that owns at least 1 pet.

        ObjectProperty: owns\nClass: PetOwner\n    EquivalentTo: owns some Pet\nClass: Pet\n

        If we want to introduce the class DogOwner, assuming we can only use the class Pet and the object property owns (assuming we have not defined PetOwner), we could say that a dog owner is a subset of pet owners:

        ObjectProperty: owns\nClass: DogOwner\n    SubClassOf: owns some Pet\nClass: Pet\n

        In this case we use SubClassOf instead of EquivalentTo because not every pet owner necessarily owns a dog. This is equivalent to stating:

        ObjectProperty: owns\nClass: PetOwner\n    EquivalentTo: owns some Pet\nClass: Pet\nClass: DogOwner \n    SubClassOf: PetOwner\n
        "},{"location":"explanation/existential-restrictions/#variations-on-existential-restrictions","title":"Variations on existential restrictions","text":""},{"location":"explanation/existential-restrictions/#unqualified-existential-restrictions","title":"Unqualified existential restrictions","text":"

        In the previous section we modeled a PetOwner as owns some Pet. In the expression owns some Pet Pet is referred to as the filler of owns and more specifically we say Pet is the owns-filler.

        The PetOwner EquivalentTo: owns some Pet state that pet owners are those individuals that own a pet and ignore all other owns-fillers that are not pets. How can we define arbitrary ownership?

        ObjectProperty: owns\nClass: Owner\n    EquivalentTo: owns some owl:Thing\n
        "},{"location":"explanation/existential-restrictions/#value-restrictions","title":"Value restrictions","text":"

        We can base restrictions on having a relation to a specific named individual, i.e.:

        Individual: UK\nObjectProperty: citizenOf\nClass: UKCitizen\n    EquivalentTo: citizenOf hasValue UK\n
        "},{"location":"explanation/existential-restrictions/#existential-restrictions-on-data-properties","title":"Existential restrictions on data properties","text":"

        This far we have only considered existential restrictions based on object properties, but it is possible to define existential restrictions based on data properties. As an example, we all expect that persons have at least 1 name. This could be expressed as follows:

        DataProperty: name\nClass: Person\n    SubClassOf: name some xsd:string\n
        "},{"location":"explanation/existential-restrictions/#when-to-use-subclassof-vs-equivalentto-with-existential-restrictions","title":"When to use SubClassOf vs EquivalentTo with existential restrictions","text":"

        In our example of Person SubClassOf: name some xsd:string, why did we use SubClassOf rather than EquivalentTo? That is, why did we not use Person EquivalentTo: name some xsd:string? With using the EquivalentTo axiom, any individual that has a name, will be inferred to be an instance of Person. However, there are many things in the world that have names that are not persons. Some examples are pets, places, regions, etc:

        Compare this with, for example, DogOwner:

        ObjectProperty: owns\nClass: Dog\nClass: DogOwner\n    EquivalentTo: owns some Dog\n
        "},{"location":"explanation/intro-to-ontologies/","title":"Introduction to ontologies","text":"

        Based on CL editors training by David Osumi-Sutherland

        "},{"location":"explanation/intro-to-ontologies/#why-do-we-need-ontologies","title":"Why do we need ontologies?","text":"

        We face an ever-increasing deluge of biological data analysis. Ensuring that this data and analysis are Findable, Accessible, Interoperable, and Re-usable (FAIR) is a major challenge. Findability, Interoperabiltiy, and Resuability can all be enhanced by standardising metadata. Well-standardised metadata can make it easy to find data and analyses despite variations in terminology ('Clara cell' vs 'nonciliated bronchiolar secretory cell' vs 'club cell') and precision ('bronchial epithelial cell' vs 'club cell'). Understanding which entities are referred to in metadata and how they relate to the annotated material can help users work out if the data or analysis they have found is of interest to them and can aid in its re-use and interoperability with other data and analyses. For example, does an annotation of sample data with a term for breast cancer refer to the health status of the patient from which the sample was derived or that the sample itself comes from a breast cancer tumor?

        "},{"location":"explanation/intro-to-ontologies/#we-cant-find-what-were-looking-for","title":"We can't find what we're looking for","text":"

        Given variation in terminology and precision, annotation with free text alone is not sufficient for findability. One very lightweight solution to this problem is to rely on user-generated keyword systems, combined with some method of allowing users to choose from previously used keywords. This can produce some degree of annotation alignment but also results in fragmented annotation and varying levels of precision with no clear way to relate annotations.

        For example, trying to refer to feces, in NCBI BioSample:

        Query Records Feces 22,592 Faeces 1,750 Ordure 2 Dung 19 Manure 154 Excreta 153 Stool 22,756 Stool NOT faeces 21,798 Stool NOT feces 18,314"},{"location":"explanation/intro-to-ontologies/#we-dont-know-what-were-talking-about","title":"We don't know what we're talking about","text":"

        Terminology alone can be ambiguous. The same term may be used for completely unrelated or vaguely analogous structures. An insect femur and an mammalian femur are neither evolutionarily related nor structurally similar. Biologists often like to use abbreviations to annotate data, but these can be extremely ambiguous. Drosophila biologists use DA1 to refer to structures in the tracheal system, musculature and nervous system. Outside of Drosophila biology it is used to refer to many other things including a rare disease, and a a neuron type in C.elegans.

        Some extreme examples of this ambiguity come from terminological drift in fields with a long history. For example in the male genitalia of a gasteruptiid wasp, these 5 different structures here have each been labeled \"paramere\" by different people, each studying different hymenopteran lineages. How do we know what \"paramere\" means when it is referred to?

        This striking example shows that even precise context is not always sufficient for disambiguation.

        "},{"location":"explanation/intro-to-ontologies/#controlled-vocabulary-cv","title":"Controlled vocabulary (CV)","text":"

        Rather than rely on users to generate lists of re-usable keywords, we can instead pre-specify a set of terms to use in annotation. This is usually refered to a controlled vocabulary or CV.

        "},{"location":"explanation/intro-to-ontologies/#key-features","title":"Key features","text":"
        • Terms are usually not defined
        • Relationships between the terms are usually not defined
        • Simplest form is a list
        "},{"location":"explanation/intro-to-ontologies/#example-using-wines","title":"Example using wines","text":"
        • Pinot noir
        • Red
        • Chardonnay
        • Chianti
        • Bordeaux
        • Riesling
        "},{"location":"explanation/intro-to-ontologies/#hierarchical-controlled-vocabulary","title":"Hierarchical controlled vocabulary","text":""},{"location":"explanation/intro-to-ontologies/#definition","title":"Definition","text":"

        Any controlled vocabulary that is arranged in a hierarchy.

        "},{"location":"explanation/intro-to-ontologies/#key-features_1","title":"Key features","text":"
        • Terms are arranged in a hierarchy, typically from general (top) to specific (bottom) with each term having only one parent.
        • Terms are usually not defined.
        • Relationships between the terms are usually not named or defined
        "},{"location":"explanation/intro-to-ontologies/#example-using-wines-taxonomy-of-wine","title":"Example using wines (Taxonomy of wine)","text":"
        • Red
          • Merlot
          • Zinfandel
          • Cabernet
          • Pinot Noir
        • White
          • Chardonnay
          • Pinot Gris
          • Riesling

        Taxonomy describes a hierarchical CV in which hierarchy equals classification. E.g., 'Merlot' is classified as a 'Red' (wine). Not all hierchical CVs are classifications. For example, anatomical atlases often have hierarchical CVs representing \"parthood\". The femur is a part of the leg, but it is not 'a leg'.

        "},{"location":"explanation/intro-to-ontologies/#support-for-grouping-and-varying-levels-of-precision","title":"Support for grouping and varying levels of precision","text":"

        The use of a hierachical CV in which general terms group more specific terms allows for varying precision (glial cell vs some specific subtype) and simple grouping of annotated content.

        For example:

        "},{"location":"explanation/intro-to-ontologies/#from-hierarchical-cvs-to-ontologies","title":"From hierarchical CVs to ontologies","text":"

        Hierarchical CVs tend to increase in complexity in particular ways:

        "},{"location":"explanation/intro-to-ontologies/#synonyms","title":"Synonyms","text":"

        To support findability, terms in hierarchical CVs often need to be associated with synonyms, or cross-referenced to closely related terms inside the CV.

        "},{"location":"explanation/intro-to-ontologies/#polyhierarchy","title":"Polyhierarchy","text":"

        CV content is often driven by requests from annotators and so expansion is not driven by any unified vision of scheme. This often leads to pressure for hierarchies to support terms having multiple parents, either reflecting multiple relationship types, or multiple types of classification. For example, an anatomical CV could reasonably put 'retinal bipolar cell' under 'retina' based on location and, at the same time, under 'bipolar neuron' and 'glutamatergic neuron' based on cell type classification.

        "},{"location":"explanation/intro-to-ontologies/#named-relationships","title":"Named relationships","text":"

        Developers of hierarchical CVs often come to realise that multiple relationship types are represented in the hierarchy and that it can be useful to name these relationship for better distinction. For example, a heart glial cell is a 'type of' glial cell, but is 'part of' the heart.

        "},{"location":"explanation/intro-to-ontologies/#what-is-an-ontology","title":"What is an ontology?","text":""},{"location":"explanation/intro-to-ontologies/#definition_1","title":"Definition","text":"

        Definitions of ontologies can be controversial. Rather than attempting a comprehensive definition, this tutorial will emphasise ontologies as:

        • Classifications
        • Queryable stores of knowledge
        "},{"location":"explanation/intro-to-ontologies/#key-features-of-well-structured-ontologies","title":"Key features of well-structured ontologies:","text":"
        • Terms are arranged in a classification hierarchy

        • Terms are defined

        • Terms are richly annotated:

          • Textual definitions
          • References
          • Synonyms
          • Links
          • Cross-references
        • Relationships between terms are defined, allowing logical inference and sophisticated queries as well as graph representations.

        • Expressed in a knowledge representation language such as RDFS, OBO, or OWL

        "},{"location":"explanation/intro-to-ontologies/#examples","title":"Examples","text":"
        • Gene Ontology, Uberon, Cell Ontology, EFO, SNOMED
        "},{"location":"explanation/intro-to-ontologies/#non-logical-parts-of-ontologies","title":"Non-logical parts of ontologies","text":"

        Terminology can be ambiguous, so text definitions, references, synonyms and images are key to helping users understand the intended meaning of a term.

        "},{"location":"explanation/intro-to-ontologies/#identifiers","title":"Identifiers","text":""},{"location":"explanation/intro-to-ontologies/#using-identifiers-devoid-of-intrinsic-meaning","title":"Using identifiers devoid of intrinsic meaning","text":"

        Identifiers that do not hold any inherent meaning are important to ontologies. If you ever need to change the names of your terms, you're going to need identifiers that stay the same when the term name changes.

        For example:

        A microglial cell is also known as: hortega cell, microglia, microgliocyte and brain resident macrophage. In the cell ontology, it is however referred to by a unique identifier: CL:0000129 These identifiers are short ways of referring to IRIs (e.g., CL:000129 = http://purl.obolibrary.org/obo/CL_0000129) This IRI is a unique, resolvable identifier on the web. A group of ontologies - loosely co-ordinated through the OBO Foundry, have standardised their IRIs (e.g. http://purl.obolibrary.org/obo/CL_0000129 - A term in the cell ontology; http://purl.oblibrary.org/obo/cl.owl - The cell ontology)

        "},{"location":"explanation/intro-to-ontologies/#iris-uris-urls","title":"IRIs? URIs? URLs?","text":"
        • URI: Unique Resource Identifier - a string of characters, following a standard specification, that unambiguously identifies a particular (web) resource.
        • IRI: Internationalised Resource Identifier - a URI that can use characters in multiple languages.
        • URL: Uniform Resource Locator - a web-resolvable URI.
        "},{"location":"explanation/intro-to-ontologies/#building-scalable-ontologies","title":"Building scalable ontologies","text":""},{"location":"explanation/intro-to-ontologies/#format","title":"Format","text":"

        OBO ontologies are mostly written in OWL2 or OBO syntax. The latter is a legacy format that maps completely to OWL.

        For a more in-depth explanation of formats (OWL, OBO, RDF etc.) refer to explainer on OWL format variants. In the examples below we will use OWL Manchester syntax, which allows us to express formal logic in English-like sentences.

        "},{"location":"explanation/intro-to-ontologies/#an-ontology-as-a-classification","title":"An ontology as a classification","text":"

        Ontology terms refer to classes of things in the world. For example, the class of all wings.

        Below you will see a classification of parts of the insect and how it is represented in a simple ontology.

        We use a SubClassOf (or is_a in obo format) to represent that one class fully subsumes another. For example: OWL: hindwing SubClassOf wing OBO: hindwing is_a wing

        In English we might say: \"a hindwing is a type of wing\" or more specifically, \"all instances of hindwing are instances of wing.\" 'Instance' here refers to a single wing of an individual fly.

        In the previous section, we talked about different types of relationships. In OWL we can define specific relations (known as object properties). One of the commonest is 'part of' which you can see used below.

        English: all (insect) legs are part of a thoracic segment OWL: 'leg' SubClassOf part_of some thoracic segment OBO: 'leg'; relationship: part_of thoracic segment

        It might seem odd at first that OWL uses subClassOf here too. The key to understanding this is the concept of an anonymous class - in OWL, we can refer to classes without giving them names. In this case, the anonymous class is the class of all things that are 'part of' (some) 'thoracic segment' (in insects). A vast array of different anatomical structures are subclasses of this anonymous class, some of which, such as wings, legs, and spiracles, are visible in the diagram.

        Note the existential quantifier some in OWL format -- it is interpreted as \"there exists\", \"there is at least one\", or \"some\".

        The quantifier is important to the direction of relations.

        subClassOf: 'wing' SubClassOf part_of some 'thoracic segment' is correct 'thoracic segment' SubClassOf has_part some 'wing' is incorrect as it implies all thoracic segment have wings as a part.

        Similarly: 'claw' SubClassOf connected_to some 'tarsal segment' is correct 'tarsal segment' SubClassOf connected_to some 'claw' is incorrect as it implies all tarsal segments are connected to claws (for example, some tarsal segments are connected to other tarsal segments)

        These relationships store knowledge in a queryable format. For more information about querying, please refer to guide on DL queries and SPARQL queries.

        "},{"location":"explanation/intro-to-ontologies/#scaling-ontologies","title":"Scaling Ontologies","text":"

        There are many ways to classify things. For example, a neuron can be classified by structure, electrophysiology, neurotransmitter, lineage, etc. Manually maintaining these multiple inheritances (that occur through multiple classifications) does not scale.

        Problems with maintaining multiple inheritance classifications by hand

        • Doesn\u2019t scale

          • When adding a new class, how are human editors to know

            • all of the relevant classifications to add?

            • how to rearrange the existing class hierarchy?

        • It is bad for consistency

          • Reasons for existing classifications often opaque

          • Hard to check for consistency with distant superclasses

        • Doesn\u2019t allow for querying

          • A formalized ontology can be queried for classes with arbitrary sets of properties. A manual classification can not.
        "},{"location":"explanation/intro-to-ontologies/#automated-classifications","title":"Automated Classifications","text":"

        The knowledge an ontology contains can be used to automate classification. For example:

        English: Any sensory organ that functions in the detection of smell is an olfactory sensory organ OWL:

        'olfactory sensory organ'\n EquivalentTo \u2018sensory organ\u2019\nthat\ncapable_of some \u2018detection of smell\u2019\n

        If we then have an entity nose that is subClassOf sensory organ and capable_of some detection of smell, it will be automatically classified as an olfactory sensory organ.

        "},{"location":"explanation/intro-to-ontologies/#how-to-interpret-an-and-or-an-or","title":"How to interpret an 'and' or an 'or'","text":"

        Many classes, especially in the domains of disease and phenotype, describe combinations of multiple classes - but it is very important to carefully distinguish whether this combination follows \"disjunctive\" logic (\"or\") or \"conjunctive\" logic (\"and\"). Both mean something entirely different. Usually where a class has 'and' in the label, such as 'neonatal inflammatory skin and bowel disease' (MONDO:0017411), the class follows a conjunctive logic (as expected), and should be interpreted in a way that someone that presents with this disease has both neonatal inflammatory skin disease and bowel disease at once. This class should be classified as a child of 'bowel disease' and 'neonatal inflammatory skin disease'. Note, however, that naming in many ontologies is not consistent with this logic, and you need to be careful to distinguish wether the interpretation is supposed to be conjunctive or disjunctive (i.e. \"and\" could actually mean \"or\", which is especially often the case for clinical terminologies).

        Having asserted multiple SubClassOf axioms means that an instance of the class is a combination of all the SubClass Of statements (conjunctive interpretation, see above). For example, if 'neonatal inflammatory skin and bowel disease' is a subclass of both 'bowel disease' and 'neonatal inflammatory skin disease', then an individual with this disease has 'bowel disease' and 'neonatal inflammatory skin disease'.

        If there were a class 'neonatal inflammatory skin or bowel disease', the intention is usually that this class follows disjunctive logic. A class following this logic would be interpreted in a way that an individual with this disease has either bowel disease or neonatal inflammatory skin disease or both. It would not be accurate to classify this class as a child of bowel disease and neonatal inflammatory skin disease. This type of class is often called a \"grouping class\", and is used to aggregate related diseases in a way useful to users, like \"disease\" and \"sequelae of disease\".

        "},{"location":"explanation/intro-to-ontologies/#acknowledgements","title":"Acknowledgements","text":"
        • David Osumi-Sutherland (original creator of slides)
        • Nicole Vasilevsky (Critical Path Institute)
        • Alex Diehl (Buffalo)
        • Nico Matentzoglu
        • Matt Brush
        • Matt Yoder
        • Carlo Toriniai
        • Simon Jupp
        • Chris Mungall (LNBL)
        • Melissa Haendal (University of Colorado Anschutz Medical Campus)
        • Jim Balhoff (RENCI)
        • James Overton - slides, ideas & discussions
        • Terry Meehan - who edited CL more than anyone
        • Helen Parkinson (EBI)
        • Michael Ashburner
        "},{"location":"explanation/logical-axiomatization/","title":"Logical axiomatization of classes & use of reasoning","text":"

        This explainer requires understanding of ontology classifications. Please see \"an ontology as a classification\" section of the introduction to ontologies documentation if you are unfamiliar with these concepts.

        You can watch this video about an introduction to Logical Description.

        "},{"location":"explanation/logical-axiomatization/#what-are-logical-axioms","title":"What are logical axioms","text":"

        Logical axioms are relational information about classes that are primarily aimed at machines. This is opposed to annotations like textual definitions which are primarily aimed at humans. These logical axioms allow reasoners to assist in and verify classification, lessening the development burden and enabling expressive queries.

        "},{"location":"explanation/logical-axiomatization/#what-should-you-axiomatize","title":"What should you axiomatize?","text":"

        Ideally, everything in the definition should be axiomatized when possible. For example, if we consider the cell type oxytocin receptor sst GABAergic cortical interneuron, which has the textual definition:

        \"An interneuron located in the cerebral cortex that expresses the oxytocin receptor. These interneurons also express somatostatin.\"

        The logical axioms should then follow accordingly:

        SubClassOf:

        • interneuron
        • 'has soma location' some 'cerebral cortex'
        • expresses some 'oxytocin receptor'
        • expresses some somatostatin
        • 'capable of' some 'gamma-aminobutyric acid secretion, neurotransmission'

        These logical axioms allow a reasoner to automatically classify the term. For example, through the logical axioms, we can infer that oxytocin receptor sst GABAergic cortical interneuron is a cerebral cortex GABAergic interneuron.

        Axiomatizing definitions well will also allow for accurate querying. For example, if I wanted to find a neuron that expresses oxytocin receptor, having the SubClassOf axioms of interneuron and expresses some 'oxytocin receptor' will allow me to do so on DL query (see tutorial on DL query for more information about DL queries).

        "},{"location":"explanation/logical-axiomatization/#what-should-you-not-axiomatize","title":"What should you NOT axiomatize?","text":"

        Everything in the logical axioms must be true, (do not axiomatize things that are true to only part of the entity) For example, the cell type chandelier pvalb GABAergic cortical interneuron is found in upper L2/3 and deep L5 of the cerebral cortex. We do not make logical axioms for has soma location some layer 2/3 and layer 5. Axioms with both layers would mean that a cell of that type must be in both layer 2/3 and layer 5, which is an impossibility (a cell cannot be in two seperate locations at once!). Instead we axiomatize a more general location: 'has soma location' some 'cerebral cortex'

        "},{"location":"explanation/logical-axiomatization/#equivalent-class-logical-definitions","title":"Equivalent class logical definitions","text":"

        An equivalent class axiom is an axiom that defines the class; it is a necessary and sufficient logical axiom that defines the cell type. It means that if a class B fulfils all the criteria/restrictions in the equivalent axiom of class A, class B is by definition a subclass of class A. Equivalent classes allow the reasoner to automatically classify entities.

        For example:

        • chandelier cell has the equivalent class axiom interneuron and ('has characteristic' some 'chandelier cell morphology')
        • chandelier pvalb GABAergic cortical interneuron has the subclass axioms 'has characteristic' some 'chandelier cell morphology' and interneuron
        • chandelier pvalb GABAergic cortical interneuron is therefore a subclass of chandelier cell

        Equivalent class axioms classification can be very powerful as it takes into consideration complex layers of axioms.

        For example:

        • primary motor cortex pyramidal cell has the equivalent class axiom 'pyramidal neuron' and ('has soma location' some 'primary motor cortex').
        • Betz cell has the axioms 'has characteristic' some 'standard pyramidal morphology' and 'has soma location' some 'primary motor cortex layer 5'
        • Betz cell are inferred to be primary motor cortex pyramidal cell through the following chain (you can see this in Prot\u00e9g\u00e9 by pressing the ? button on inferred class):

        The ability of the reasoner to infer complex classes helps identify classifications that might have been missed if done manually. However, when creating an equivalent class axiom, you must be sure that it is not overly constrictive (in which case, classes that should be classified under it gets missed) nor too loose (in which case, classes will get wrongly classified under it).

        Example of both overly constrictive and overly loose equivalent class axiom:

        neuron equivalent to cell and (part_of some 'central nervous system')

        • This is overly constrictive as there are neurons outside the central nervous system (e.g. peripheral neurons).
        • This is also too loose as there are cells in the central nervous system that are not neurons (e.g. glial cells).

        In such cases, sometimes not having an equivalent class axioms is better (like in the case of neuron), and asserting is the best way to classify a child.

        "},{"location":"explanation/logical-axiomatization/#style-guide","title":"Style guide","text":"

        Each ontology has certain styles and conventions in how they axiomatize. This style guide is specific to OBO ontologies. We will also give reasons as to why we choose to axiomatize in the way we do. However, be aware of your local ontology's practices.

        "},{"location":"explanation/logical-axiomatization/#respect-the-ontology-style","title":"Respect the ontology style","text":"

        It is important to note that ontologies have specific axiomatization styles and may apply to, for example, selecting a preferred relation. This usually reflects their use cases. For example, the Cell Ontology has a guide for what relations to use. An example of an agreement in the community is that while anatomical locations of cells are recorded using part of, neurons should be recorded with has soma location. This is to accommodate for the fact that many neurons have long reaching axons that cover multiple anatomical locations making them difficult to axiomatize using part of.

        For example, Betz cell, a well known cell type which defines layer V of the primary motor cortex, synapses lower motor neurons or spinal interneurons (cell types that reside outside the brain). Having the axiom 'Betz cell' part_of 'cortical layer V' is wrong. In this case has soma location is used. Because of cases like these that are common in neurons, all neurons in CL should use has soma location.

        "},{"location":"explanation/logical-axiomatization/#avoid-redundant-axioms","title":"Avoid redundant axioms","text":"

        Do not add axioms that are not required. If a parent class already has the axiom, it should not be added to the child class too. For example:

        • retinal bipolar neuron is a child of bipolar neuron
        • bipolar neuron has the axiom 'has characteristic' some 'cortical bipolar morphology'
        • Therefore we do not add 'has characteristic' some 'cortical bipolar morphology' to retinal bipolar neuron

        Axioms add lines to the ontology, resulting in larger ontologies that are harder to use. They also add redundancy, making the ontology hard to maintain as a single change in classification might require multiple edits.

        "},{"location":"explanation/logical-axiomatization/#let-the-reasoner-do-the-work","title":"Let the reasoner do the work","text":"

        Asserted is_a parents do not need to be retained as entries in the 'SubClass of' section of the Description window in Prot\u00e9g\u00e9 if the logical definition for a term results in their inference.

        For example, cerebral cortex GABAergic interneuron has the following logical axioms:

        Equivalent_To\n  'GABAergic interneuron' and\n  ('has soma location' some 'cerebral cortex')\n

        We do not need to assert that it is a cerebral cortex neuron, CNS interneuron, or neuron of the forebrain as the reasoner automatically does that.

        We avoid having asserted subclass axioms as these are redundant lines in the ontology which can result in a larger ontology, making them harder to use.

        Good practice to let the reasoner do the work:

        1) If you create a logical definition for your term, you should delete all redundant, asserted is_a parent relations by clicking on the X to the right of the term.\n2) If an existing term contains a logical definition and still shows an asserted is_a parent in the 'SubClass of' section, you may delete that asserted parent. Just make sure to run the Reasoner to check that the asserted parent is now replaced with the correct reasoned parent(s).\n3) Once you synchronize the Reasoner, you will see the reasoned classification of your new term, including the inferred is_a parent(s).\n4) If the inferred classification does not contain the correct parentage, or doesn't make sense, then you will need to modify the logical definition.\n
        "},{"location":"explanation/ontology-matching/","title":"Ontology Matching","text":""},{"location":"explanation/ontology-matching/#ontology-matching-basic-techniques","title":"Ontology Matching: Basic Techniques","text":"

        10 min overview of J\u00e9r\u00f4me Euzenat and Pavel Shvaiko ground-breaking Ontology Matching.

        "},{"location":"explanation/owl-building-blocks/","title":"The logical building blocks of OWL","text":"

        Here we briefly list the building blocks that are used in OWL that enable reasoning.

        OWL Semantics Example instance or individual A member of a set. A person called Mary or a dog called Fido. class A set of in dividuals. The Person class consisting of persons or the Dog class consisting of dogs. object property A set of pairs of individuals. The owns object property can link a pet and its owner: Mary owns Fido. data property A set of pairs where each pair consists of an individual linked to a data value. The data property hasAge can link a number representing an age to an individual: hasAge(Mary, 10)."},{"location":"explanation/owl-format-variants/","title":"OWL, OBO, JSON? Base, simple, full, basic? What should you use, and why?","text":"

        For reference of the more technical aspects of release artefacts, please see documentation on Release Artefacts

        Ontologies come in different serialisations, formalisms, and variants For example, their are a full 9 (!) different release files associated with an ontology released using the default settings of the Ontology Development Kit, which causes a lot of confusion for current and prospective users.

        Note: In the OBO Foundry pages, \"variant\" is currently referred to as \"products\", i.e. the way we use \"variant\" here is synonymous with with notion of \"product\".

        "},{"location":"explanation/owl-format-variants/#overview-of-the-relevant-concepts","title":"Overview of the relevant concepts","text":"
        • A formalism or formal language can be used to describe entities and their relationships in an ontology. The most important formalisms we have are:
        • Web Ontology Language (OWL): OWL is by far the dominant formalism in the biomedical domain due to its inference capabilities.
        • RDF(S): Is a generally weaker language than OWL, but widely used by triple stores and other SPARQL engines. RDF(S) is lacking some of the strong logical guarantees that come with OWL and should only be used in scenarios where scalability (computation time) is the primary concern.
        • OBO: OBO used to be the dominant language in the biomedical domain before the advent of OWL. I also used to have its own specific semantics associated with it. OBO semantics have since been mapped into OWL semantics, so that for all practical purposes, we consider \"OBO\" now a dialect of OWL, which means that when you hear 'OBO format' today, we are generally referring to the serialisation (see below), NOT the formalism. Note that when we say OBO ontologies we mean literally Open Biomedical and Biological Ontologies, and NOT Ontology in OBO format.

        Some people like to also list SHACL and Shex as ontology languages and formalism. Formalisms define syntax (e.g. grammar rules) and semantics (what does what expression mean?). The analogue in the real world would be natural languages, like English or Greek.

        • A format, or serialisation of a language is used to write down statements of a formal language in some way. Formats are not formalisms - they simply enable statements in a formalism to be expressed in some (usually textual) way. The most common formats in our domains are:
        • RDF/XML. This is the default serialisation language of the OWL flavours of OBO ontologies. It is a pretty ugly format, really hard to understand by most users but it has one advantage - it can be understood widely by RDF-focused tools like rdflib, OWL-focused tools like those based on the OWL API
        • OWL Functional Syntax: This is very common syntax for editing ontologies in OWL, because they look nice in diff tools such as git diff, i.e changes to ontologies in functional syntax are much easier to be reviewed. RDF/XML is not suitable for manual review, due to its verbosity and complexity.
        • OWL Manchester Syntax: This is the default language for OWL tutorials and for writing class expressions in editors such as Protege
        • OBO Format: The most easy to read of all the serialisations. In many ontologies such as Mondo and Uberon, we still use OBO as the editors format (as opposed to OWL Functional Syntax, which is more wide-spread). OBO format looks clear and beautiful in diffs such as git diffs, and therefore still continues to be wide-spread. OBO Format does not cover all of owl, and should only be used in conjunction with ontologies that stay within the limit of the OBO format specification.
        • OBO Graphs JSON: A simple JSON serialisation of ontologies. This format roughly reflects the capabilities of the OBO format, but is intended for consumption by tools. Again, it does not cover all of OWL, but it does cover the parts that are relevant in 99% of the use cases.

        The real-world analogue of serialisation or format is the script, i.e. Latin or Cyrillic script (not quite clean analogue).

        • A variant is a version of the ontology exported for a specific purpose. The most important variants are:
        • Edit: The variant of the ontology that is edited by ontology curators. Its sole purpose is to be used by ontology editors, and should not be used by any other application. In a ODK-style repository, the edit file is typically located hidden from view, e.g. src/ontology/cl-edit.owl.
        • Full: The ontology with all its imports merged in, and classified using a reasoner, see docs. The Full variant should be used by users that require the use of reasoners and a guarantee that all the inferences work as intended by the ontology developers. This is the default variant of most OBO ontologies.
        • Base: The axioms belonging to the ontology, excluding any axioms from imported ontologies, see docs. Base variants are used by ontology repository developers to combine the latest versions of all ontologies in a way that avoids problems due to conflicting versions. Base files should not be used by users that want to use the ontology in downstream tools, such as annotation tools or scientific databases, as they are incomplete, i.e. not fully classified.
        • Simple: A version of the ontology that only contains only a subset of the ontology (only the direct relations, see docs). The simple variant should be used by most users that build tools that use the ontology, especially when serialised as OBO graphs json. This variant should probably be avoided by power-users working with reasoners, as many of the axioms that drive reasoning are missing.
        • Basic: A variant of Simple, in that it is reduced to only a specific set of relations, such as subClassOf and partOf. Some users that require the ontology to correspond to acyclic graphs, or deliberately want to focus only on a set of core relations, will want to use this variant, see docs). The formal definition of the basic variant can be found here.
        • Other variants: Some variants are still used, like \"non-classified\", see docs), but should be avoided. Others like base-plus, a variant that corresponds to base + the inferred axioms, are still under development, and will be explained here when they are fully developed.
        "},{"location":"explanation/owl-format-variants/#best-practices","title":"Best practices","text":"
        • Tool developers developing tools that use the ontology (and do not need reasoners), such as database curation tools, web-browsers and similar, should typically use OBO graphs JSON and avoid using OBO format or any of the OWL focussed serialisations (Functional, Manchester or RDF/XML). OWL-focussed serialisations contain a huge deal of axiomatic content that make no sense to most users, and can lead to a variety of mistakes. We have seen it many times that software developers try to interpret OWL axioms somehow to extract relations. Do not do that! Work with the ontologies to ensure they provide the relationships you need in the appropriate form.
        • Tool developers building tools to work with ontologies should typically ensure that they can read and write RDF/XML - this is the most widely understood serialisation. Work with ontologies means here 'enable operations that change the content of the ontology'.
        • Tool developers building infrastructure to query across ontologies should consider using base variants - these ensure that you can always use the latest version of each ontology and avoid most of the common version clashes. It is important that such users are keenly aware of the role of OWL reasoning in such a process.
        • Many users of ontologies think they need the reasoner actually don't. Make sure you consult with an expert before building a system that relies on OWL reasoners to deliver user facing services.
        • As an ontology developer, it is great practice to provide the above variants in the common serialisations. The Ontology Development Kit provides defaults for all of these.
        • As an ontology developer, you should avoid publishing your ontology with owl:imports statements - these are easily ignored by your users and make the intended \"content\" of the ontology quite none-transparent.
        "},{"location":"explanation/subClassOf-vs-equivalentTo/","title":"SubClassOf vs EquivalentTo","text":""},{"location":"explanation/subClassOf-vs-equivalentTo/#prerequisites","title":"Prerequisites","text":"

        This lesson assumes you have basic knowledge wrt ontologies and OWL as explained in:

        • Introduction to ontologies
        • Logical building blocks of OWL
        "},{"location":"explanation/subClassOf-vs-equivalentTo/#subclassof","title":"SubClassOf","text":"

        In this section we explain the semantics of SubClassOf, give an example of using SubClassOf and provide guidance for when not to use SubClassOf.

        "},{"location":"explanation/subClassOf-vs-equivalentTo/#semantics","title":"Semantics","text":"

        If we have

        Class: C\n  SubClassOf: D\nClass: D\n

        the semantics of it is given by the following Venn diagram:

        Thus, the semantics is given by the subset relationship, stating the C is a subset of D. This means every individual of C is necessarily an individual of D, but not every individual of D is necessarily an individual of C.

        "},{"location":"explanation/subClassOf-vs-equivalentTo/#a-concrete-example","title":"A concrete example","text":"
        Class: Dog\n  SubClassOf: Pet\nClass: Pet\n

        which as a Venn diagram will look as follows:

        "},{"location":"explanation/subClassOf-vs-equivalentTo/#guidance","title":"Guidance","text":"

        There are at least 2 scenarios which at first glance may seem like C SubClassOf D holds, but it does not hold, or using C EquivalentTo D may be a better option.

        1. This is typically where C has many individuals that are in D, but there is at least 1 individual of C that is not in D. The following Venn diagram is an example. Thus, to check whether you may be dealing with this scenario, you can ask the following question: Is there any individual in C that is not in D? If 'yes', you are dealing with this scanario and you should not be using C SubClassOf D.

        1. When you have determined that (1) does not hold, you may deal with the scenario where not only is every individual of C in D, but also every individual in D is in C. This means C and D are equivalent. In the case you rather want to make use of EquivalentTo.

        "},{"location":"explanation/subClassOf-vs-equivalentTo/#equivalentto","title":"EquivalentTo","text":""},{"location":"explanation/subClassOf-vs-equivalentTo/#semantics_1","title":"Semantics","text":"

        If we have

        Class: C\n    EquivalentTo: D\nClass: D\n

        this means the sets C and D fit perfectly on each other, as shown in the next Venn diagram:

        Note that C EquivalentTo D is shorthand for

        Class: C\n    SubClassOf: D\nClass: D\n    SubClassOf: C\n

        though, in general it is better to use EquivalentTo rather than the 2 SubClassOf axioms when C and D are equivalent.

        "},{"location":"explanation/subClassOf-vs-equivalentTo/#a-concrete-example_1","title":"A concrete example","text":"

        We all probably think of humans and persons as the exact same set of individuals.

        Class: Person\n    EquivalentTo: Human\nClass: Human\n

        and as a Venn diagram:

        "},{"location":"explanation/subClassOf-vs-equivalentTo/#guidance_1","title":"Guidance","text":"

        When do you not want to use EquivalentTo?

        1. When there is an individual of C that is not in D.

        1. When there is an individual of D that is not in C.

        "},{"location":"explanation/taxon-constraints-explainer/","title":"Guide to Taxon Restrictions","text":""},{"location":"explanation/taxon-constraints-explainer/#tutorials","title":"Tutorials","text":""},{"location":"explanation/taxon-constraints-explainer/#monarch-obo-training-tutorial","title":"Monarch OBO training Tutorial","text":""},{"location":"explanation/taxon-constraints-explainer/#modeling-with-taxon-constraints","title":"Modeling with Taxon Constraints","text":""},{"location":"explanation/taxon-constraints-explainer/#what-are-taxon-restrictions","title":"What are taxon restrictions?","text":"

        Taxon restrictions (or, \"taxon constraints\") are a formalised way to record what species a term applies to\u2014something crucial in multi-species ontologies.

        Even species neutral ontologies (e.g., GO) have classes that have implicit taxon restriction.

        GO:0007595 ! Lactation - defined as \u201cThe secretion of milk by the mammary gland.\u201d\n
        "},{"location":"explanation/taxon-constraints-explainer/#uses-for-taxon-restrictions","title":"Uses for taxon restrictions","text":"
        1. Finding inconsistencies. Taxon restrictions use terms from the NCBI Taxonomy Ontology, which asserts pairwise disjointness between sibling taxa (e.g., nothing can be both an insect and a rodent). When terms have taxon restrictions, a reasoner can check for inconsistencies.

          When GO implemented taxon restrictions, they found 5874 errors!

        2. Defining taxon-specific subclasses. You can define a taxon-specific subclass of a broader concept, e.g., 'human clavicle'. This allows you, for example, to assert relationships for the new term that don't apply to all instances of the broader concept:

          'human clavicle' EquivalentTo ('clavicle bone' and ('in taxon' some 'Homo sapiens'))\n'human clavicle' SubClassOf ('connected to' some sternum)\n
        3. Creating SLIMs. Use a reasoner to generate ontology subsets containing only those terms that are logically allowed within a given taxon.

        4. Querying. Facet terms by taxon. E.g., in Brain Data Standards, in_taxon axioms allow faceting cell types by species. (note: there are limitations on this and may be incomplete).

        "},{"location":"explanation/taxon-constraints-explainer/#types-of-taxon-restrictions","title":"Types of Taxon Restrictions","text":"

        There are, in essence, three categories of taxon-specific knowledge we use across OBO ontologies. Given a class C, which could be anything from an anatomical entity to a biological process, we have the following categories:

        1. The ALL-IN restriction: \"C in_taxon T\"
          • \"Hair is found only in Mammals\"
        2. The NOT-IN restriction: \"C never_in_taxon T\"
          • \"Hair is never found in Birds\"
        3. The SOME-IN restriction: \"C present_in_taxon T\"
          • \"Hair is found in Skunks\"
          • \"Hair is found in Whales\"
        "},{"location":"explanation/taxon-constraints-explainer/#the-all-in-restriction-c-in_taxon-t","title":"The ALL-IN restriction: \"C in_taxon T\"","text":"
        • Meaning: \"All instances of C are in some instance of taxon T\"
        • As this is a relation between instances, it may have been more correct to give this property a label such as \"in organism\".
        • Canonical logical representation:
          C SubClassOf (in_taxon some T)\n
        • Alternative representations: None
        • Editor guidance: Editors use the canonical logical representation in a SubClassOf axiom to add a taxon restriction, or in a simple (non-nested) EquivalentClass axiom to define a taxon-specific subclass (which will also imply the taxon restriction). When used in a SubClassOf axiom, the taxon should be as specific as possible for the maximum utility, but may still need to be quite broad, as it applies to every instance of C.
        "},{"location":"explanation/taxon-constraints-explainer/#the-not-in-restriction-c-subclassof-not-in_taxon-some-t","title":"The NOT-IN restriction: \"C SubClassOf (not (in_taxon some T))\"","text":"
        • Meaning: \"No instances of C are in taxon T\"
        • Canonical logical representation:
          C SubClassOf (not (in_taxon some T))`\n
        • Alternative representations:
          • Alternative EL logical representation: C DisjointWith (in_taxon some T)
          • EL helper axiom: C SubClassOf (in_taxon some (not T))
          • Canonical shortcut: AnnotationAssertion: C never_in_taxon T # Editors use this
        • Editor guidance: Editors use the canonical shortcut (annotation axiom). For never_in_taxon annotations, the taxon should be as broad as possible for the maximum utility, but it must be the case that a C is never found in any subclass of that taxon.
        "},{"location":"explanation/taxon-constraints-explainer/#the-some-in-restriction-a-classassertion-c-and-in_taxon-some-t","title":"The SOME-IN restriction: \"a ClassAssertion: C and in_taxon some T\"","text":"
        • Meaning: \"At least one specific instance of C is in taxon T\".
        • Canonical logical representation:
          IND:a Type (C and (in_taxon some T))`\n
        • Alternative representations:
          • Generated subclass for QC purposes: C_in_T SubClassOf (C and (in_taxon some T) (C_in_T will be unsatisifiable if violates taxon constraints)
          • Canonical shortcut: AnnotationAssertion: C present_in_taxon T # Editors use this
        • Editor guidance: Editors use the canonical shorcut (annotation axiom). The taxon should be as specific as possible, ideally a species.
        "},{"location":"explanation/taxon-constraints-explainer/#how-to-add-taxon-restrictions","title":"How to add taxon restrictions:","text":"

        Please see how-to guide on adding taxon restrictions

        "},{"location":"explanation/taxon-constraints-explainer/#using-taxon-restrictions-for-quality-control","title":"Using taxon restrictions for Quality Control","text":"

        As stated above, one of the major applications for taxon restrictions in OBO is for quality control (QC), by finding logical inconsistencies. Many OBO ontologies consist of a complex web of term relationships, often crossing ontology boundaries (e.g., GO biological process terms referencing Uberon anatomical structures or CHEBI chemical entities). If particular terms are only defined to apply to certain taxa, it is critical to know that a chain of logic implies that the term must exist in some other taxon which should be impossible. Propagating taxon restrictions via logical relationships greatly expands their effectiveness (the GO term above may acquire a taxon restriction via the type of anatomical structure in which it occurs).

        It can be helpful to think informally about how taxon restrictions propagate over the class hierarchy. It's different for all three types:

        • ALL-IN restrictions (in_taxon) include all superclasses of the taxon, and all subclasses of the subject term: %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. graph BT; n1(hair) ; n2(whisker) ; n3(Mammalia) ; n4(Tetrapoda) ; n2--is_a-->n1 ; n3--is_a-->n4 ; n1==in_taxon==>n3 ; n1-.in_taxon.->n4 ; n2-.in_taxon.->n3 ; n2-.in_taxon.->n4 ; linkStyle 0 stroke:#999 ; linkStyle 1 stroke:#999 ; style n1 stroke-width:4px ; style n3 stroke-width:4px ;
        • NOT-IN restrictions (never_in_taxon) include all subclasses of the taxon, and all subclasses of the subject term: %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. graph BT; n1(facial whisker) ; n2(whisker) ; n3(Homo sapiens) ; n4(Hominidae) ; n1--is_a-->n2 ; n3--is_a-->n4 ; n2==never_in_taxon==>n4 ; n2-.never_in_taxon.->n3 ; n1-.never_in_taxon.->n4 ; n1-.never_in_taxon.->n3 ; linkStyle 0 stroke:#999 ; linkStyle 1 stroke:#999 ; style n2 stroke-width:4px ; style n4 stroke-width:4px ;
        • SOME-IN restrictions (present_in_taxon) include all superclasses of the taxon, and all superclasses of the subject term: %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. graph BT; n1(hair) ; n2(whisker) ; n3(Felis) ; n4(Carnivora) ; n2--is_a-->n1 ; n3--is_a-->n4 ; n2==present_in_taxon==>n3 ; n1-.present_in_taxon.->n3 ; n2-.present_in_taxon.->n4 ; n1-.present_in_taxon.->n4 ; linkStyle 0 stroke:#999 ; linkStyle 1 stroke:#999 ; style n2 stroke-width:4px ; style n3 stroke-width:4px ;

        The Relation Ontology defines number of property chains for the in_taxon property. This allows taxon restrictions to propagate over other relationships. For example, the part_of o in_taxon -> in_taxon chain implies that if a muscle is part of a whisker, then the muscle must be in a mammal, but not in a human, since we know both of these things about whiskers:

        %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. graph BT; n1(hair) ; n2(whisker) ; n3(Mammalia) ; n4(Homo sapiens) ; n5(Hominidae) ; n6(whisker muscle) ; n2--is_a-->n1 ; n5--is_a-->n3 ; n4--is_a-->n5 ; n6--part_of-->n2 ; n1==in_taxon==>n3 ; n2==never_in_taxon==>n5 ; n2-.in_taxon.->n3 ; n6-.in_taxon.->n3 ; n6-.never_in_taxon.->n4 ; n2-.never_in_taxon.->n4 ; n6-.never_in_taxon.->n5 ; linkStyle 0 stroke:#999 ; linkStyle 1 stroke:#999 ; linkStyle 2 stroke:#999 ; linkStyle 3 stroke:#008080 ; style n6 stroke-width:4px ;

        Property chains are the most common way in which taxon restrictions propagate across ontology boundaries. For example, Gene Ontology uses various subproperties of results in developmental progression of to connect biological processes to Uberon anatomical entities. Any taxonomic restrictions which hold for the anatomical entity will propagate to the biological process via this property.

        The graph depictions in the preceding illustrations are informal; in practice never_in_taxon and present_in_taxon annotations are translated into more complex logical constructions using the in_taxon object property, described in the next section. These logical constructs allow the OWL reasoner to determine that a class is unsatisfiable when there are conflicts between taxon restriction inferences.

        "},{"location":"explanation/taxon-constraints-explainer/#implementation-and-reasoning-with-taxon-restrictions","title":"Implementation and reasoning with taxon restrictions","text":"

        The OWL axioms required to derive the desired entailments for taxon restrictions are somewhat more complicated than one might expect. Much of the complication is the result of workarounds to limitations dictated by the OWL EL profile. Because of the size and complexity of many of the ontologies in the OBO Library, particularly those heavily using taxon restrictions, we primarily rely on the ELK reasoner, which is fast and scalable since it implements OWL EL rather than the complete OWL language. In the following we discuss the particular kinds of axioms required in order for taxon restrictions to work with ELK, with some comments about how it could work with HermiT (which implements the complete OWL language but is much less scalable). We will focus on this example ontology:

        %% Future editors, note that link styles are applied according to the link index, so be careful if adding or removing links. graph BT; n1(hair) ; n2(whisker) ; n3(muscle) ; n4(whisker muscle) ; n5(whisker muscle in human) ; n6(whisker in catfish) ; n7(whisker in human) ; n8(Vertebrata) ; n9(Teleostei) ; n10(Siluriformes) ; n11(Tetrapoda) ; n12(Mammalia) ; n13(Hominidae) ; n14(Homo sapiens) ; n2--is_a-->n1 ; n4--is_a-->n3 ; n9--is_a-->n8 ; n10--is_a-->n9 ; n11--is_a-->n8 ; n12--is_a-->n11 ; n13--is_a-->n12 ; n14--is_a-->n13 ; n5--is_a-->n4 ; n6--is_a-->n2 ; n7--is_a-->n2 ; n4--part_of-->n2 ; n11 --disjoint_with--- n9 ; n1==in_taxon==>n12 ; n2==never_in_taxon==>n13 ; n5==in_taxon==>n14 ; n7==in_taxon==>n14 ; n6==in_taxon==>n10 ; linkStyle 0 stroke:#999 ; linkStyle 1 stroke:#999 ; linkStyle 2 stroke:#999 ; linkStyle 3 stroke:#999 ; linkStyle 4 stroke:#999 ; linkStyle 5 stroke:#999 ; linkStyle 6 stroke:#999 ; linkStyle 7 stroke:#999 ; linkStyle 8 stroke:#999 ; linkStyle 9 stroke:#999 ; linkStyle 10 stroke:#999 ; linkStyle 11 stroke:#008080 ; linkStyle 12 stroke:red ; style n5 stroke-width:4px,stroke:red ; style n6 stroke-width:4px,stroke:red ; style n7 stroke-width:4px,stroke:red ;

        There are three classes outlined in red which were created mistakenly; the asserted taxon for each of these conflicts with taxon restrictions in the rest of the ontology:

        • 'whisker in human' \u2014 We expect this to be unsatisfiable since it is a subclass of 'whisker', which has a 'never in Hominidae' restriction. 'Whisker in human' is asserted to be in_taxon 'Homo sapiens', a subclass of 'Hominidae'.
        • 'whisker in catfish' \u2014 We expect this to be unsatisfiable since it is a subclass of 'whisker', and thus a subclass of 'hair'. 'Hair' has an 'only in Mammalia' restriction. 'Whisker in catfish' is asserted to be in_taxon 'Siluriformes' (catfish), which is a subclass of Teleostei and thus disjoint from 'Mammalia'.
        • 'whisker muscle in human' \u2014 We expect this to be unsatisfiable since it is a 'whisker muscle' and thus part of a 'whisker', and thus inherits the 'never in Hominidae' restriction from 'whisker' via the property chain part_of o in_taxon -> in_taxon. This conflicts with its asserted in_taxon 'Homo sapiens', a subclass of 'Hominidae'.
        "},{"location":"explanation/taxon-constraints-explainer/#taxon-restriction-modeling","title":"Taxon restriction modeling","text":"

        We can start by modeling the two taxon restrictions in the ontology like so:

        • 'hair' 'in_taxon' 'Mammalia': 'hair' SubClassOf (in_taxon some 'Mammalia')
        • 'whisker' 'never_in_taxon' 'Mammalia': 'whisker' SubClassOf (not (in_taxon some 'Hominidae'))

        Both HermiT and ELK can derive that 'whisker in human' is unsatisfiable. This is the explanation:

        • 'human whisker' EquivalentTo ('whisker' and (in_taxon some 'Homo sapiens'))
        • 'Homo sapiens' SubClassOf 'Hominidae'
        • 'whisker' SubClassOf (not ('in_taxon' some 'Hominidae'))

        Unfortunately, neither reasoner detects the other two problems. We'll address the 'whisker in catfish' first. The reasoner infers that this class is in_taxon both 'Mammalia' and 'Siluriformes'. While these are disjoint classes (all sibling taxa are asserted to be disjoint in the taxonomy ontology), there is nothing in the ontology stating that something can only be in one taxon at a time. The most intuitive solution to this problem would be to assert that in_taxon is a functional property. However, due to limitations of OWL, functional properties can't be used in combination with property chains. Furthermore, functional properties aren't part of OWL EL. There is one solution that works for HermiT, but not ELK. We could add an axiom like the following to every \"always in taxon\" restriction:

        • 'hair' SubClassOf (in_taxon only 'Mammalia')

        This would be sufficient for HermiT to detect the unsatisfiability of 'whisker in catfish' (assuming taxon sibling disjointness). Unfortunately, only restrictions are not part of OWL EL. Instead of adding the only restrictions, we can generate an extra disjointness axiom for every taxon disjointness in the taxonomy ontology, e.g.:

        • (in_taxon some 'Tetrapoda') DisjointWith (in_taxon some 'Teleostei')

        The addition of axioms like that is sufficient to detect the unsatisfiability of 'whisker in catfish' in both HermiT and ELK. This is the explanation:

        • 'whisker in catfish' EquivalentTo ('whisker' and (in_taxon some 'Siluriformes'))
        • 'whisker' SubClassOf 'hair'
        • 'hair' SubClassOf (in_taxon some 'Mammalia')
        • 'Mammalia' SubClassOf 'Tetrapoda'
        • 'Siluriformes' SubClassOf 'Teleostei'
        • (in_taxon some 'Teleostei') DisjointWith (in_taxon some 'Tetrapoda')

        While we can now detect two of the unsatisfiable classes, sadly neither HermiT nor ELK yet finds 'whisker muscle in human' to be unsatisfiable, which requires handling the interaction of a \"never\" assertion with a property chain. If we were able to make in_taxon a functional property, HermiT should be able to detect the problem; but as we said before, OWL doesn't allow us to combine functional properties with property chains. The solution is to add even more generated disjointness axioms, one for each taxon (in combination with the extra disjointness we added in the previous case), e.g.,:

        • (in_taxon some Hominidae) DisjointWith (in_taxon some (not Hominidae))

        While that is sufficient for HermiT, for ELK we also need to add another axiom to the translation of each never_in_taxon assertion, e.g.,:

        • 'whisker' SubClassOf (in_taxon some (not 'Hominidae'))

        Now both HermiT and ELK can find 'whisker muscle in human' to be unsatisfiable. This is the explanation from ELK:

        • 'whisker muscle in human' EquivalentTo ('whisker muscle' and (in_taxon some 'Homo sapiens'))
        • 'Homo sapiens' SubClassOf 'Hominidae'
        • 'whisker muscle' SubClassOf (part_of some 'whisker')
        • 'whisker' SubClassOf (in_taxon some ('not 'Hominidae'))
        • part_of o in_taxon SubPropertyOf in_taxon
        • (in_taxon some 'Hominidae') DisjointWith (in_taxon some (not 'Hominidae'))
        "},{"location":"explanation/taxon-constraints-explainer/#modeling-present_in_taxon","title":"Modeling present_in_taxon","text":"

        The above example didn't incorporate any present_in_taxon (SOME-IN) assertions. These work much the same as ALL-IN in_taxon assertions. However, instead of stating that all instances of a given class are in a taxon (C SubClassOf (in_taxon some X)), we either state that there exists an individual of that class in that taxon, or that there is some subclass of that class whose instances are in that taxon:

        1. <generated individual IRI> Type (C and (in_taxon some X)) \u2014 violations involving this assertion will make the ontology logically inconsistent.

          or

        2. <generated class IRI> SubClassOf (C and (in_taxon some X)) \u2014 violations involving this assertion will make the ontology logically incoherent, i.e., a named class is unsatisfiable (here, <generated class IRI>).

        Incoherency is easier to debug than inconsistency, so option 2 is the default expansion for present_in_taxon.

        In summary, the following constructs are all needed for QC using taxon restrictions:

        • Relation Ontology
          • in_taxon property chains for relations which should propagate in_taxon inferences
        • NCBI Taxonomy Ontology
          • X DisjointWith Y for all sibling taxa X and Y
          • (in_taxon some X) DisjointWith (in_taxon some Y) for all sibling taxa X and Y
          • (in_taxon some X) DisjointWith (in_taxon some (not X)) for every taxon X
        • Each ALL-IN taxon restriction C in_taxon X
          • C SubClassOf (in_taxon some X)
        • Each NOT-IN taxon restriction C never_in_taxon X
          • C SubClassOf (not (in_taxon some X))
          • C SubClassOf (in_taxon some (not X))
        • Each SOME-IN taxon restriction C present_in_taxon X)
          • <generated class IRI> SubClassOf (C and (in_taxon some X))
        "},{"location":"explanation/taxon-constraints-explainer/#employing-taxon-restrictions-in-your-qc-pipeline","title":"Employing taxon restrictions in your QC pipeline","text":"

        If you are checking an ontology for coherency in a QC pipeline (such as by running ROBOT within the ODK), you will need to have the required constructs from the previous section present in your import chain:

        • Relation Ontology \u2014 import as usual
        • NCBI Taxonomy Ontology
          • import the main taxonomy (http://purl.obolibrary.org/obo/ncbitaxon.owl)
          • import http://purl.obolibrary.org/obo/ncbitaxon/subsets/taxslim-disjoint-over-in-taxon.owl (or implement a way to generate the needed disjointness axioms)
            • Note: that file only covers a subset of the taxonomy, and is missing (in_taxon some X) DisjointWith (in_taxon some (not X)). You may need to implement a way to generate the needed disjointness axioms until this is corrected.
        • Your own taxon restrictions within your ontology:
          • ALL-IN taxon restrictions require no expansion. If you are using the never_in_taxon and present_in_taxon shortcut annotation properties, you can expand these into the logical forms using robot expand.
          • Because present_in_taxon expansions add named classes to your ontology, you will probably want to organize your pipeline in such a way that this expansion only happens in a QC check, and the output is not included in your published ontology.
        "},{"location":"explanation/taxon-constraints-explainer/#exploring-taxon-restrictions-in-protege","title":"Exploring taxon restrictions in Prot\u00e9g\u00e9","text":"

        Using the DL Query panel and a running reasoner, it is straightforward to check whether a particular taxon restriction holds for a term (such as when someone has requested one be added to your ontology). Given some term of interest, e.g., 'whisker', submit a DL Query such as 'whisker' and (in_taxon some Mammalia). Check the query results:

        • If Equivalent classes includes owl:Nothing, then a never_in_taxon is implied for that taxon.
        • If Equivalent classes includes the term of interest itself (and not owl:Nothing), then an in_taxon is implied for that taxon.
        • If Superclasses includes the term of interest (and the query isn't equivalent to owl:Nothing), then there is no particular taxon restriction involving that taxon.
        "},{"location":"explanation/taxon-constraints-explainer/#obo-taxon-constraints-plugin-for-protege","title":"OBO taxon constraints plugin for Prot\u00e9g\u00e9","text":"

        To quickly see exactly which taxon restrictions are in effect for a selected term, install the OBO taxon constraints plugin for Prot\u00e9g\u00e9. Once you have the plugin installed, you can add it to your Prot\u00e9g\u00e9 window by going to the menu Window > Views > OBO views > Taxon constraints, and then clicking the location to place the panel. The plugin will show the taxon constraints in effect for the selected OWL class. When a reasoner is running, any inferred taxon constraints will be shown along with directly asserted ones. The plugin executes many reasoner queries behind the scenes, so there may be a delay before the user interface is updated.

        "},{"location":"explanation/term-comments/","title":"Term Comments","text":""},{"location":"explanation/term-comments/#what-are-comments","title":"What are comments?","text":"

        Comments are annotations that may be added to ontology terms to further explain their intended usage, or include information that is useful but does not fit in areas like definition.

        Some examples of comments, and possible standard language for their usage, are:

        WARNING: THESE EXAMPLES ARE NOT UNIVERSALLY USED AND CAN BE CONTROVERSIAL IN SOME ONTOLOGIES! PLEASE CHECK WITH THE CONVENTIONS OF YOUR ONTOLOGY BEFORE DOING THIS!

        "},{"location":"explanation/term-comments/#do-not-annotate","title":"Do Not Annotate","text":"

        This term should not be used for direct annotation. It should be possible to make a more specific annotation to one of the children of this term.

        Example: GO:0006810 transport

        Note that this term should not be used for direct annotation. It should be possible to make a more specific annotation to one of the children of this term, for e.g. transmembrane transport, microtubule-based transport, vesicle-mediated transport, etc.

        "},{"location":"explanation/term-comments/#do-not-manually-annotate","title":"Do Not Manually Annotate","text":"

        This term should not be used for direct manual annotation. It should be possible to make a more specific manual annotation to one of the children of this term.

        Example: GO:0000910 cytokinesis

        Note that this term should not be used for direct annotation. When annotating eukaryotic species, mitotic or meiotic cytokinesis should always be specified for manual annotation and for prokaryotic species use 'FtsZ-dependent cytokinesis; GO:0043093' or 'Cdv-dependent cytokinesis; GO:0061639'. Also, note that cytokinesis does not necessarily result in physical separation and detachment of the two daughter cells from each other.

        "},{"location":"explanation/term-comments/#additional-information","title":"Additional Information","text":"

        Information about the term that do not belong belong in the definition or gloss, but are useful for users or editors. This might include information that is adjacent to the class but pertinent to its usage, extended information about the class (eg extended notes about a characteristic of a cell type) that might be useful but does not belong in the definition, important notes on why certain choices were made in the curation of this terms (eg why certain logical axioms were excluded/included in the way they are) (Note: dependent on ontology, some of these might belong in editors_notes, etc.).

        Standard language for these are not given as they vary dependent on usage.

        "},{"location":"explanation/which-ontology-to-use/","title":"Which biomedical ontologies should we use?","text":"

        As a rule of thumb, for every single problem/term/use case, you will have 3-6 options to choose from, in some cases even more. The criteria for selecting a good ontology are very much dependent on your particular use case, but some concerns are generally relevant. A good first pass is to apply to \"10 simple rules for selecting a Bio-ontology\" by Malone et al, but I would further recommend to ask yourself the following:

        • Do I need the ontology for grouping and semantic analysis? In this case a high quality hierarchy reflecting biological subsumption is imperative. We will explain later what this means, but in essence, you should be able to ask the following question: \"All instances/occurrences of this concept in the ontology are also instances of all its parent classes. Everything that is true about the parent class is always also true about instances of the children.\" It is important for you to understand that, while OWL semantics imply the above, OWL is difficult and many ontologies \"pretend\" that the subclass link means something else (like a rule of thumb grouping relation).
        • Can I handle multiple inheritance in my analysis? While I personally recommend to always consider multiple inheritance (i.e, allow a term to have more than one parent class), there are some analysis frameworks, in particular in the clinical domain, that make this hard. Some ontologies are inherently poly-hierarchical (such as Mondo), while others strive to be single inheritance (DO, ICD).
        • Are key resources I am interested in using the ontology? Maybe the most important question that will drastically reduce the amount of data mapping work you will have to do: Does the resource you wish to integrate already annotate to a particular ontology? For example, EBI resources will be annotating phenotype data using EFO, which in turn used HPO identifiers. If your use case demands to integrate EBI databases, it is likely a good idea to consider using HPO as the reference ontology for your phenotype data.

        Aside from aspects of your analysis, there is one more thing you should consider carefully: the open-ness of your ontology in question. As a user, you have quite a bit of power on the future trajectory of the domain, and therefore should seek to endorse and promote open standards as much as possible (for egotistic reasons as well: you don't want to have to suddenly pay for the ontologies that drive your semantic analyses). It is true that ontologies such as SNOMED have some great content, and, even more compellingly, some really great coverage. In fact, I would probably compare SNOMED not with any particular disease ontology, but with the OBO Foundry as a whole, and if you do that, it is a) cleaner, b) better integrated. But this comes at a cost. SNOMED is a commercial product - millions are being paid every year in license fees, and the more millions come, the better SNOMED will become - and the more drastic consequences will the lock-in have if one day you are forced to use SNOMED because OBO has fallen too far behind. Right now, the sum of all OBO ontologies is probably still richer and more valuable, given their use in many of the central biological databases (such as the ones hosted by the EBI) - but as SNOMED is seeping into the all aspects of genomics now (for example, it will soon be featured on OLS!) it will become increasingly important to actively promote the use of open biomedical ontologies - by contributing to them as well as by using them.

        "},{"location":"explanation/writing-good-issues/","title":"Writing Good Issues","text":"

        Based on Intro to GitHub (GO-Centric) with credit to Nomi Harris and Chris Mungall

        Writing a good ticket (or issue) is crucial to good management of a repo. In this explainer, we will discuss some good practices in writing a ticket and show examples of what not to do.

        "},{"location":"explanation/writing-good-issues/#best-practices","title":"Best Practices","text":"
        • Search existing issues before creating a new one -- maybe someone else already reported your problem
        • Give your issue a short but descriptive and actionable title
        • Describe the problem and the context and include a repeatable example.
        • Clearly state what needs to be done to close the ticket
        • Tickets should ideally be actionable units that can be closed via a PR
        • Fag relevant people with @ (e.g., @nlharris)
        • Mention related issues with # (e.g., #123)
        • use a complete URL to link to tickets in other repos
        • Make issue titles actionable
        • eg \"Ontology download page on GO website\" is non-actionable, whereas \"Fix URLs on ontology download page on GO website\" is actionable and hence better a title
        "},{"location":"explanation/writing-good-issues/#example-of-a-good-ticket","title":"Example of a good ticket","text":""},{"location":"explanation/writing-good-issues/#example-of-a-bad-ticket","title":"Example of a bad ticket","text":""},{"location":"howto/add-new-slim/","title":"Creating a new Slim (under construction)","text":""},{"location":"howto/add-new-slim/#adding-a-new-subset-also-known-as-a-slim","title":"Adding a new subset (also known as a \"slim\")","text":"

        See Daily Curator Workflow for creating branches and basic Prot\u00e9g\u00e9 instructions.

        1. In the main Prot\u00e9g\u00e9 window, click on the \"Entities\" tab. Below that, click the \"Annotation properties\" tab.

        2. Select the subset_property annotation property.

        3. Click on the \"Add sub property\" button.

        4. In the pop-up window, add the name of the new slim. The IRI will automatically populate according to settings in the user's \"New entities\" settings. Click OK.

        5. With the newly created annotation property selected, click on \"Refactor > Rename entity...\" in the menu.

        6. In the pop-up window, select the \"Show full IRI\" checkbox. The IRI will appear. Edit the IRI to fit the following standard:

        http://purl.obolibrary.org/obo/{ontology_abbreviation}#{label_of_subset}

        For example, in CL, the original IRI will appear as:

        http://purl.obolibrary.org/obo/CL_1234567

        If the subset was labeled \"kidney_slim\", the IRI should be updated to:

        http://purl.obolibrary.org/obo/cl#kidney_slim

        1. In the 'Annotations\" window, click the + next to \"Annotations\".

        2. In the pop-up window, select the rdfs:comment annotation property. Under \"Value\" enter a brief descripton for the slim. Under \"Datatype\" select xsd:string. Click OK.

        See Daily Curator Workflow section for commit, push and merge instructions.

        "},{"location":"howto/add-new-slim/#adding-a-class-term-to-a-subset-slim","title":"Adding a class (term) to a subset (slim)","text":"

        See Daily Curator Workflow for creating branches and basic Prot\u00e9g\u00e9 instructions.

        1. In the main Prot\u00e9g\u00e9 window, click on the \"Entities\" tab. Select the class that is to be added to a subset (slim).

        2. In the 'Annotations\" window, click the + next to \"Annotations\".

        3. In the pop-up window, select the in_subset annotation property.

        4. Click on the \u2018Entity IRI\u2019 tab.

        5. Search for the slim label under \"Entity IRI\". In the pop-up that appears, double-click on the desired slim. Ensure that a sub property of subset_property is selected. Click OK.

        See Daily Curator Workflow section for commit, push and merge instructions.

        "},{"location":"howto/add-taxon-restrictions/","title":"Adding taxon restrictions","text":"

        Before adding taxon restrictions, please review the types of taxon restrictions documentation.

        See Daily Workflow for creating branches and basic Prot\u00e9g\u00e9 instructions.

        1. in taxon relations are added as Subclasses.
        2. Navigate to the term for which you want to add the only in taxon restriction.
        3. In the Description window click on the +.
        4. In the pop-up window type a new relationship (e.g. 'in taxon' some Viridiplantae).
        5. The taxa available are imported ontology terms and can be browsed just like any other ontology term.

        1. never in taxon or present in taxon relations added as Annotations.
        2. Navigate to the taxon term you want to add a restriction on.
        3. Copy the IRI (you can use command U to display this on a Mac)
        4. Navigate to the term for which you want to add the never in taxon restriction.
        5. In the class annotations window, click on the +.
        6. In the left-hand panel, select never_in_taxon or present_in_taxon as appropriate.
        7. In the right-hand panel, in the IRI editor panel, paste in the IRI.
        8. Click OK to save your changes.
        9. (Note - you can achieve the same thing using the Entity IRI tab + navigating to the correct taxon but this is slow and not very practical)

        See Daily Workflow section for commit, push and merge instructions.

        "},{"location":"howto/are-two-entities-the-same/","title":"Are these two entities the same? A guide.","text":""},{"location":"howto/are-two-entities-the-same/#are-these-two-entities-the-same-a-guide","title":"Are these two entities the same? A guide.","text":"

        Disclaimer: Some of the text in this guide has been generated or refined with the help of ChatGPT (GPT 4).

        Summary: Entity mapping is the process of identifying correspondences between entities across semantic spaces. A \u201csemantic space\u201d in this context can be anything from an ontology, terminology, database or controlled vocabulary to enumerations in a data model. Entities are strings that identify/represent a real-world concept or instance in that space. Many such entities refer to the exact same, or similar, real world concept or instance 1,2. To integrate data from disparate semantic spaces, we need to develop maps that connect entities. The Simple Standard for Sharing Ontological Mappings (SSSOM) has been developed to support that process.

        Most semantic spaces (such as scientific databases or clinical terminologies) do not commit to any formal semantics (such as, say, an OWL Ontology). This makes the curation of mappings a shaky, ambiguous afair. Concepts with the same labels can refer two different real world concepts. Concepts with entirely different labels and taxonomic context can refer to the same real world concept. Here, we explore conceptually how to think of same-ness, leading to a practical protocol for mapping authors and reviewers.

        "},{"location":"howto/are-two-entities-the-same/#preliminary-reading","title":"Preliminary reading","text":"
        • A basic tutorial for the creation of SSSOM mapping files.
        • A guide for how to think of mapping predicates (exactMatch, broadMatch).
        "},{"location":"howto/are-two-entities-the-same/#a-practical-step-by-step-protocol-for-determining-a-mapping","title":"A practical step-by-step protocol for determining a mapping","text":"

        The following steps are designed to give you a basic framework for designing your own, use-case specific, mapping protocol. The basic steps are:

        1. Understand the underlying conceptual models of the semantic spaces
        2. Document the use case for the mapping
        3. Document the basic curation rules for the mapping
        4. Gathering evidence for the mapping

        "},{"location":"howto/are-two-entities-the-same/#understand-the-underlying-conceptual-models-of-the-semantic-spaces","title":"Understand the underlying conceptual models of the semantic spaces","text":"

        Before we can even start with the mapping process, we need to establish what the source is all about, and what the conceptual model underpins it. This may or may not be easy - but this step should not be ommitted.

        "},{"location":"howto/are-two-entities-the-same/#checklist-for-determining-the-conceptual-model-of-a-semantic-space","title":"Checklist for determining the conceptual model of a semantic space","text":"
        1. What is the domain of the semantic space? (e.g. Clinical, Medical Research, Environment)
        2. What is the organising semantic framework? Is it an OWL ontology (set semantics)? A SKOS taxonomy (broader/narrow categories)? A database without a specific semantic framework underpinning it?
        3. What are the primary organising relationships (POR)? Primary organising relationships connect terms within the semantic spaces, like diseases to diseases, chemicals to chemicals etc, usually into some form of a graph. For an ontology, this could be for example rdfs:subClassOf, or BFO:0000050 (part of), like in the case of Uberon. For a taxonomy, the primary organising relationship could be skos:broader / skos:narrower. For a database, there could be no PORs at all, or relationships like \"isomer of\", \"functional group of\" etc, which are usually columns in a database table. In some cases, the PORs serve a function more than they reflect a representation of knowledge. For example, hierarchical relationships in ICD10 have to be mono-hierarchical (single parents) to serve billing and statistical purposes, which means that a lot of biological ambiguities will not be reflected at all (missing bioligically meaningful hierarchical relationships).
        4. What are the primary categories represented by the semantic space, e.g. one or more of diseases, phenotypes, genes, chemical entities, biological processes?
        5. What is the conceptual model underpinning the primary categories? This is the hardest part, because we very rarely have a document or schema (ontology!) that explicitly defines the conceptual model. For example, one ontology could implement a biomedical conceptual model of disease, which views diseases as primarily resulting from biological factors. It posits that diseases are caused by specific, identifiable agents like viruses, bacteria, genetic mutations, or physiological imbalances. Or an ontology could implement a biopsychosocial model of disease which views disease as a result of a complex interplay between biological, psychological, and social factors. Chemical entities can be defined and organised using a Structural Hierarchical Model (hierarchically organised from atomic to molecular to macromolecular levels), or a Behavioral/Functional Model: (hierarchically organised based on their behavior or function).
        "},{"location":"howto/are-two-entities-the-same/#example-for-determining-the-conceptual-model-of-a-semantic-space","title":"Example for determining the conceptual model of a semantic space","text":"

        In our example, we are mapping ICD10CM to Mondo.

        1. domain:
          • MONDO: MONDO is an ontology focused on modelling diseases, with a special focus on rare diseases.
          • ICD10CM: ICD-10-CM is a comprehensive system that goes beyond just coding diseases. In addition to diseases, ICD-10-CM includes codes for a variety of other features, such as Symptoms, Signs, and Abnormal Clinical and Laboratory Findings, Injuries and External Causes and Factors Influencing Health Status and Contact with Health Services.
        2. organising semantic framework:
          • MONDO: MONDO is an OWL ontology.
          • ICD10CM: ICD10 can safely be classified as a taxonomy, but does not commit to a specfic standard. The \"primary structure\" of ICD-10-CM, which refers to its hierarchical organization of codes from broad categories to specific diseases or conditions, can largely be expressed as a SKOS vocabulary. The basic hierarchical relationships (broader/narrower) align well with SKOS's skos:broader and skos:narrower properties. Likewise, preferred labels for terms can be represented using skos:prefLabel, while alternative labels or synonyms can be captured using skos:altLabel. However, while the main hierarchical structure of ICD-10-CM can be represented in SKOS, there are nuances and additional information in ICD-10-CM that might be challenging to represent losslessly in a simple SKOS model, such as Inclusion and Exclusion Notes and Complex (non-hierarchical) Relationships.
        3. primary organising relationships:
          • MONDO: rdfs:subClassOf
          • ICD10CM: can be expressed as skos:narrower, skos:broader, see considerations above (\"organising semantic framework\").
        4. primary categories:
          • MONDO: diseases, disease characteristics, injuries, susceptibilities
          • ICD10CM: diseases, signs and symptoms, injuries, pregancy related codes, and more (we only really care about diseases here)
        5. conceptual model: A disease model captures the essential, defining features of diseases, including etiology and phenotypic presentation. As these are rarely explicitly defined, the disease model underlying a resource must often be determined through elucidation, term analysis and literature review.
          • MONDO: A disease is a disposition to undergo pathological processes that exists in an organism because of one or more disorders in that organism.
          • ICD10CM: The International Classification of Diseases (ICD) serves as a foundational tool for health statistics, clinical care, and research, but it doesn't provide a singular, concise definition of \"disease\" in its introduction or general guidelines. Instead, the ICD system broadly encompasses a range of health-related conditions, and its structure reflects various ways in which the human body and mind can deviate from a perceived norm or experience dysfunction.

        A small part of a disease model could look like this:

        While this is vastly incomplete, you can gain certain important pieces of information:

        1. susceptibilities, injuries and diseases are mutually disjoint (different branches). So a disease model that subsumes an \"injury\" or a \"susceptibility to disease\" under the concept of \"disease\" would, technically speaking, be incompatible with that disease model.
        2. A \"disease grouping\" is considered a \"disease\" - many (if not most) conceptual models clearly separate the two.
        3. \"hereditary diseases by site\" are classified both under \"grouping by site\" and \"hereditary disease\". This means the conceptual model is polyhierarchical. Many disease models do not permit polyhierarchies in their \"primary organising relationships\".

        "},{"location":"howto/are-two-entities-the-same/#document-the-use-case-of-the-mapping","title":"Document the use case of the mapping","text":"

        Before proceeding, you should document how you want to use the mapping. The mapping use case will determine certain factors like:

        • which mapping predicates to consider,
        • whether or not to \"conflate\",
        • how far \"uphill\" or \"broad\" to map and
        • which level of evidence you consider acceptable.

        Note that one goal of SSSOM is to increase our ability for \"cross-purpose reuse\" of mappings, which means that no matter what the use case, the mappings should never be \"wrong\" - but \"conflation\", which we will hear more about in a bit, is a natural part of mapping which will always cause mappings to be to some degree imprecise (imperfect).

        "},{"location":"howto/are-two-entities-the-same/#example-use-case","title":"Example use case","text":"

        In our example, we are mapping ICD10CM to Mondo for the purpose of data integration, in particular knowledge graph merging.

        One of the features of this use case is that we wish the target KG to have a specific feature: for every disease in the data, we want one, and only one, node in the graph. Therefore, carefully curated exact matches are our primary focus. All nodes should be represented by MONDO ids. On the flipside, some diseases in ICD 10 are too granular so we wish to map them to the next best disease in Mondo as a broad match. We have no analytic use for narrow and close matches because we cannot clearly deal with them in the knowledge graph, so we do not curate them.

        Closely related to this knowledge graph integration use case is the need for counting. In order to be able to count precisely across resources, we need precise mappings to not overcount. For example, given a set of resources that represent more than 10,000 rare diseases, only 333 were represented by all:

        "},{"location":"howto/are-two-entities-the-same/#document-the-basic-curation-rules-for-the-mapping","title":"Document the basic curation rules for the mapping","text":"

        Once you have determined the conceptual models of the subject and object source (or a good approximation of it), you will have to lay some ground (curation) rules of the mappings. These ground rules are going to be dictated by your target use case.

        "},{"location":"howto/are-two-entities-the-same/#checklist-for-defining-the-basic-curation-rules-for-the-mapping","title":"Checklist for defining the basic curation rules for the mapping","text":"
        1. Document the primary categories you seek to map to each other.
        2. If the primary categories are different across subject and object source, e.g. you want to map genes in one resources to protein-products of genes in another, you document a conflation decision. \"Conflation\" is the conscious act of pretending two things are the same even if they commit to a different conceptual model (see checklist above)
        3. If the primary categories are the same across subject and object source, determine if the conceptual model is the same. If it is, fine, if not, document, again, if you wish to \"conflate\" these for the sake of this mapping (document in this sense means: write it down and add it to the mapping set description or documentation later). For example, if you map (1) analogous entities across different species (e.g. human diseases to animal diseases), or (2) chemical entities from a structural hierarchical model to ones defined in terms of function, or (3) diseases from a phenomenologically driven perspective to ones that are defined from a etiological perspective, you write it down. (Note that for cross-species mappings, you do not necessarily have to conflate, as we developed a specialised cross-species mapping vocabulary).
        4. Determine the mapping predicates. If you decided to conflate, pick the set of standard mapping predicates you wish to curate. Usually, this should be mapping relations from the SKOS vocabulary. If you decided not to conflate, pick the appropriate mapping relationship from another vocabulary, such as SEMAPV, or even the Relation Ontology.
        5. Document the minimal levels of evidence required for each mapping. This step is discussed in detail, separately, in the next section.
        "},{"location":"howto/are-two-entities-the-same/#example-for-documenting-the-basic-curation-rules-for-the-mapping","title":"Example for documenting the basic curation rules for the mapping","text":"
        1. Which primary categories? In this case we only want to map diseases in ICD10CM to diseases in Mondo, and ignore everything else. However, we recognise that occassionally, a term classified in ICD10CM as a \"sign or symptom\" may appear in Mondo as a disease, so we keep our minds open about that possibility.
        2. Conflation accross different categories? We are open to the possibility (based on our experience with disease mappings) that some conditions are represented in ICD 10 as signs or symptoms, while Mondo represents them as diseases. This is a murky area of disease data integration, so we choose to conflate diseases (disorders), sign and symptoms (clinical findings). SNOMED views, for example, disorders as subclasses for findings that are always abnormal. To support our use case (integrating all disease knowledge in a knowledge graph), we decide it is better to conflate the two. Not conflating would mean missing out on a potentially huge number of interesting associations in the data.
        3. Conflation within the same primary category. ICD 10 does not explicitly commit to a specific definition or model of disease, and even through literature review it is hard to pin down what they mean by a disease (e.g. phenomenological vs etiological viewpoints). We accept that ambiguity and explicitly acknowledge that we conflate the disease models of ICD10 and Mondo for the sake of this mapping (same arguments as above).
        4. Mapping predicates. Due to our conflation decisions we determine that the SKOS vocabulary is appropriate to represent our mapping predicates. (Note: if we had decided not to conflated, it would not have automatically meant that we could not map at all: we would, however, have to resort to much less useful mapping relations like skos:relatedMatch and skos:closeMatch, which are considerably harder, but not impossible, to use by data scientists. These mapping predicates are entirely unsuited for our use case, as the primary goal is \"providing one node in the graph per medical condition\")
        5. Minimal levels of evidence? We decide that for our purposes, noise is acceptable and we trust the same label = same disease assumption (while this, as we will see later is not always quite right). If the the label is not the same, we also trust a combination of a synonym exact match combined with a threshold on lexical similarity of 90% (levenshtein). If neither can be achieved, we require either a combination of proxy mapping with a non-domain-expert review (biocurator) or a full expert review (see next section).
        "},{"location":"howto/are-two-entities-the-same/#conflation-on-primary-category-phenotypic-abnormality-vs-clinical-finding","title":"Conflation on primary category, phenotypic abnormality vs clinical finding","text":"

        SNOMED cleanly separates between \"clinical findings\" and \"disorder\". While the SNOMED defines findings as \"normal or abnormal observations, judgments, or assessments of patients\", and disorders as \"always and necessarily an abnormal clinical state\". Strictly speaking, the presence of a finding term like SCTID:300444006 (Large kidney (finding)) does not imply any kind of level of abnormality, while all the corresponding term in HPO, HP:0000105 (Enlarged kidney) does. Now this is clearly a consequence of the weird way \"abnormal\" is defined in the world. Sometimes it is intended to mean \"outside the normal range\", and sometimes it is taken to mean \"deviating from the mean\". These are clearly different. None-the-less, the fact SNOMED does not imply \"abnormality\" means that we are conflating when we map the two.

        "},{"location":"howto/are-two-entities-the-same/#the-difficulty-of-deciding-what-level-of-confidence-is-enough","title":"The difficulty of deciding what level of confidence is \"enough\"","text":"

        MONDO:0000022 (Nocturnal Enuresis) is currently defined as \"urination during sleep\", and classified under psychiatric disorders.

        ICD10CM:N39.44 (Nocturnal enuresis) is classified as an urological disease (organic, rather than psychiatric, disorder), where a urinary incontinence not due to a substance or known physiological condition is explicitly excluded.

        Regardless of whether we believe that Mondo is misclassifying the disease (it should also be a urinary disease), either we are interpreting here the exact same disease/syndrome differently between Mondo and ICD10 (assigning different etiologies), or two etiologically different diseases have been assigned the exact same name.

        Again, we have a few options here. (1) we decide we dont care about the difference. A rough mapping seems to be good enough, and most our applications (data aggregation, analysis) wont care if both concepts are merged into the same. If this is generally the case for diseases with the exact same or very similary names, we just decide that the confidence given to us by \"same name\" is 99 or even 100%. (2) we decide they are different. In this case, we must have every single mapping reviewed by a clinical specialist, unless we have access to all properties of the conceptual model (full etiology, phenotypic profile, etc).

        "},{"location":"howto/are-two-entities-the-same/#gathering-evidence-for-a-mapping","title":"Gathering evidence for a mapping","text":"

        Only after you understood the conceptual model underlying the subject and object sources you seek to map, and defining the basic curation rules for the mapping, are you ready to gather evidence for and against the mapping. The goal of evidence gathering is to increase confidence in a mapping. A single piece of evidence is called a justification. The confidence gained by multiple justifications can add up or be mutually exclusive. For example: a lexical match and match on a shared mapping are cumulative pieces of evidence. The confidence provided by multiple manual curators does not add up (usually the maximum or mean confidence is used). Every mapping project defines its own confidence levels.

        Remember: You can never determine the correctness of a mapping. This is a direct consequence of our inability to assign a semantic space with an explicit, fully defined semantic model. You can only gather evidence for or against a mapping under the premises defined by your curation rules, and then, depending on your particular use case, decide which level of evidence is sufficient. \"Correctness\" in this context means \"under the curation rules defined for the mapping (previous section), the subject and object of the mappings relate to the same \"conceptual entity\" (disease, chemical entity) in the way specified by the mapping predicate\" (e.g. we can use skos:exactMatch if both subject and entity correspond exactly to the same concept of \"atom\" under the curation rules we defined).

        "},{"location":"howto/are-two-entities-the-same/#checklist-levels-of-evidence","title":"Checklist: Levels of Evidence","text":"

        This checklist assumes a specific mapping candidate {s,p,o,c}, with s the subject, p the mapping predicate, o the object and c the confidence, initially 0, as a starting point. The goal of the checklist is to increase the confidence of the mapping to an acceptable degree. The required level of confidence should be set by the mapping authors.

        Instead of giving some arbitrary numbers for confidence, we just distinguish between LOW, MODERATE and HIGH confidence. Average confidence gained is a rough metric, that means: \"based on our experience, this justification leads to a HIGH, MODERATE, or LOW increase in confidence. A HIGH level of confidence could be, depending on the context, something between 0.8 and 1.0.

        1. We start with a confidence of 0.
        2. Sameness of primary label
          • Rationale: the primary label of an entity is largely unique. If s and o belong to the same primary category (e.g. gene, disease, chemical entity), the risk of Homonomy is low.
          • Level of confidence gained on average: HIGH
          • Preprocessing: Preprocessing may or may not affect the level of confidence.
          • Cost: VERY LOW (fast, standard algorithms)
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        3. Sameness of synonym
          • Rationale: synonyms are less trustworthy than primary labels for driving mapping decision, but if the precision (exact, broad, narrow) is known, are still valuable indicators.
          • Level of confidence gained on average: MEDIUM to HIGH (this depends on wether the source carefully distinguishes exact from non-exact synonyms)
          • Preprocessing: Preprocessing may or may not affect the level of confidence.
          • Cost: VERY LOW (fast, standard algorithms)
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        4. Proxy mapping (s and o share a mapping to the same third entity x)
          • Rationale: if the subject and object sources have already been mapped by a trustworthy mapping provider to the same third resource, we can usually avoid redoing the mapping.
          • Level of confidence gained on average: MEDIUM to HIGH (this depends on how much trust the mapping author has in the sources of the mappings)
          • Cost: VERY LOW (fast, standard algorithms)
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        5. Similarity of primary label: using a number of measures determine if the two primary labels are lexically similar, for example by having a low edit distance, or one label is contained in the other (broad/narrow match).
          • Level of confidence gained on average: LOW (depends on the degree of similarity)
          • Preprocessing: Preprocessing may or may not affect the level of confidence.
          • Cost: VERY LOW (fast, standard algorithms)
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        6. Similarity of synonym
          • Level of confidence gained on average: LOW (this depends on wether the source carefully distinguishes exact from non-exact synonyms, and on the degree of the similarity)
          • Preprocessing: Preprocessing may or may not affect the level of confidence.
          • Cost: VERY LOW (fast, standard algorithms)
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        7. Hierarchical comparison of the primary organising relationship structure:
          • Method:
            • Are s and o the same kind* of entity? (High level branch analysis)
            • Do s and o have the same/similar set of ancestors? (requires all ancestors to be mapped)
            • Do s and o have the same/similar set of decendants? (requires all descendants to be mapped)
            • Advanced: s and o are linked to similar feature sets (phenotypes, average weight, number of carbon atoms, etc). Shared references to the same scientific publications could count here as well.
          • Level of confidence gained on average: MEDIUM
          • Note: the primary organising relationship structures of two semantic spaces rarely exactly correspond to each other - a failing hierarchical comparison is not a strong evidence against a mapping.
          • Cost: MEDIUM to HIGH (this check can be automated to some degree, but due to the cost of needing ancestors mapped already, is probably executed better by a human)
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        8. Domain expert review of definitions (comparing only the textual definitions provided by both sources and determining whether they refer to the same concept under the mapping curation rules defined). Note that this is only possible if both resources in question provide \"formal definitions\" - definitions that fully define the concept, rather than merely \"describe\" it.
          • Level of confidence gained on overage: MEDIUM to HIGH (this depends on the domain expertise and the semantic engineering expertise of the mapping author)
          • Preprocessing: Avoid (could affect interpretation).
          • Cost: HIGH (Expert curation is the highest level of cost and should only be used if no other justification or combination of justifications can be employed to attain the target level of confidence).
          • Is the acquired confidence sufficient at this stage? If yes, move to the next mapping canidate. If no, move on.
        9. Full domain expert review (expert aggregates evidence from within the resource (hierarchial structures, logical axioms, definitions, etc) and outside to determine if the subject and the object entity refer to the same concept). This may involve reviewing papers, links to websites, databases with additional information about the entities, and other sources.
          • Level of confidence gained on overage: MEDIUM to HIGH (this depends on the domain expertise and the semantic engineering expertise of the mapping author)
          • Preprocessing: Avoid (could affect interpretation).
          • Cost: VERY HIGH (Expert curation is the highest level of cost and should only be used if no other justification or combination of justifications can be employed to attain the target level of confidence).
        "},{"location":"howto/are-two-entities-the-same/#examples-for-levels-of-evidence","title":"Examples for levels of evidence","text":"
        • To determine if two rare genetic diseases as defined by OMIM and Orphanet are same is difficult because we often do not have exactly the same name documented. To avoid the costly review of a rare disease expert (in the absence of proxy mappings), we can leverage disease to gene assocations to determine very similar diseases according to their genotypic profile. We can furthermore bolster our evidence by comparing the phenotypic profiles. Techniques for doing so range from simple Jaccard (overlap of the associated phenotypic profile of both diseases) to complex methods such as phenodigm that take the ontology semantics into account, or even modern LLM embeddings.
        "},{"location":"howto/are-two-entities-the-same/#summary","title":"Summary","text":"

        You can never determine if two entities are truly the same. You can only collect evidence for and against a mapping under a specific set of curation rules. To do so, you first determine the conceptual model of the semantic spaces defining the entities you seek to map. Then you define, depending on your use case, your specific curation rules. These rules determine which mapping predicates you use to curate, and which level of evidence you require for asserting a specific entity mapping. While mappings are, therefore, inherently connected to a use case, the goal of SSSOM and other mapping standardisation efforts is to make mappings usable across use cases.

        "},{"location":"howto/are-two-entities-the-same/#out-of-context-a-reminder-of-how-mapping-predicates-work","title":"Out of context: a reminder of how mapping predicates work","text":""},{"location":"howto/change-files-pull-request/","title":"How to change files in an existing pull request","text":""},{"location":"howto/change-files-pull-request/#using-github","title":"Using GitHub","text":"

        Warning: You should only use this method if the files you are editing are reasonably small (less than 1 MB).

        This method only works if the file you want to edit has already been editing as part of the pull request.

        • Go to the pull request on GitHub, and click on the \"Files Changed\" tab up top
        • Find the file you want to edit in the pull request.
        • On the right, click on on the three ..., and then \"Edit file\".

        If this option is greyed out, it means that - you don't have edit rights on the repository - the edit was made from a different fork, and the person that created the pull request did not activate the \"Allow maintainers to make edits\" option when submitting the PR - the pull request has already been merged

        • Do the edits, and then commit changes, usually to the same branch
        "},{"location":"howto/change-files-pull-request/#using-github-desktop","title":"Using GitHub Desktop","text":"
        1. On the pull request in GitHub, click the copy button next to the branch name (see example below)
        1. In GitHub Desktop, click the branch switcher button and paste in branch name (or you can type it in).

        2. Now you are on the branch, you can open the files to be edited and make your intended changes and push via the usual workflow.

        "},{"location":"howto/change-files-pull-request/#if-the-branch-is-on-a-fork","title":"If the branch is on a fork","text":"
        1. If a user forked the repository and created a branch, you can find that branch by going to the branch switcher button in GitHub Desktop, click on Pull Requests (next to Branches) and looking for that pull request

        2. Select that pull request and edit the appropriate files as needed and push via the usual workflow.

        "},{"location":"howto/clone-mondo-repo/","title":"Clone a repository","text":""},{"location":"howto/clone-mondo-repo/#cloning-a-repo","title":"Cloning a repo","text":"

        Prerequisite: Install Github Desktop Github Desktop can be downloaded here

        For the purpose of going through this how-to guide, we will use Mondo as an example. However, all obo onotlogies can be cloned in a similar way.

        1. Open the GitHub repository where the ontology you want to clone lives, in this case, Mondo GitHub repository
        2. Click Code

        1. Click 'Open with GitHub Desktop'

        1. You will be given an option as to where to save the repository. I have a folder called 'git' where I save all of my local repos.
        2. This will open GitHub Desktop and the repo should start downloading. This could take some time depending on the size of the repository.
        "},{"location":"howto/clone-mondo-repo/#open-the-ontology-in-protege","title":"Open the Ontology in Protege","text":"
        1. Open Protege
        2. Go to: File -> Open
        3. Navigate to mondo/src/ontology/mondo-edit.obo and open this file in Protege Note: mondo can be replaced with any ontology that is setup using the ODK as their architecture should be the same.

        If this all works okay, you are all set to start editing!

        "},{"location":"howto/create-new-term/","title":"Creating a New Ontology Term in Protege","text":"
        1. To create a new term, the 'Asserted view' must be active (not the 'Inferred view').

        2. In the Class hierarchy window, click on the 'Add subclass' button at the upper left of the window.

        1. A pop-up window will appear asking you to enter the Name of the new term. When you enter the term name, you will see your ID automatically populate the IRI box. Once you have entered the term, click 'OK' to save the new term. You will see it appear in the class hierarchy.

        1. In the annotation window add:
        2. Definition
          1. Click on the + next to Annotations
          2. Select defintion (if there are multiple, you should use IAO:0000115)
          3. Add the textual definition in the pop-up box.
          4. Click OK.

         2. Add Definition References\n    1. Click on the circle with the \u2018@\u2019 in it next to definition and in the resulting pop-up click on the ```+``` to add a new ref, making sure they are properly formatted with a database abbreviation followed by a colon, followed by the text string or ID. Examples: ```PMID:27450630```.\n    2. Click OK.\n    3. Add each definition reference separately by clicking on the ```+``` sign.\n

        3. Add synonyms and dbxrefs following the same procedure if they are required for the term.

        1. Add appropriate logical axioms in the Description by clicking the + sign in the appropriate section (usually SubClass Of) and typing it in, using Tab to autocomplete terms.

        Converting to Equivalent To axioms:\nIf you want to convert your SubClassOf axioms to EquivalentTo axioms, you can select the appropriate rows and right click, selecting \"Convert selected rows to defined class\"\n
        1. In some cases, logical axioms reuiqre external ontologies (eg in the above example, the newly added CL term has_soma_location in the cerebellar cortex which is an uberon term), it might be necessary to import the term in. For instructions on how to do this, please see the import managment section of your local ontology documentation (an example of that in CL can be found here: https://obophenotype.github.io/cell-ontology/odk-workflows/UpdateImports/)

        2. When you have finished adding the term, run the reasoner to ensure that nothing is problematic with the axioms you have added (if there is an issue, you will see it being asserted under owl:Nothing)

        3. Save the file on protege and review the changes you have made in your Github Desktop (or use git diff in your terminal if you do not use Github Desktop)

        4. See Daily Workflow section for commit, push and merge instructions.

        "},{"location":"howto/create-ontology-from-scratch/","title":"How to create an OBO ontology from scratch","text":"

        Editors:

        • Nicolas Matentzoglu (@matentzn)
        • Sabrina Toro (@sabrinatoro)

        Summary:

        This is a guide to build an OBO ontology from scratch. We will focus on the kind of thought processes you want to go through, and providing the following:

        • Reasons for NOT building an ontology
        • A basic recipe for getting started
        • An overview of different starting points on your journey to building an ontology
        • A guide for deciding what kind of ontology you want to build
        • An example walk-through of the process.

        "},{"location":"howto/create-ontology-from-scratch/#minimal-conditions-for-building-an-ontology","title":"Minimal conditions for building an ontology","text":"

        Before reading on, there are three simple rules for when NOT to build an ontology everyone interested in ontologies should master, like a mantra:

        Do not build a new ontology if:

        1. one in scope already exists (none-in-scope condition).
        2. something simpler than a full-fledged OWL ontology can do the job (something-simpler-works condition).
        3. there is not at least one glass-clear use case written down which could be addressed by the existence of the ontology (killer-use-case condition).

        "},{"location":"howto/create-ontology-from-scratch/#none-in-scope-condition","title":"None-in-scope condition","text":"

        Scope is one of the hardest and most debated subjects in the OBO Foundry operation calls. There are essentially two aspects to scope:

        1. The entities you intended to model belong to some specific biological categories. For example phenotype, disease, anatomical entity, assay, environmental exposure, biological process, chemical entity. Before setting out to build an ontology, you should get a rough sense of what kind of entities you need to describe your domain. However, this is an iterative process and more entities will be revealed later on.
        2. The subject domain you intend to model. For example, you may want to provide an ontology to describe the domain of Alzheimer's Disease, which will need many different kinds of biological entities (like anatomical entity and disease classes).

        As a rule of thumb, you should NOT create a term if another OBO ontology has a branch of for entities of the same kind. For example, if you have to add terms for assays, you should work with the Ontology for Biomedical Investigations to add these to their assay branch.

        Remember, the vision of OBO is to build a semantically coherent ontology for all of biology, and the individual ontologies in the OBO Foundry should be considered \"modules\" of this super ontology. You will find that while collaboration is always hard the only way for our community to be sustainable and compete with commercial solutions is to take that hard route and work together.

        "},{"location":"howto/create-ontology-from-scratch/#something-simpler-works-condition","title":"Something-simpler-works condition","text":"

        There are many kinds of semantic artefacts that can work for your use case:

        1. Controlled vocabularies: Creating identifiers for concepts in your domain and without too much concern for logical reasoning. Some examples can be are Linked Open Data Vocabularies (LOV) or schema.org vocabularies. Sometimes a table of identifiers in an SQL database is enough.
        2. Thesauri: Describe the synonyms used in your domain in a standardised fashion.
        3. Taxonomies: Create a hierarchical categorisations for concepts in your domain, without any specific regards for semantics. You just create a hierarchy that \"makes some sense\" for your use case. Examples: ICD10, United Nations Standard Products and Services Code (UNSPSC).
        4. Semantic data models: If you need to define how terms in your database should be constrained in a semantic way (similar to a database schema), then Shape languages like SHEX or SHACL may be much more suitable for your use case. See LinkML tutorials to get a sense of this: you will build a semantic data model in Yaml which can then be exported to SHACL, OWL or JSON Schema (great tutorial, useful to do no matter what).
        5. Ontologies: Sets of logical axioms. If you require formal reasoning (and only then!) does it make sense to jump in the deep pit of ontology engineering. This is, by far, the hardest to build of the bunch. You will have to wrestle with Logic, Open World Assumption and many more arcane subjects.

        Think of it in terms of cost. Building a simple vocabulary with minimal axiomatisation is 10x cheaper than building a full fledged domain model in OWL, and helps solving your use case just the same. Do not start building an ontology unless you have some understanding of these alternatives first.

        "},{"location":"howto/create-ontology-from-scratch/#killer-use-case-condition","title":"Killer-use-case condition","text":"

        Do not build an ontology because someone tells you to or because you \"think it might be useful\". Write out a proper use case description, for example in the form of an agile user story, convince two or three colleagues this is worthwhile and only then get to work. Many ontologies are created for very vague use cases, and not only do they cost you time to build, they also cost the rest of the community time - time it takes them to figure out that they do not want to use your ontology. Often, someone you trust tells you to build one and you believe they know what they are doing - do not do that. Question the use of building the ontology until you are convinced it is the right thing to do. If you do not care about reasoning (either for validation or for your application), do not build an ontology.

        "},{"location":"howto/create-ontology-from-scratch/#basic-recipe-to-start-building-an-ontology","title":"Basic recipe to start building an ontology","text":"

        Depending on your specific starting points, the way you start will be slightly different, but some common principles apply.

        1. Write down the use cases for the ontology (see above). This will determine certain design decisions later on. These should be concrete, like: controlled vocabulary for named entity recognition, logical model of a domain, auto-classification of data.
        2. Make a table of all similar ontologies that exist, within and outside OBO (this requires research, and is an essential part of the process). Document exactly in what way they are different from your use case, and why you need to build a new one (see none-in-scope condition above).
        3. Determine whether you have something to start from. Often, you will have a database with entities you may wish to turn into classes in your ontology. See starting points below.
        4. Gather your tools. You need to think about tools for at least two kinds of workflows to start with:
        5. Curation workflows: How will you edit your ontology? Some simple ontologies are edited using tables that link to logical templates. Others are edited primarily with Protege.
        6. Continuous integration and release workflows: How will you import terms from other ontologies? How will you ensure the quality of you ontology moving forward?
        7. Decide on the Ontology ID (important, do not skip). Changing this later can be extremely costly. Refer to the OBO ID policy for details. An ID should be short and unique.
        8. Create a basic set-up for managing your workflows. This comprises (usually) three aspects (you may wish to try and use the Ontology Development Kit - it does exactly that):
        9. Make a GitHub repository.
        10. Add your editors files (owl, tsv, whatever you decided to use) to that repository.
        11. Implement some workflow system, i.e. some way to run commands like release or test, as you will run these repeatedly. A typical system to achieve this is make, and many projects choose to encode their workflows as make targets (ODK, OBI Makfile).
        12. Determine the metadata and logical patterns you wish to employ for your curation. Here it is important that you determine what kind of an ontology you want to build.

        Note: Later in the process, you also want to think about the following:

        • Think about how to manage your ontology project: Which roles you need, and how you manage community contributions.

        "},{"location":"howto/create-ontology-from-scratch/#starting-points","title":"Starting points","text":"

        There are many different starting points for building an ontology:

        • We have a database or a dataset and want to build an ontology that covers entities in that database. As a variation, you have two or more databases that you need to integrate.
        • We already have a basic ontology in our domain (a cell ontology, an anatomy ontology), but need to build an extension (e.g. a species specific extension to an existing cross-species ontology).
        • We have controlled vocabulary or a list of standard or commonly used terms for a domain and want to formalise them in an ontology for interoperability and machine-readability, with versioning support to manage evolution. Sometimes, we may even wish to simply using ontology infrastructure (tools and best practices) to maintain a quite informal vocabulary structure.
        • There are existing ontologies that are, however, not quite fit for purpose (even if they should be) and there's no way to make any of them right, so I have to create Yet Another Variant.
        • We have a large, hierarchical enumeration in a datamodel that pulls terms from many ontologies.
        • We need to build a completely new ontology for a domain that currently does not even have a controlled vocabulary. This case almost never happens nowadays. In this case, all domain knowledge (concepts and their relations) is somewhere in the heads of the experts.

        "},{"location":"howto/create-ontology-from-scratch/#what-kind-of-ontology-do-you-need","title":"What kind of ontology do you need?","text":"

        There are two fundamentally different kinds of ontologies which need to be distinguished:

        1. Project ontologies (sometimes referred to as application ontologies) are ontologies that are developed to fulfil a specific use case, like:
        2. Grouping data in your project
        3. Indexing search engines or your organisation
        4. Informing Natural Language Processing applications
        5. Populating the biocuration interface your organisation provides to enable curators to annotate data
        6. Domain ontologies are ontologies which seek to model a domain of discourse. In particular they:
        7. Reflect scientific consensus and are therefore social and collaborative enterprises subject to change
        8. Are build with re-use in mind:
          • They re-use terms from other domain ontologies
          • They provide terms intended for re-use by other ontologies
          • They work with other ontologies on implementing consistent logical patterns that apply across all domain ontologies in the community.
        9. Are logically consistent with all ontologies they depend on, refer to, import.

        Some things to consider:

        • It is extremely hard to build domain ontologies. Do not try to do that without a proper sustainability plan (i.e. considerable resources over multiple years).
        • Project ontologies are not bad domain ontologies. Project ontologies can be build according to the same standards as domain ontologies. While controversial, the OBO Foundry is currently (March 2022) debating whether project ontologies are admissible to the OBO ontology library.
        • Project ontologies can have huge impact. One of the most impactful ontologies in the biomedical world is the Experimental Factor Ontology (EFO) - a massive project ontology used for many applications from knowledge graph integration to biocuration.
        • Project ontologies are allowed to change the semantics of imported ontologies, for example by adding additional axioms or even removing some - anything necessary to achieve the use case!
        • Domain ontologies (in the OBO world) are not allowed to change semantics of imported ontologies.
        • Project ontologies can import terms from domain ontologies, and coin their own terms where necessary. This can be a good option if resources are scarce, and there is not enough time for consensus building with the community or the often lengthy contribution workflows. \"I just need some terms\" usually points to \"I need a project ontology\".
        • Domain ontologies seek to model a domain exhaustively: any concept that \"belongs\" to that domain is a strong candidate for a term.

        It is imperative that it is clear which of the two you are building. Project ontologies sold as domain ontologies are a very common practice and they cause a lot of harm for open biomedical data integration.

        "},{"location":"howto/create-ontology-from-scratch/#example-building-vertebrate-breed-ontology","title":"Example: Building Vertebrate Breed Ontology","text":"

        We will re-iterate some of the steps taken to develop the Vertebrate Breed Ontology. At the time of this writing, the VBO is still in early stages, but it nicely illustrates all the points above.

        "},{"location":"howto/create-ontology-from-scratch/#use-case","title":"Use case","text":"

        See here. Initial interactions with the OMIA team further determined more long term goals such as phenotypic similarity and reasoning.

        "},{"location":"howto/create-ontology-from-scratch/#similar-ontologies","title":"Similar ontologies","text":"

        Similar ontologies. While there is no ontology OBO ontology related to breeds, the Livestock Breed Ontology (LBO) served as an inspiration (much different scale). NCBI taxonomy is a more general ontology about existing taxa as they occur in the wild.

        "},{"location":"howto/create-ontology-from-scratch/#starting-point","title":"Starting point","text":"

        Our starting point was the raw OMIA data.

        • We got a list of breeds from DAD-IS, which includes name of the breed, transboundary name, species, country, and more
        • We first had to understand the data and how the different pieces of data relate to each other.
        • Some breed names are the same, but refer to either different species and/or different countries
        • Several breeds share a common \"transboundary name\", which represent the original breed from which they come from
        • We needed to determine what a single concept / an indentifiable term would be
        • In order to define a single breed, we needed to include the name of the breed, the transboundary name (when applicable), the species, and the country
        • We needed to understand the metadata and how each concepts relate to each other
        • 'breed' is an instance of 'species', therefore 'species' should be the parent term of 'breeds' (using a is_a relation)
        • when applicable, 'transboundary' should be the parent term of 'breeds'
        • Note about the concept of \"species\": is \"species\" equivalent to the NCBI Taxon representing \"species\"? Design decision: Since species represents the same concept as \u2018species\u2019 in NCBI, the ontology should be built \u2018on top of\u2019 NCBI terms to avoid confusion of concepts and to avoid conflation of terms with the same concept

        Warnings based on our experience:

        • Always retain links to original source ids (encoding problems, update problems)
        • Always add provenance to as much information as you can (where do labels come from?)
        "},{"location":"howto/create-ontology-from-scratch/#gather-your-tools","title":"Gather your tools","text":"

        For us this was using Google Sheets, ROBOT & ODK.

        "},{"location":"howto/create-ontology-from-scratch/#the-ontology-id","title":"The Ontology ID","text":"

        At first, we chose to name the ontology \"Unified Breed Ontology\" (UBO). Which meant that for everything from ODK setup to creating identifiers for our terms, we used the UBO prefix. Later in the process, we decided to change the name to \"Vertebrate Breed Ontology\". Migrating all the terms and the ODK setup from ubo to vbo required some expert knowledge on the workings of the ODK, and created an unnecessary cost. We should have finalised the choice of name first.

        "},{"location":"howto/create-ontology-from-scratch/#create-a-basic-set-up","title":"Create a basic set up","text":"
        1. Making a Repo with ODK
        2. Develop a workflow that turns a Google Sheet into a component.
        "},{"location":"howto/create-ontology-from-scratch/#determine-the-metadata-and-logical-patterns-you-wish-to-employ","title":"Determine the metadata and logical patterns you wish to employ.","text":"
        • We decided to build a domain ontology, for the representation of vertebrate breeds.
        • As our initial data is relatively flat, we decided to use ROBOT templates and Google Sheets to manage them.
        "},{"location":"howto/create-ontology-from-scratch/#some-notes-need-to-be-cleaned-up-ignore","title":"Some notes, need to be cleaned up (ignore)","text":"
        • Creation of components: for basic information: each \u201clayer\u201d is built in a google sheet for example:
        • Transboundary: are children of species
        • Breeds: are children of either species or transboundary (therefore we need transboundary and species in order to be able to add breeds)
        • Addition of new information as we have them
        • E.g. adding xref and synonym from OMIA
        • Upcoming: xref and synonym form another database.
        • Future: Continue to add to the original document and/or create new components
        "},{"location":"howto/create-ontology-from-scratch/#acknowledgements","title":"Acknowledgements","text":"

        Thank you to Melanie Courtot, Sierra Moxon, John Graybeal, Chris Stoeckert, Lars Vogt and Nomi Harris for their helpful comments on this how-to.

        "},{"location":"howto/daily-curator-workflow/","title":"Daily Ontology Curator Workflow with GitHub","text":""},{"location":"howto/daily-curator-workflow/#updating-the-local-copy-of-the-ontology-with-git-pull","title":"Updating the local copy of the ontology with 'git pull'","text":"
        1. Navigate to the ontology directory of go-ontology: cd repos/MY-ONTOLOGY/src/ontology.

        2. If the terminal window is not configured to display the branch name, type: git status. You will see:

        On branch [master] [or the name of the branch you are on] Your branch is up-to-date with 'origin/master'.

        1. If you\u2019re not in the master branch, type: git checkout master.

        2. From the master branch, type: git pull. This will update your master branch, and all working branches, with the files that are most current on GitHub, bringing in and merging any changes that were made since you last pulled the repository using the command git pull. You will see something like this:

        ~/repos/MY-ONTOLOGY(master) $ git pull\nremote: Counting objects: 26, done.\nremote: Compressing objects: 100% (26/26), done.\nremote: Total 26 (delta 12), reused 0 (delta 0), pack-reused 0\nUnpacking objects: 100% (26/26), done.\nFrom https://github.com/geneontology/go-ontology\n   580c01d..7225e89  master     -> origin/master\n * [new branch]     issue#13029 -> origin/issue#13029\nUpdating 580c01d..7225e89\nFast-forward\n src/ontology/go-edit.obo | 39 ++++++++++++++++++++++++---------------\n 1 file changed, 24 insertions(+), 15 deletions(-)\n~/repos/MY-ONTOLOGY(master) $\n
        "},{"location":"howto/daily-curator-workflow/#creating-a-new-working-branch-with-git-checkout","title":"Creating a New Working Branch with 'git checkout'","text":"
        1. When starting to work on a ticket, you should create a new branch of the repository to edit the ontology file.

        2. Make sure you are on the master branch before creating a new branch. If the terminal window is not configured to display the branch name, type: git status to check which is the active branch. If necessary, go to master by typing git checkout master.

        3. To create a new branch, type: git checkout -b issue-NNNNN in the terminal window. For naming branches, we recommend using the string 'issue-' followed by the issue number. For instance, for this issue in the tracker: https://github.com/geneontology/go-ontology/issues/13390, you would create this branch: git checkout -b issue-13390. Typing this command will automatically put you in the new branch. You will see this message in your terminal window:

        ~/repos/MY-ONTOLOGY/src/ontology(master) $ git checkout -b issue-13390\nSwitched to a new branch 'issue-13390'\n~/repos/MY-ONTOLOGY/src/ontology(issue-13390) $\n
        "},{"location":"howto/daily-curator-workflow/#continuing-work-on-an-existing-working-branch","title":"Continuing work on an existing Working Branch","text":"
        1. If you are continuing to do work on an existing branch, in addition to updating master, go to your branch by typing git checkout [branch name]. Note that you can view the existing local branches by typing git branch -l.

        2. OPTIONAL: To update the working branch with respect to the current version of the ontology, type git pull origin master. This step is optional because it is not necessary to work on the current version of the ontology; all changes will be synchronized when git merge is performed.

        "},{"location":"howto/daily-curator-workflow/#loading-navigating-and-saving-the-ontology-in-protege","title":"Loading, navigating and saving the Ontology in Prot\u00e9g\u00e9","text":"
        1. Before launching Prot\u00e9g\u00e9, make sure you are in the correct branch. To check the active branch, type git status.

        2. Click on the 'File' pulldown. Open the file: go-edit.obo. The first time, you will have to navigate to repos/MY-ONTOLOGY/src/ontology. Once you have worked on the file, it will show up in the menu under 'Open'/'Recent'.

        3. Click on the 'Classes' tab.

        4. Searching: Use the search box on the upper right to search for a term in the ontology. Wait for autocomplete to work in the pop-up window.

        5. Viewing a term: Double-click on the term. This will reveal the term in the 'Class hierarchy' window after a few seconds.

        6. Launching the reasoner: To see the term in the 'Class hierarchy' (inferred) window, you will need to run the 'ELK reasoner'. 'Reasoner' > select ELK 0.4.3, then click 'Start reasoner'. Close the various pop-up warnings about the ELK reasoner. You will now see the terms in the inferred hierarchy.

        7. After modification of the ontology, synchronize the reasoner. Go to menu: 'Reasoner' > ' Synchronize reasoner'.

        8. NOTE: The only changes that the reasoner will detect are those impacting the ontology structure: changes in equivalence axioms, subclasses, merges, obsoletions, new terms.

        9. TIP: When adding new relations/axioms, 'Synchronize' the reasoner. When deleting relations/axioms, it is more reliable to 'Stop' and 'Start' the reasoner again.

        10. Use File > Save to save your changes.

        "},{"location":"howto/daily-curator-workflow/#committing-pushing-and-merging-your-changes-to-the-repository","title":"Committing, pushing and merging your changes to the repository","text":"
        1. Review: Changes made to the ontology can be viewed by typing git diff in the terminal window. If there are changes that have already been committed, the changes in the active branch relative to master can be viewed by typing git diff master.

        2. Commit: Changes can be committed by typing: git commit -m \u2018Meaningful message Fixes #ticketnumber\u2019 go-edit.obo.

          For example:

             git commit -m \u2018hepatic stellate cell migration and contraction and regulation terms. Fixes #13390\u2019 go-edit.obo\n

          This will save the changes to the go-edit.obo file. The terminal window will show something like:

           ~/repos/MY-ONTOLOGY/src/ontology(issue-13390) $ git commit -m 'Added hepatic stellate cell migration and contraction and regulation terms. Fixes #13390' go-edit.obo\n [issue-13390 dec9df0] Added hepatic stellate cell migration and contraction and regulation terms. Fixes #13390\n 1 file changed, 79 insertions(+)\n ~/repos/MY-ONTOLOGY/src/ontology(issue-13390) $\n
          • NOTE: The word 'fixes' is a magic word in GitHub; when used in combination with the ticket number, it will automatically close the ticket. In the above example, when the file is merged in GitHub, it will close issue number 13390. Learn more on this GitHub Help Documentation page about 'Closing issues via commit messages'.
          • 'Fixes' is case-insensitive.
          • If you don't want to close the ticket, just refer to the ticket # without the word 'Fixes'. The commit will be associated with the correct ticket but the ticket will remain open.
          • NOTE: It is also possible to type a longer message than allowed when using the '-m' argument; to do this, skip the -m, and a vi window (on mac) will open in which an unlimited description may be typed.
          • TIP: Git needs to know who is committing changes to the repository, so the first time you commit, you may see the following message:

          Committer: Kimberly Van Auken vanauken@kimberlukensmbp.dhcp.lbnl.us Your name and email address were configured automatically based on your username and hostname. Please check that they are accurate.

          • See Configuration instructions to specify your name and email address.
        3. Push: To incorporate the changes into the remote repository, type: git push origin mynewbranch.

          Example:

           git push origin issue-13390\n
          • TIP: Once you have pushed your changes to the repository, they are available for everyone to see, so at this stage you can ask for feedback.
        4. Pull

          1. In your browser, return to the GO Ontology repository on GitHub.
          2. Navigate to the tab labeled as 'Code' geneontology/go-ontology/code. You will see your commit listed at the top of the page in a light yellow box. If you don\u2019t see it, click on the 'Branches' link to reveal it in the list, and click on it.
          3. Click the green button 'Compare & pull request' on the right.
          4. You may now add comments and ask a colleague to review your pull request. If you want to have the ticket reviewed before closing it, you can select a reviewer for the ticket before you make the pull request by clicking on the 'Reviewers' list and entering a GitHub identifier (e.g. @superuser1). The reviewer will be notified when the pull request is submitted. Since the Pull Request is also a GitHub issue, the reviewer\u2019s comments will show up in the dialog tab of the pull request, similarly to any other issue filed on the tracker.
          5. The diff for your file is at the bottom of the page. Examine it as a sanity check.
          6. Click on the green box 'Pull request' to generate a pull request.
          7. Wait for the Travis checks to complete (this can take a few minutes). If the Travis checks failed, go back to your working copy and correct the reported errrors.
        5. Merge If the Travis checks are succesful and if you are done working on that branch, merge the pull request. Confirming the merge will close the ticket if you have used the word 'fixes' in your commit comment. NOTE: Merge the branches only when the work is completed. If there is related work to be done as a follow up to the original request, create a new GitHub ticket and start the process from the beginning.

        6. Delete your branch on the repository using the button on the right of the successful merge message.

        7. You may also delete the working branch on your local copy. Note that this step is optional. However, if you wish to delete branches on your local machine, in your terminal window:

          1. Go back to the master branch by typing git checkout master.
          2. Update your local copy of the repository by typing git pull origin master
          3. Delete the branch by typing git branch -d workingbranchname. Example: git branch -d issue-13390
        "},{"location":"howto/deal-with-large-ontologies/","title":"Dealing with huge ontologies in your import chain","text":"

        Dealing with very large ontologies, such as the Protein Ontology (PR), NCBI Taxonomy (NCBITaxon), Gene Ontology (GO) and the CHEBI Ontology is a big challenge when developing ontologies, especially if we want to import and re-use terms from them. There are two major problems:

        1. It currently takes about 12\u201316 GB of memory to process PR and NCBITaxon \u2013 memory that many of us do not have available.
        2. The files are so large, pulling them over the internet can lead to failures, timeouts and other problems.

        There are a few strategies we can employ to deal with the problem of memory consumption:

        1. We try to reduce the memory footprint of the import as much as possible. In other words: we try to not do the fancy stuff ODK does by default when extracting a module, and keep it simple.
        2. We manage the import manually ourselves (no import)

        To deal with file size, we:

        1. Instead of importing the whole thing, we import curated subsets.
        2. If available, we use gzipped (compressed) versions.

        All four strategies will be discussed in the following. We will then look a bit

        "},{"location":"howto/deal-with-large-ontologies/#overwrite-odk-default-less-fancy-custom-modules","title":"Overwrite ODK default: less fancy, custom modules","text":"

        The default recipe for creating a module looks something like this:

        imports/%_import.owl: mirror/%.owl imports/%_terms_combined.txt\n    if [ $(IMP) = true ]; then $(ROBOT) query  -i $< --update ../sparql/preprocess-module.ru \\\n        extract -T imports/$*_terms_combined.txt --force true --copy-ontology-annotations true --individuals exclude --method BOT \\\n        query --update ../sparql/inject-subset-declaration.ru --update ../sparql/postprocess-module.ru \\\n        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi\n\n.PRECIOUS: imports/%_import.owl\n

        (Note: This snippet was copied here on 10 February 2021 and may be out of date by the time you read this.)

        As you can see, a lot of stuff is going on here: first we run some preprocessing (which is really costly in ROBOT, as we need to load the ontology into Jena, and then back into the OWL API \u2013 so basically the ontology is loaded three times in total), then extract a module, then run more SPARQL queries etc, etc. Costly. For small ontologies, this is fine. All of these processes are important to mitigate some of the shortcomings of module extraction techniques, but even if they could be sorted in ROBOT, it may still not be enough.

        So what we can do now is this. In your ont.Makefile (for example, go.Makefile, NOT Makefile), located in src/ontology, you can add a snippet like this:

        imports/pr_import.owl: mirror/pr.owl imports/pr_terms_combined.txt\n    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/pr_terms_combined.txt --force true --method BOT \\\n        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi\n\n.PRECIOUS: imports/pr_import.owl\n

        Note that all the % variables and uses of $* are replaced by the ontology ID in question. Adding this to your ont.Makefile will overwrite the default ODK behaviour in favour of this new recipe.

        The ODK supports this reduced module out of the box. To activate it, do this:

        import_group:\n  products:\n    - id: pr\n      use_gzipped: TRUE\n      is_large: TRUE\n

        This will (a) ensure that PR is pulled from a gzipped location (you have to check whether it exists though. It must correspond to the PURL, followed by the extension .gz, for example http://purl.obolibrary.org/obo/pr.owl.gz) and (b) that it is considered large, so the default handling of large imports is activated for pr, and you don't need to paste anything into ont.Makefile.

        If you prefer to do it yourself, in the following sections you can find a few snippets that work for three large ontologies. Just copy and paste them into ont.Makefile, and adjust them however you wish.

        "},{"location":"howto/deal-with-large-ontologies/#protein-ontology-pr","title":"Protein Ontology (PR)","text":"
        imports/pr_import.owl: mirror/pr.owl imports/pr_terms_combined.txt\n    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/pr_terms_combined.txt --force true --method BOT \\\n        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi\n\n.PRECIOUS: imports/pr_import.owl\n
        "},{"location":"howto/deal-with-large-ontologies/#ncbi-taxonomy-ncbitaxon","title":"NCBI Taxonomy (NCBITaxon)","text":"
        imports/ncbitaxon_import.owl: mirror/ncbitaxon.owl imports/ncbitaxon_terms_combined.txt\n    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/ncbitaxon_terms_combined.txt --force true --method BOT \\\n        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi\n\n.PRECIOUS: imports/ncbitaxon_import.owl\n
        "},{"location":"howto/deal-with-large-ontologies/#chebi","title":"CHEBI","text":"
        imports/chebi_import.owl: mirror/chebi.owl imports/chebi_terms_combined.txt\n    if [ $(IMP) = true ]; then $(ROBOT) extract -i $< -T imports/chebi_terms_combined.txt --force true --method BOT \\\n        annotate --ontology-iri $(ONTBASE)/$@ $(ANNOTATE_ONTOLOGY_VERSION) --output $@.tmp.owl && mv $@.tmp.owl $@; fi\n\n.PRECIOUS: imports/chebi_import.owl\n

        Feel free to use an even cheaper approach, even one that does not use ROBOT, as long as it produces the target of the goal (e.g. imports/chebi_import.owl).

        "},{"location":"howto/deal-with-large-ontologies/#use-slims-when-they-are-available","title":"Use slims when they are available","text":"

        For some ontologies, you can find slims that are much smaller than full ontology. For example, NCBITaxon maintains a slim for OBO here: http://purl.obolibrary.org/obo/ncbitaxon/subsets/taxslim.owl, which smaller than the 1 or 2 GB of the full version. Many ontologies maintain such slims, and if not, probably should. (I would really like to see an OBO slim for Protein Ontology!)

        (note the .obo file is even smaller but currently robot has issues getting obo files from the web)

        You can also add your favourite taxa to the NCBITaxon slim by simply making a pull request on here: https://github.com/obophenotype/ncbitaxon/blob/master/subsets/taxon-subset-ids.txt

        You can use those slims simply like this:

        import_group:\n  products:\n    - id: ncbitaxon\n      mirror_from: http://purl.obolibrary.org/obo/ncbitaxon/subsets/taxslim.obo\n
        "},{"location":"howto/deal-with-large-ontologies/#manage-imports-manually","title":"Manage imports manually","text":"

        This is a real hack \u2013 and we want to strongly discourage it \u2013 but sometimes, importing an ontology just to import a single term is total overkill. What we do in these cases is to maintain a simple template to \"import\" minimal information. I can't stress enough that we want to avoid this, as such information will necessarily go out of date, but here is a pattern you can use to handle it in a sensible way:

        Add this to your src/ontology/ont-odk.yaml:

        import_group:\n  products:\n    - id: my_ncbitaxon\n

        Then add this to src/ontology/ont.Makefile:

        mirror/my_ncbitaxon.owl:\n    echo \"No mirror for $@\"\n\nimports/my_ncbitaxon_import.owl: imports/my_ncbitaxon_import.tsv\n    if [ $(IMP) = true ]; then $(ROBOT) template --template $< \\\n  --ontology-iri \"$(ONTBASE)/$@\" --output $@.tmp.owl && mv $@.tmp.owl $@; fi\n\n.PRECIOUS: imports/my_ncbitaxon_import.owl\n

        Now you can manage your import manually in the template, and the ODK will not include your manually-curated import in your base release. But again, avoid this pattern for anything except the most trivial case (e.g. you need one term from a huge ontology).

        "},{"location":"howto/deal-with-large-ontologies/#file-is-too-large-network-timeouts-and-long-runtimes","title":"File is too large: Network timeouts and long runtimes","text":"

        Remember that ontologies are text files. While this makes them easy to read in your browser, it also makes them huge: from 500 MB (CHEBI) to 2 GB (NCBITaxon), which is an enormous amount.

        Thankfully, ROBOT can automatically read gzipped ontologies without the need of unpacking. To avoid long runtimes and network timeouts, we can do the following two things (with the new ODK 1.2.26):

        import_group:\n  products:\n    - id: pr\n      use_gzipped: TRUE\n

        This will try to append .gz to the default download location (http://purl.obolibrary.org/obo/pr.owl \u2192 http://purl.obolibrary.org/obo/pr.owl.gz). Note that you must make sure that this file actually exists. It does for CHEBI and the Protein Ontology, but not for many others.

        If the file exists, but is located elsewhere, you can do this:

        import_group:\n  products:\n    - id: pr\n      mirror_from: http://purl.obolibrary.org/obo/pr.owl.gz\n

        You can put any URL in mirror_from (including non-OBO ones!)

        "},{"location":"howto/deploy-custom-obo-dashboard/","title":"How to deploy a custom OBO dashboard","text":""},{"location":"howto/deploy-custom-obo-dashboard/#updated-2022-workflow","title":"Updated 2022 Workflow","text":"

        We developed a completely automated variant of the Custom OBO Dashboard Workflow, which does not require any local installation.

        1. Create a repository using the Dashboard template repository. (How to create a repository from a template)
        2. Modify the dashboard-config.yml file, in particular the ontologies section:
          1. Important: Add your ontology ID to the ID 'id' field
          2. Add the path to your ontology to the mirror_from field.
        3. Optional: use the profile section to overwrite the custom robot report profile and add custom checks!

        yaml profile: baseprofile: \"https://raw.githubusercontent.com/ontodev/robot/master/robot-core/src/main/resources/report_profile.txt\" custom: - \"WARN\\tfile:./sparql/missing_xrefs.sparql\"

        1. Click on Settings > Pages to configure the GitHub pages. Set the Source to deploy from branch, and Branch to build from main (or master if you are still using the old default) and /(root) as directory. Hit Save.

        2. Click on the Actions tab in your repo. On the left, select the Run dashboard workflow and click on the Run workflow button. This action will rebuild the dashboard and make a pull request with the changes.

        3. Review and merge the pull request. Once it is merged, GitHub will automatically rebuild your dashboard website.
        4. After 5 minutes, click on \"Settings\" > \"Pages\" again. You should now a new section with information where your site is deployed:
        5. Click on Visit site and you should find your new shiny dashboard page!
        "},{"location":"howto/deploy-custom-obo-dashboard/#troubloushooting","title":"Troubloushooting","text":""},{"location":"howto/deploy-custom-obo-dashboard/#error-on-github-action-run-dashboard-section","title":"Error on GitHub Action - Run dashboard section","text":"

        Failed: make dashboard ROBOT_JAR=/tools/robot.jar ROBOT=robot -B with return code 2

        There is a known bug at the moment requiring at least one ontology with a warning, error, info and pass, see https://github.com/OBOFoundry/OBO-Dashboard/issues/85.

        1. In your dashboard-config.yml, add a temporary ontology we created to make this work. This is already in the Dashboard template repository.
        ontologies:\ncustom:\n- id: tmp\nmirror_from: \"https://raw.githubusercontent.com/monarch-ebi-dev/robot_tests/master/custom-dashboard.owl\"\n
        "},{"location":"howto/deploy-custom-obo-dashboard/#error-on-github-action-create-pull-request-section","title":"Error on GitHub Action - Create Pull Request section","text":"

        remote: Permission to <name of the user or organization>/<name of the repository>.git denied to github-actions[bot].

        You need to update the workflow permission for the repository.

        1. Click on Settings, then Actions on the left menu, then General.
        2. Scroll down to the 'Workflow permissions section. Select the option 'Read and write permissions'. Save.

        Error: GitHub Actions is not permitted to create or approve pull requests.

        You need to enable GitHub Actions to create pull requests.

        1. Click on Settings, then Actions on the left menu, then General.
        2. Scroll down to the 'Workflow permissions section. Click on the 'Allow GitHub Actions to create and approve pull requests' checkbox.
        "},{"location":"howto/deploy-custom-obo-dashboard/#2021-edition","title":"2021 Edition","text":"

        Contributed by @XinsongDu, edited by @matentzn

        1. Clone https://github.com/OBOFoundry/obo-nor.github.io and copy all its contents to a new GitHub repo under your account. Ensure that the .gitignore from the obo-nor.github.io repo is also copied to your new repo (it is frequently skipped or hidden from the user in Finder or when using the cp command) and push to everything to GitHub.
        2. Pull the Ontology Development Kit from Docker Hub (can take a while):
        docker pull obolibrary/odkfull\n
        1. Modify the dashboard-config.yml file, in particular the ontologies section:
        2. Important: Add your ontology ID to the ID 'id' field
        3. Add the path to your ontology to the mirror_from field.
        4. Get the \"base uri namespace\" of the ontology using the following steps: a. Open the ontology in Prot\u00e9g\u00e9 b. Select a class and press \"command + u\" (MacOS), the stem of the path would be the base URI namespace (e.g., in EDAM ontology, the base uri namespace is http://edamontology.org/, for Uberon it would be http://purl.obolibrary.org/obo/UBERON_)
        5. Add the base uri namespace to 'base_ns' field of your ontology in the dashboard-config.yml
        6. (As of October 2021 make sure there are multiple ontologies in the dashboard-config.yml, otherwise errors would be reported while running the code. There are currently some bugs in the dashboard code that require at least 2 or 3 ontologies in the list).
        7. In the Makefile uncomment the # before pip install networkx==2.6.2 to ensure the correct network x version is installed.
        8. Run sh run-dash.sh (make sure dashboard folder is empty before running, e.g. rm -rf dashboard/*).
        9. When run successfully, push all changes to GitHub.
        10. Go to GitHub repo you just created, and go to Settings, then Pages, and select your main/master branch as \"source\", and your root directory. You will see a website URL highlighted in green, where your OBO dashboard is deployed.
        "},{"location":"howto/edit-in-protege/","title":"Editing a term in protege","text":"

        Before you start:

        • make sure you are working on a branch here.
        • make sure you have the editor's file open in Protege (in ODK ontologies, located in: ./src/ontology/ONT-edit.owl) where ONT is the name of your ontology (eg mondo-edit.owl for MONDO)
        • familiarise yourself with the user interface of protege
        "},{"location":"howto/edit-in-protege/#adding-editing-annotating-and-deleting-axioms","title":"Adding, editing, annotating and deleting axioms","text":""},{"location":"howto/edit-in-protege/#adding-annotations","title":"Adding annotations","text":"

        Using Prot\u00e9g\u00e9 you can add annotations such as labels, definitions, synonyms, database cross references (dbxrefs) to any OWL entity. The panel on the right, named Annotations, is where these annotations are added. OBO Foundry ontologies includes a pre-declared set of annotation properties. The most commonly used annotations are below.

        • rdfs:label
        • definition
        • has_exact_synonym
        • has_broad_synonym
        • has_narrow_synonym
        • has_related synonym
        • database_cross_reference
        • rdfs:comment

        Note: OBO ontologies allow only one rdfs:label, definition, and comment.

        Note, most of these are bold in the annotation property list:

        Use this panel to add a definition to the class you created. Select the + button to add an annotation to the selected entity. Click on the annotation 'definition' on the left and copy and paste in the definition to the white editing box on the right. Click OK.

        Example (based on MONDO):

        Definition: A disorder characterized by episodes of swelling under the skin (angioedema) and an elevated number of the white blood cells known as eosinophils (eosinophilia). During these episodes, symptoms of hives (urticaria), fever, swelling, weight gain and eosinophilia may occur. Symptoms usually appear every 3-4 weeks and resolve on their own within several days. Other cells may be elevated during the episodes, such as neutrophils and lymphocytes. Although the syndrome is often considered a subtype of the idiopathic hypereosinophilic syndromes, it does not typically have organ involvement or lead to other health concerns.

        Definitions in OBO ontologies should have a 'database cross reference' (dbxref), which is a reference to the definition source, such as a paper from the primary literature or another database. For references to papers, we cross reference the PubMed Identifier in the format, PMID:XXXXXXXX. (Note, no space)

        To add a dbxref to the definition:

        1. Click the @ symbol next to the definition
        2. Click the + button next in the pop-up window
        3. Scroll up on the left hand side until you find 'database_cross_reference', and click it
        4. Add the PMID in the editing box (PMID:25527564). _Note: the PMID should not have any spaces)
        5. Click OK
        6. Add the additional dbxref (e.g., adding GARD:0013029)
        7. The dbxrefs should appear as below.

        "},{"location":"howto/edit-in-protege/#add-synonyms-and-database-cross-reference","title":"Add Synonyms and Database cross reference","text":"

        To add a synonym:

        1. Select the + button to add an annotation to the selected entity
        2. Add the synonyms as 'has_exact_synonym' (note: use appropriate synonym annotation)
        3. Synonyms should have a reference to it
        4. Click the @ symbol next to the synonym
        5. Click the + button
        6. Select database_cross_reference on the left panel and add your reference to the Literal tab on the right hand side

        "},{"location":"howto/edit-in-protege/#the-class-description-view","title":"The Class description view","text":"

        We have seen how to add sub/superclasses and annotate the class hierarchy. Another way to do the same thing is via the Class description view. When an OWL class is selected in the entities view, the right-hand side of the tab shows the class description panel. If we select the 'vertebral column disease' class, we see in the class description view that this class is a \"SubClass Of\" (= has a SuperClass) the 'musculoskeletal system disease' class. Using the (+) button beside \"SubClass Of\" we could add another superclass to the 'skeletal system disease' class.

        Note the Anonymous Ancestors. These are superclasses that are inherited from the parents. If you hover over the Subclass Of (Anonymous Ancestor) you can see the parent that the class inherited the superclass from.

        When you press the '+' button to add a SubClass of axiom, you will notice a few ways you can add a term. The easiest of this is to use the Class expression editor. This allows you to type in the expression utilizing autocomplete. As you start typing, you can press the 'TAB' or '->|' button on your keyboard, and protege will suggest terms. You will also note that the term you enter is not in the ontology, protege will not allow you add it, with the box being highlighted red, and the term underlined red.

        "},{"location":"howto/edit-in-protege/#make-a-pull-request","title":"Make a Pull Request","text":"
        1. Make a pull request as usual (instructions here)
        "},{"location":"howto/embed-video/","title":"Embed YouTube video into a OBOOK pagetoid","text":"

        This guide explains how to embed a YouTube video into a page in this OBO Academy material. Example, see the videos on the Contributing to OBO Ontologies page.

        "},{"location":"howto/embed-video/#instructions","title":"Instructions","text":"
        1. Go to the YouTube video you would like to embed.
        2. Click Share
        3. Click Embed
        4. Click copy
        5. Paste the content into the page where you would like to see it displayed.

        The content should look something like this: <iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/_z8-KGDzZ6U\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>

        The embedded video should look like this:

        "},{"location":"howto/filter-text-file/","title":"Command Line Trick: Filter text files based on a list of strings","text":"

        Let's say you want to remove some lines from a large text file programmatically. For example, you want to remove every line that contains certain IDs, but you want to keep the rest of the lines intact. You can use the command line utility grep with option -v to find all the lines in the file that do NOT contain your search term(s). You can make a file with a list of several search terms and use that file with grep using the -f option as follows:

        grep -v -f your_list.txt target_file.tsv | tee out_file.tsv\n
        "},{"location":"howto/filter-text-file/#explanation","title":"Explanation","text":"
        • The target file is your text file from which you wish to remove lines. The text file can be of type csv, tsv, obo etc. For example, you wish to filter a file with these lines:

        keep this 1 this line is undesired 2, so you do not wish to keep it keep this 3 keep this 4 keep this 5 keep this 6 something undesired 2 this line is undesired 1 keep this 7

        • The file your_list.txt is a text file with your list of search terms. Format: one search term per line. For example:

        undesired 1 undesired 2

        • The utility tee will redirect the standard output to both the terminal and write it out to a file.

        • You expect the out_file.tsv to contain lines:

        keep this 1 keep this 3 keep this 4 keep this 5 keep this 6 keep this 7

        "},{"location":"howto/filter-text-file/#do-the-filtering-and-updating-of-your-target-file-in-one-step","title":"Do the filtering and updating of your target file in one step","text":"

        You can also do a one-step filter-update when you are confident that your filtering works as expected, or if you have a backup copy of your target_file.tsv. Use cat and pipe the contents of your text file as the input for grep. Redirect the results to both your terminal and overwrite your original file so it will contain only the filtered lines.

        cat target_file.tsv | grep -v -f your_list.txt | tee target_file.tsv\n
        "},{"location":"howto/fixing-conflicts/","title":"Fixing merge conflicts","text":"

        This video illustrates an example of fixing a merge conflict in the Mondo Disease Ontology.

        Instructions:

        1. If a merge conflict error appears in your Github.com pull request after committing a change, open GitHub Desktop and select the corresponding repository from the \"Current Repository\" button. If the conflict emerged after editing the ontology outside of Prot\u00e9g\u00e9 5.5.0, see Ad hoc Reserialisation below.

        2. With the repository selected, click the \"Fetch origin\" button to fetch the most up-to-date version of the repository.

        3. Click the \"Current Branch\" button and select the branch with the merge conflict.

        4. From the menu bar, select Branch > \"Update from master\".

        5. A message indicating the file with a conflict should appear along with the option to open the file (owl or obo file) in a text/code editor, such as Sublime Text. Click the button to open the file.

        6. Search the file for conflict markings ( <<<<<<< ======= >>>>>>> ).

        7. Make edits to resolve the conflict, e.g., arrange terms in the correct order.

        8. Remove the conflict markings.

        9. Save the file.

        10. Open the file in Prot\u00e9g\u00e9. If prompted, do not reload any previously opened file. Open as a new file.

        11. Check that the terms involved in the conflict appear OK, i.e., have no obvious errors.

        12. Save the file in Prot\u00e9g\u00e9 using File > 'Save as...' from the menu bar and replace the ontology edit file, e.g., mondo-edit.obo

        13. Return to GitHub Desktop and confirm the conflicts are now resolved. Click the \"Continue Merge\" button and then the \"Push origin\" button.

        14. Return to Github.com and allow the QC queries to rerun.

        15. The conflict should be resolved and the branch allowed to be merged.

        Ad hoc Reserialisation

        If the owl or obo file involved in the merge conflict was edited using Prot\u00e9g\u00e9 5.5.0, the above instructions should be sufficient. If edited in any other way, such as fixing a conflict in a text editor, the serialisation order may need to be fixed. This can be done as follows:

        1. Reserialise the master file using the Ontology Development Kit (ODK). This requires setting up Docker and ODK. If not already set up, follow the instructions here.

        2. Open Docker.

        3. At the line command (PC) or Terminal (Mac), use the cd (change directory) command to navigate to the repository's src/ontology/ directory. For example,

        cd PATH_TO_ONTOLOGY/src/ontology/

        Replace \"PATH_TO_ONTOLOGY\" with the actual file path to the ontology. If you need to orient yourself, use the pwd (present working directory) or ls (list) line commands.

        1. If you are resolving a conflict in an .owl file, run:

        sh run.sh make normalize_src

        If you are resolving a conflict in an .obo file, run:

        sh run.sh make normalize_obo_src

        1. In some ontologies (such as the Cell ontology (CL)), edits may result in creating a large amount of unintended differences involving ^^xsd:string. If you see these differences after running the command above, they can be resolved by following the instructions here.

        2. Continue by going to step 1 under the main Instructions above.

        "},{"location":"howto/github-actions/","title":"Using Github actions to automate tasks","text":""},{"location":"howto/github-actions/#post-a-comment-with-ontology-differences-on-pull-request","title":"Post a comment with ontology differences on pull request","text":"

        The command line tool Robot has a diff tool that compares two ontology files and can print the differences between them in multiple formats, among them markdown.

        We can use this tool and GitHub actions to automatically post a comment when a Pull Request to master is created, with the differences between the two ontologies.

        To create a new GitHub action, create a folder in your ontology project root folder called .github. Then create a yaml file in a subfolder called workflows, e.g. .github/workflows/diff.yml. This file contains code that will be executed in GitHub when certain conditions are meant, in this case, when a PR to master is submitted. The comments in this file from FYPO will help you write an action for your own repository.

        The comment will look something like this.

        "},{"location":"howto/github-create-fork/","title":"Fork an ontology for editing","text":"

        Note: Creating a fork allows you to create your copy GitHub repository. This example provides instructions on forking the Mondo GitHub reposiitory. You can't break any of the Mondo files by editing your forked copy.

        1. On GitHub, navigate to https://github.com/monarch-initiative/mondo
        2. In the top-right corner of the page, click Fork.

        1. When prompted 'Where should we fork mondo', choose your own repo (eg Nicole Vasilevsky).
        2. Be careful if you have multiple forks (i.e. the original and your own personal fork, as this can cause confusion).
        3. Clone your forked repo:

        4. If you have GitHub Desktop installed - click Code -> Open with GitHub Desktop

        5. How are you planning to use this fork? To contribute to parent project

        6. In GitHub Desktop, create a new branch:

        7. Click Current Branch - > New Branch

        1. Give your branch a name, like c-path-training-1

        2. You will make changes to the Mondo on the branch of your local copy.

        Further instructions on forking a repo

        "},{"location":"howto/github-create-pull-request/","title":"Create a Pull Request in GitHub","text":""},{"location":"howto/github-create-pull-request/#overview","title":"Overview","text":""},{"location":"howto/github-create-pull-request/#github-workflows","title":"GitHub workflows","text":"

        A Git repo consists of a set of branches each with a complete history of all changes ever made to the files and directories. This is true for a local copy you check out to your computer from GitHub or for a copy (fork) you make on GitHub.

        A Git repo typically has a master or main branch that is not directly edited. Changes are made by creating a branch from Master (complete copy of the Master + its history) (either a direct branch or via a fork).

        "},{"location":"howto/github-create-pull-request/#branch-vs-fork","title":"Branch vs Fork","text":"

        You can copy (fork) any GitHub repo to some other location on GitHub without having to ask permission from the owners.\u00a0 If you modify some files in that repo, e.g. to fix a bug in some code, or a typo in a document, you can then suggest to the owners (via a Pull Request) that they adopt (merge) you your changes back into their repo. See the Appendix for instructions on how to make a fork.

        If you have permission from the owners, you can instead make a new branch.

        "},{"location":"howto/github-create-pull-request/#what-is-a-pull-request","title":"What is a Pull Request?","text":"

        A Pull Request (PR) is an event in Git where a contributor (you!) asks a maintainer of a Git repository to review changes (e.g. edits to an ontology file) they want to merge into a project (e.g. the owl file) (see reference). Create a pull request to propose and collaborate on changes to a repository. These changes are proposed in a branch, which ensures that the default branch only contains finished and approved work. See more details here.

        "},{"location":"howto/github-create-pull-request/#committing-pushing-and-making-pull-requests","title":"Committing, pushing and making pull requests","text":"
        1. See these instructions on cloning an ontology repo and creating a branch using GitHub Dekstop.

        2. Review: Once changes are made to the ontology file, they can be viewed in GitHub Desktop.

        3. Before committing, check the diff. An example diff from the Cell Ontology (CL) is pasted below. Large diffs are a sign that something went wrong. In this case, do not commit the changes and consider asking the ontology editor team for help instead.

        Example 1 (Cell Ontology):

        Example 2 (Mondo):

        1. Commit message: Before Committing, you must add a commit message. In GitHub Desktop in the Commit field in the lower left, there is a subject line and a description.

        2. Give a very descriptive title: Add a descriptive title in the subject line. For example: add new class ONTOLOGY:ID [term name] (e.g. add new class MONDO:0000006 heart disease)

        3. Write a great summary of what the change is in the Description box, referring to the issue. The sentence should clearly state how the issue is addressed.

        4. To link the issue, you can use the word 'fixes' or 'closes' in the description of the commit message, followed by the corresponding ticket number (in the format #1234) - these are magic words in GitHub; when used in combination with the ticket number, it will automatically close the ticket. Learn more on this GitHub Help Documentation page about Closing issues via commit messages.

        5. Note: 'Fixes' and \"Closes' are case-insensitive.

        6. If you don't want to close the ticket, just refer to the ticket # without the word 'Fixes' or use 'Addresses'. The commit will be associated with the correct ticket but the ticket will remain open. 7.NOTE: It is also possible to type a longer message than allowed when using the '-m' argument; to do this, skip the -m, and a vi window (on mac) will open in which an unlimited description may be typed.

        1. Click Commit to [branch]. This will save the changes to the ontology edit file.

        2. Push: To incorporate the changes into the remote repository, click Publish branch.

        "},{"location":"howto/github-create-pull-request/#make-a-pull-request","title":"Make a Pull Request","text":"
        1. Click: Create Pull Request in GitHub Desktop

        2. This will automatically open GitHub Desktop

        3. Click the green button 'Create pull request'

        4. You may now add comments to your pull request.

        5. The CL editors team will review your PR and either ask for changes or merge it.

        6. The changes will be available in the next release.

        "},{"location":"howto/idrange/","title":"Setting up your ID Ranges","text":""},{"location":"howto/idrange/#setting-id-ranges-in-your-ontology","title":"Setting ID ranges in your ontology","text":"
        1. Curators and projects are assigned specific ID ranges within the prefix for your ontology. See the README-editors.md for your ontology

        2. An example: go-idranges.owl

        3. NOTE: You should only use IDs within your range.

        4. If you have only just set up this repository, modify the idranges file and add yourself or other editors.

        "},{"location":"howto/idrange/#setting-id-ranges","title":"Setting ID ranges","text":""},{"location":"howto/idrange/#protege-56","title":"Protege 5.6","text":"

        Prot\u00e9g\u00e9 5.6 can now automatically set up the ID range for a given user by exploiting the ONT-idranges.owl file, if it exists. ONT is the name of the ontology you are editing (for example, in UBERON, the file is named uberon-idranges.owl). The file is automatically created by the ODK, so that users shouldn\u2019t need worry about it.

        This Protege version looks at the ID range file and matches your user name in Protege to the names in the file to automatically set up your ID range. Thus as long as this information matches you no longer need to manually set the ID range. You will get a message if your user name does not match one in the file asking you to pick an ID range.

        Note: If you are switching from an old Protege version to Protege 5.6, you may need to reset your range to the last used ID rather than just the full range or Protege would try to fill in gaps in the range.

        "},{"location":"howto/idrange/#protege-550-or-below","title":"Protege 5.5.0 or below","text":"

        ID ranges need to be manually set in Protege 5.6.0 or below, as described below.

        "},{"location":"howto/idrange/#setting-id-ranges-in-protege-in-protege-550-or-below","title":"Setting ID ranges in Protege in Protege 5.5.0 or below","text":"
        1. Once you have your assigned ID range, you need to configure Protege so that your ID range is recorded in the Preferences menu. Protege does not read the idranges file.

        2. In the Protege menu, select Preferences.

        3. In the resulting pop-up window, click on the New Entities tab and set the values as follows.

        4. In the Entity IRI box:

        Start with: Specified IRI: http://purl.obolibrary.org/obo

        Followed by: /

        End with: Auto-generated ID

        1. In the Entity Label section:

        Same as label renderer: IRI: http://www.w3.org/2000/01/rdf-schema#label

        1. In the Auto-generated ID section:

        2. Numeric

        3. Prefix GO_

        4. Suffix: leave this blank

        5. Digit Count 7

        6. Start: see go-idranges.owl. Only paste the number after the GO: prefix. Also, note that when you paste in your GO ID range, the number will automatically be converted to a standard number, e.g. pasting 0110001 will be converted to 110,001.)

        7. End: see go-idranges.owl

        8. Remember last ID between Protege sessions: ALWAYS CHECK THIS

        (Note: You want the ID to be remembered to prevent clashes when working in parallel on branches.)

        "},{"location":"howto/install-protege/","title":"5 step installation guide for Prot\u00e9g\u00e9","text":"
        1. Click here to find latest release of Prot\u00e9g\u00e9. Choose and download the appropriate files for your operating system (Linux, macOS, Windows, platform independent).
        2. Use the PGP signature contained in the appropriate file with an .asc extension to verify the integrity of the downloaded Prot\u00e9g\u00e9 version.
        3. Decompress the downloaded .zip or .tar.gz file with tools appropriate for your operating system.
        4. Follow the steps as needed by your operating system to install the Prot\u00e9g\u00e9 application. For example, on macOS: drag and drop Prot\u00e9g\u00e9.app to the Applications folder and replace any older versions of the software. You may need to right click Prot\u00e9g\u00e9.app and then choose Open from the menu to authorise the programme to run on your machine. Alternatively, go to Preferences -> Security -> General. You need to open the little lock, then click Mac stopped an application from Running (Prot\u00e9g\u00e9) -> Open anyways.

        5. Adjust memory settings if necessary. Memory settings can now be adjusted in a jvm.conf configuration file that can be located either in the .protege/conf directory under your home directory, or in the conf directory within the application bundle itself. For example, to set the maximum amount of memory available for Prot\u00e9g\u00e9 to, say, 12GB, put the following in the jvm.conf file:

          max_heap_size=12G\n

        6. On macOS, you can find the file is here:
        /Applications/Prote\u0301ge\u0301.app/Contents/conf/jvm.conf\n

        Edit this part:

        # Uncomment the line below to set the maximal heap size to 8G\n#max_heap_size=8G\n
        "},{"location":"howto/installing-elk-in-protege/","title":"Install Elk 0.5 in Protege","text":"

        Note: This is only needed for Protege 5.5.0 or below. Protege 5.6 has ELK already installed.

        • Click here to get the latest Protege Plugin latest build (this is available on the bottom of ELK pages. This will download a zipped file.)

        • When downloaded, unzip and copy puli and elk jars (two .jar files) in the unpacked directory.

        • Paste these files in your Protege plugin directory.
        • Remove old org.semanticweb.elk.jar

        • Install ELK plugin on Mac:

        This can be done via one of two ways:

        Approach 1

        1. In Terminal: open ~/.Protege, then click on plugins
        2. Click on plugins
        3. Copy and paste the two files into the plugins directory
        4. Remove old elk.jar (Ex. org.semanticweb.elk.jar)
        5. Restart Protege. You should see ELK 0.5 installed in your Reasoner menu.

        Approach 2

        1. Paste these files in your Protege plugin directory. This is in one of two locations:
        2. ~/.Protege/plugins (note this is usually hidden from finder, but you can see it in the terminal) or
        3. Go to Protege in Applications (Finder), right click, 'Show package contents' -> Java -> plugins
        4. If you go to ~/.Protege and a directory called plugins does not exist in this folder, you can create it.
        5. Copy and paste the two files into the plugins directory
        6. Remove old elk.jar (Ex. org.semanticweb.elk.jar)
        7. Restart Protege. You should see ELK 0.5 installed in your Reasoner menu.

        Important: it seems Elk 0.5. Does not work with all versions of Protege, in particular, 5.2 and below. These instructions were only tested with Protege 5.5.

        "},{"location":"howto/installing-elk-in-protege/#video-explanation","title":"Video Explanation","text":""},{"location":"howto/merge-terms/","title":"Merging Terms","text":"

        NOTE This documentation is incomplete, for now you may be better consulting the GO Editor Docs

        For instructions on obsoleting terms (without merging/replacing with a new term, see obsoletion how to guide.)

        "},{"location":"howto/merge-terms/#merging-ontology-terms","title":"Merging Ontology Terms","text":"

        See Daily Workflow for creating branches and basic Prot\u00e9g\u00e9 instructions.

        Note Before performing a merge, make sure that you know all of the consequences that the merge will cause. In particular, be sure to look at child terms and any other terms that refer to the \u2018obsoleted\u2019 term. In many cases a simple merge of two terms is not sufficient because it will result in equivalent classes for child terms. For example if obsoleted term X is going to be merged into target term Y and \u2018regulation of X\u2019 and \u2018regulation of Y\u2019 terms exist, then you will need to merge the regulation terms in addition to the primary terms. You will also need to edit any terms that refer to the obsoleted term to be sure that the names and definitions are consistent.

        "},{"location":"howto/merge-terms/#manual-workflow","title":"Manual Workflow","text":"
        1. Find the ID of the term in which the obsoleted term will be merged
          • Navigate to 'winning' term using the Search box. Copy the ID of the winning term somewhere.
        2. Duplicate annotations from the obsoleted terms
          • Navigate to the term to be obsoleted.
          • Right click on it and select Duplicate class then OK in the pop up window. This should create a class with the exact same name.
          • On the duplicated class (you can see this by (CL:XXXX) within your range added), right click and select Change IRI (Rename)
          • Copy the ID of the winning term (obtained in Step 1).
          • Be sure to use the underscore _ in the identifier instead of the colon :, for example: GO_1234567. Make sure that the 'change all entities with this URI' box is checked.
          • Navigate to the winning term IRI, all annotations should be merged.
        3. Change obsoleted term label to a synonym
          • In the annotations box of the winning term there are now two terms with labels 'rdfs:label'. Click the o to change the label of the obsoleted term.
          • In the resulting pop-up window, select the appropriate synonym label from the list on the left:
            1. has_broad_synonym
            2. has_exact_synonym
            3. has_narrow_synonym
            4. has_related_synonym (if unsure, this is the safest choice)
        4. Remove duplicated or inappropriate annotations
          • Check the definition, if there are multiple entries, remove the obsoleted one by clicking on the x on the right.
          • Check the subclasses and remove inappropriate/duplciated ones by clicking on the x on the right.
          • Check list of synonyms and remove inappropriate/duplciated ones by clicking on the x on the right.
          • Note down the created_by and created_date (there can only be one value per term for each of these fields; this will be useful if you need to pick one after the merge is done).
        5. Obsolete old term
          • Obsolete the old term by following instructions found in obsoletion how to guide..
          • Ensure that you add a rdfs:comment that states that term was duplicated and to refer to the new new.
          • Ensure that you add a term replaced by annotations as per the instructions and add the winning merged term.
        6. Synchronize the reasoner and make sure there are no terms that have identical definitions as a result of the merge. These are displayed with an 'equivalent' sign \u2261 in the class hierarchy view on the left hand panel.
        7. Save changes.

        See Daily Workflow section for commit, push and merge instructions.

        "},{"location":"howto/merge-terms/#merge-using-owltools","title":"Merge using owltools","text":"

        To use owltools will need to have Docker installed and running (see instructions here).

        This is the workflow that is used in Mondo.

        1. Create a branch and name it issue-### (for example issue-2864)
        2. Open Protege
        3. Prepre the owltools command: owltools --use-catalog mondo-edit.obo --obsolete-replace [CURIE 1] [CURIE 2] -o -f obo mondo-edit.obo

        CURIE 1 = term to be obsoleted CURIE 2 = replacement term (ie term to be merged with)

        For example: If to merge MONDO:0023052 ectrodactyly polydactyly with MONDO:0009156 ectrodactyly-polydactyly syndrome, the command is:

        owltools --use-catalog mondo-edit.obo --obsolete-replace MONDO:0023052 MONDO:0009156 -o -f obo mondo-edit.obo

        1. In Terminal, navigate to your ontology directory: src/ontology
        2. Run your owltools command
        3. Check the output in GitHub desktop
        4. Open a new version of your ontology edit file in Protege
        5. Search for the term that was obsoleted
        6. Add 'term tracker item' (type xsd:anyURI) with a link to the GitHub issue that requested the obsoletion.
        7. Add an obsoletion reason: use the annotation property 'has obsolescence reason' and write 'terms merged' in the literal field.
        8. Search for the 'term replaced by' term
        9. Delete the old ID
        10. Review the annotations to ensure there are no duplicate annotations. If there are, they should be merged.
        11. Review the subClassOf assertions, and make sure there are no duplicates. If there are, they should be merged.
        12. When reviewing the diff, make sure there is not an Alt ID. The diff should only show additions to the merged term and the obsoletion

        TROUBLESHOOTING: Travis/Jenkins errors

        1. Merging a term that is used as 'replaced by' for an obsolete term

        :: ERROR: ID-mentioned-twice:: GO:0030722 :: ERROR: ID-mentioned-twice:: GO:0048126 GO:0030722 :: ERROR: has-definition: missing definition for id

        The cause of this error is that Term A (GO:0048126) was obsoleted and had replace by Term B (GO:0030722). The GO editor tried to merge Term B into a third term term C (GO:0007312). The Jenkins checkk failed because 'Term A replaced by' was an alternative_id rather than by a main_id. Solution: In the ontology, go to the obsolete term A and replace the Term B by term C to have a primary ID as the replace_by.

        "},{"location":"howto/obsolete-term/","title":"Obsoleting an Existing Ontology Term","text":"

        See Daily Workflow for creating branches and basic Prot\u00e9g\u00e9 instructions.

        Warning: Every ontology has their procedures on how they obsolete terms (eg notice periods, notification emails, to_be_obsolete tags, etc.), this how-to guide only serves as a guide on how obsolete a term directly on protege.

        For instructions on how to merge terms (i.e., replace a term with another term in the ontology), see instructions here.

        "},{"location":"howto/obsolete-term/#pre-obsoletion-process-or-basic-obsoletion-etiquette","title":"PRE OBSOLETION PROCESS (or basic obsoletion etiquette)","text":"
        1. Check if the term (or any of its children) is being used for annotation:

        2. Go to your ontology browser of choice, search for the term, either by label or ID

        3. See which other ontologies use the to be obsolete term
        4. Notify affected groups (usually by adding an issue in their tracker)

        5. Check if the term is used elsewhere in the ontology

        6. In Prot\u00e9g\u00e9, navigate to the term to be obsolete and go to the 'Usage' tab to see if that ID is used elsewhere.
        7. If the term is a parent to other terms or is used in logical definitions, make sure that another term replaces the obsolete term
        "},{"location":"howto/obsolete-term/#obsoletion-process-manual","title":"OBSOLETION PROCESS (Manual)","text":"

        Warning: some ontologies give advance notice on terms that will be obsoleted through the annotation 'scheduled for obsoletion on or after' instead of directly obsoleting the term. Please check with the conventions of your ontology before obsoleting a term.

        1. Navigate to the term to be obsoleted.

        1. Select Edit > Deprecate entity...

        1. A deprecation wizard will pop up, in here, select GO style, and select continue (note this is specifc to GO style ontologies, if you are working with an OBI style ontology, there is an option for that too, if not use basic. For this how to, we will follow GO style)

        1. Next, enter your reason for deprecation. For this, we advice for you to enter the github issue. (eg https://github.com/obophenotype/cell-ontology/issues/####) This will appear as a rdfs:comment

        1. Next enter a replacement entity if there is one. This will automatically replace axioms in the ontology with the term, and add an 'item replaced by' axiom on the obsolete term.

        1. Your obsolete term should now be stripped of its logical axioms and should look similar to the figure below.

        1. Add any additional annotations needed - this is specific to ontologies and you should consult the conventions of the ontology you are working on.

        Examples of additional annotations to add:

        • IAO:0000233 term tracker item (type xsd:anyURI) - link to GitHub issue

        • has_obsolence_reason

        • add \u2018OBSOLETE.\u2019 to the term definition: In the 'Description' window, click on the o on the right-hand side of the definition entry. In the resulting window, in the Literal tab, at the beginning of the definition, type: OBSOLETE.

        • if the obsoleted term was not replaced by another term in the ontology, but there are existing terms that might be appropriate for annotation, add those term IDs in the 'consider' tag: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select consider and enter the ID of the replacement term.

          NOTE: Here you have to add the ID of the entity as an xsd:string, e.g. GO:0005819, not the term label.

        "},{"location":"howto/obsolete-term/#obsolete-a-class-using-protege-make-entity-obsolete-function","title":"Obsolete a class (using Protege 'Make entity obsolete' function)","text":"
        1. Navigate to the term to be obsoleted.
        2. In the Protege edit menu-> Make entity obsolete
        3. Prepend the definition with OBSOLETE. For example, OBSOLETE. Chronic form of myeloproliferative neoplasm.
        4. Add a statement about why the term was made obsolete: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select rdfs:comment and select Type: Xsd:string. Consult the wiki documentation for suggestions on standard comments:

           - [http://wiki.geneontology.org/index.php/Curator_Guide:_Obsoletion](http://wiki.geneontology.org/index.php/Curator_Guide:_Obsoletion)\n\n - [http://wiki.geneontology.org/index.php/Obsoleting_GO_Terms](http://wiki.geneontology.org/index.php/Obsoleting_GO_Terms)\n\n - [http://wiki.geneontology.org/index.php/Editor_Guide](http://wiki.geneontology.org/index.php/Editor_Guide)\n
        5. If the obsoleted term was replaced by another term in the ontology: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select term replaced by and enter the ID of the replacement term.

        6. If the obsoleted term was not replaced by another term in the ontology, but there are existing terms that might be appropriate for annotation, add those term IDs in the 'consider' tag: In the 'Annotations' window, select + to add an annotation. In the resulting menu, select consider and enter the ID of the replacement term.

          NOTE: Here you have to add the ID of the entity as an xsd:string, e.g. GO:0005819, not the term label.

        7. Add any additional annotations needed - this is specific to ontologies and you should consult the conventions of the ontology you are working on.

        Examples of additional annotations to add:

        • IAO:0000233 term tracker item (type xsd:anyURI) - link to GitHub issue
        • has_obsolence_reason

        See Daily Workflow section for commit, push and merge instructions.

        "},{"location":"howto/odk-add-orcidio-module/","title":"Import ORCIDIO","text":""},{"location":"howto/odk-add-orcidio-module/#adding-an-orcidio-import-to-your-ontology-with-odk","title":"Adding an ORCIDIO import to your ontology with ODK","text":"

        The Open Researcher and Contributor Identifier (ORCID) is a global, unambiguous way to identify a researcher. ORCID URIs (e.g., https://orcid.org/0000-0003-4423-4370) can therefore be used to unambigously and actionably attribute various aspects of ontology terms in combination with DC Terms or IAO predicates. However, URIs themselves are opaque and it is difficult to disambiguate to which person an ORCID corresponds when browsing an ontology (e.g., in Prot\u00e9g\u00e9).

        ORCIDIO is an ontology that declares ORCID URIs as named individuals and associates basic metadata (e.g., name, description) to each such that tools like Prot\u00e9g\u00e9 can display a human-readable label rather than the URI itself as in the following example.

        In this guide, we discuss how to add ORCIDIO to your ODK setup.

        "},{"location":"howto/odk-add-orcidio-module/#1-include-orcidio-as-an-import-into-the-odk-config-file","title":"1. Include ORCIDIO as an import into the ODK config file","text":"

        In your ODK configuration (e.g. src/ontology/myont-odk.yaml), add the following to the import_group:

        import_group:\nannotation_properties:\n- rdfs:label\n- dc:description\n- dc:source\n- IAO:0000115\nproducts:\n- id: orcidio\nmirror_from: https://w3id.org/orcidio/orcidio.owl\nmodule_type: filter\nbase_iris:\n- https://orcid.org/\n

        The list of annotation properties, in particular dc:source, is important for the filter module to work (ORCIDIO relies heavily on axiom annotations for provenance).

        "},{"location":"howto/odk-add-orcidio-module/#2-update-your-catalog","title":"2. Update your catalog","text":"

        TODO: \"as usual\" should be re-written to cross-link to another guide about updating the catalog (or don't say as usual to keep this more self-contained) As usual, add a statement into your catalog (src/ontology/catalog-v001.xml):

         <uri name=\"http://purl.obolibrary.org/obo/ro/imports/orcidio_import.owl\" uri=\"imports/orcidio_import.owl\"/>\n
        "},{"location":"howto/odk-add-orcidio-module/#3-update-the-edit-file","title":"3. Update the edit file","text":"

        TODO: \"as usual\" should be re-written to cross-link to another guide about updating the edit file (or don't say as usual to keep this more self-contained) As usual, add an imports declaration to your edit file (src/ontology/myont-edit.owl):

        Import(<http://purl.obolibrary.org/obo/ro/imports/orcidio_import.owl>)\n

        TODO: link to explanation of base merging strategy Note: This is not necessary when using the base merging strategy (you will know what this means when you do use it).

        "},{"location":"howto/odk-add-orcidio-module/#4-configure-your-seed","title":"4. Configure your seed:","text":"

        Add a new SPARQL query: src/sparql/orcids.sparql. This is used to query for all ORCIDs used in your ontology.

        PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nprefix owl: <http://www.w3.org/2002/07/owl#>\nSELECT DISTINCT ?orcid\nWHERE {\n  VALUES ?property {\n    <http://purl.org/dc/elements/1.1/creator>\n    <http://purl.org/dc/elements/1.1/contributor>\n    <http://purl.org/dc/terms/creator>\n    <http://purl.org/dc/terms/contributor> \n  }\n  ?term ?property ?orcid . \n  FILTER(isIRI(?term))\n}\n

        Next, overwrite your ORCID seed generation to using this query by adding the following to your src/ontology/myont.Makefile (not Makefile!):

        $(IMPORTDIR)/orcidio_terms_combined.txt: $(SRCMERGED)\n$(ROBOT) query -f csv -i $< --query ../sparql/orcids.sparql $@.tmp &&\\\ncat $@.tmp | sort | uniq >  $@\n

        For your specific use-case, it may be necessary to tweak this SPARQL query, for example if your ORCIDs are used on axiom annotation level rather than entity annotation level.

        "},{"location":"howto/odk-add-orcidio-module/#5-updating-config-and-orcidio","title":"5. Updating Config and ORCIDIO","text":"

        Now run to apply your ODK changes:

        sh run.sh make update_repo\n

        This will update a number of files in your project, such as the autogenerated Makefile.

        Lastly, update your ORCIDIO import to apply the changes:

        sh run.sh make refresh-orcidio\n

        Commit all the changes to a branch, wait for continuous integration to finish, and enjoy your new ORCIDIO import module.

        "},{"location":"howto/odk-create-repo/","title":"Creating a new Repository with the Ontology Development Kit","text":"

        This is instructions on how to create an ontology repository in GitHub. This will only need to be done once per project. You may need assistance from someone with basic unix knowledge in following instructions here.

        We will walk you though the steps to make a new ontology project

        "},{"location":"howto/odk-create-repo/#1-install-requirements","title":"1. Install requirements","text":"
        • docker: Install Docker and make sure its runnning properly, for example by typing docker ps in your terminal or command line (CMD). If all is ok, you should be seeing something like:
        CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES\n
        • git, for example bundled with GitHub Desktop
        "},{"location":"howto/odk-create-repo/#2-download-the-wrapper-script-and-pull-latest-odk-version","title":"2. Download the wrapper script and pull latest ODK version","text":"
        • Linux/Mac: seed-via-docker.sh
        • PC: seed-via-docker.bat
        • Make sure to save the wrapper script in your working directory and that the filetype is correct.
        • You should have git installed - for the repo command to work perfectly, it requires a .gitconfig file in your user directory!
        • First, make sure you have Docker running (you will see the Docker whale in your toolbar on a Mac)
        • To make sure you have the latest version of the ODK installed, run in the command line

        docker pull obolibrary/odkfull

        NOTE The very first time you run this it may be slow, while docker downloads necessary images. Don't worry, subsequent runs should be much faster!

        NOTE Windows users, occasionally it has been reported that files downloaded on a Windows machine get a wrong file ending, for example seed-via-docker.bat.txt instead of seed-via-docker.bat, or, as we will see later, project.yaml.txt instead of project.yaml. If you have problems, double check your files are named correctly after the download!

        "},{"location":"howto/odk-create-repo/#3-run-the-wrapper-script","title":"3. Run the wrapper script","text":"

        You can either pass in a configuration file in YAML format that specifies your ontology project setup, or you can pass arguments on the command line. You can use dir in your command line on PC to ensure that your wrapper script, .gitconfig, and project.yaml (if you so choose) are all in the correct directory before running the wrapper script.

        "},{"location":"howto/odk-create-repo/#unix-max-linux","title":"Unix (Max, Linux)","text":"

        Passing arguments on the command line:

        ./seed-via-docker.sh -d po -d ro -d pato -u cmungall -t \"Triffid Behavior ontology\" triffo\n

        Using a the predefined project.yaml file:

        ./seed-via-docker.sh -C examples/triffo/project.yaml\n
        "},{"location":"howto/odk-create-repo/#windows","title":"Windows","text":"

        Passing arguments on the command line:

        seed-via-docker.bat -d po -d ro -d pato -u cmungall -t \"Triffid Behavior ontology\" triffo\n

        Using a the predefined project.yaml config file:

        seed-via-docker.bat -C project.yaml\n
        "},{"location":"howto/odk-create-repo/#general-instructions-for-both-linux-and-windows","title":"General instructions for both Linux and Windows","text":"
        • Instead of -u cmungall you should be using your own username (i.e. -u nico), for example for your GitHub or GitLab hosting sites.
        • You can add a -c (lowercase) just before the -C (capital c) in the command to first delete any previous attempt to generate your ontology with the ODK, and then replaces it with a completely new one. So, -c stands for clean or \"clean up previous attempts before running again\" and -C stands for \"the next parameter is the relative path to my config file\".
        • In general, we now always recommend the use of config files. The ODK has a rich set of configuration options, most of which can only be set through the config file, but in general the config also serves as documentation and will help with updating your ontology at later stages. To create a config file, you can download for example project.yaml by clicking on the link and then typing command+s on Mac or ctrl+s on Windows to save it in the same directory as your seed-via-docker script. Then you can open the file with a text editor like Notepad++, Atom, Sublime or even nano, and adapt it to your project. Other more comprehensive examples can be found here.

        This will create your starter files in target/triffid-behavior-ontology. It will also prepare an initial release and initialize a local repository (not yet pushed to your Git host site such as GitHub or GitLab).

        "},{"location":"howto/odk-create-repo/#problems","title":"Problems?","text":"

        There are three frequently encountered problems at this stage:

        1. No .gitconfig in user directory
        2. Spaces is user path
        3. During download, your filenames got changed (Windows)
        "},{"location":"howto/odk-create-repo/#no-gitconfig-in-user-directory","title":"No .gitconfig in user directory","text":"

        The seed-via-docker script requires a .gitconfig file in your user directory. If your .gitconfig is in a different directory, you need to change the path in the downloaded seed-via-docker script. For example on Windows (look at seed-via-docker.bat):

        docker run -v %userprofile%/.gitconfig:/root/.gitconfig -v %cd%:/work -w /work --rm -ti obolibrary/odkfull /tools/odk.py seed %*\n

        %userprofile%/.gitconfig should be changed to the correct path of your local .gitconfig file.

        "},{"location":"howto/odk-create-repo/#spaces-is-user-path","title":"Spaces is user path","text":"

        We have had reports of users having trouble if there paths (say, D:\\data) contain a space symbol, like D:/Dropbox (Personal) or similar. In this case, we recommend to find a directory you can work in that does not contain a space symbol.

        You can customize at this stage, but we recommend to first push the changes to you Git hosting site (see next steps).

        "},{"location":"howto/odk-create-repo/#during-download-your-filenames-got-changed-windows","title":"During download, your filenames got changed (Windows)","text":"

        Windows users, occasionally it has been reported that files downloaded on a Windows machine get a wrong file ending, for example seed-via-docker.bat.txt instead of seed-via-docker.bat, or, as we will see later, project.yaml.txt instead of project.yaml. If you have problems, double check your files are named correctly after the download!

        "},{"location":"howto/odk-create-repo/#4-push-to-git-hosting-website","title":"4. Push to Git hosting website","text":"

        The development kit will automatically initialize a git project, add all files and commit.

        You will need to create a project on you Git hosting site.

        For GitHub:

        1. Go to: https://github.com/new
        2. The owner MUST be the org you selected with the -u option. The name MUST be the one you set with -t, just with lower case letters and dashes instead of spaces. In our example above, the name \"Triffid Behavior Ontology\" translates to triffid-behavior-ontology.
        3. Do not initialize with a README (you already have one)
        4. Click Create
        5. See the section under \"\u2026or push an existing repository from the command line\"

        For GitLab:

        1. Go to: https://gitlab.com/projects/new
        2. The owner MUST be the org you selected with the -u option. The name MUST be the one you set with -t.
        3. Do not initialize with a README (you already have one)
        4. Click 'Create project'
        5. See the section under \"Push an existing Git repository\"

        Follow the instructions there. E.g. (make sure the location of your remote is exactly correct!).

        cd target/triffo\ngit remote add origin https://github.com/matentzn/triffid-behavior-ontology.git\ngit branch -M main\ngit push -u origin main\n

        Note: you can now mv target/triffid-behavior-ontology to anywhere you like in your home directory. Or you can do a fresh checkout from github.

        "},{"location":"howto/odk-create-repo/#alternative-recommendation-for-github-by-matentzn","title":"Alternative recommendation for GitHub by @matentzn","text":"

        I generally feel its easier and less error prone to deviate from the standard instructions above. I keep having problems with git, passwords, typose etc, so I tend to do it, inofficially, as follows:

        1. When my repo is created I go to my GitHub Desktop
        2. I then do File > Add local repository, and select the directory which contains my newly created repo (e.g. target/triffo).
        3. I then Click on \"Publish repository\".
        4. If I want the code to be public, I deselect \"Keep this code private\". By default, the repo will be uploaded to my own user profile on GitHub, but I can also select another Organization I have access to in the respective Dropdown menu.
        5. NOTE: there seem to be some issues with pushing a GitHub Workflow file recently - you may be asked by GitHub Desktop to provide an additional permission to push the Workflow file.
        "},{"location":"howto/odk-create-repo/#next-steps-edit-and-release-cycle","title":"Next Steps: Edit and release cycle","text":"

        In your repo you will see a README-editors.md file that has been customized for your project. Follow these instructions.

        "},{"location":"howto/odk-create-repo/#obo-library-metadata","title":"OBO Library metadata","text":"

        The assumption here is that you are adhering to OBO principles and want to eventually submit to OBO. Your repo will contain stub metadata files to help you do this.

        You can create pull requests for your ontology on the OBO Foundry. See the src/metadata file for more details.

        For more documentation, see http://obofoundry.org

        "},{"location":"howto/odk-create-repo/#additional","title":"Additional","text":"

        You will want to also:

        • enable GitHub actions

        See the README-editors.md file that has been generated for your project.

        "},{"location":"howto/odk-setup/","title":"Getting set up with Docker and the Ontology Development Kit","text":""},{"location":"howto/odk-setup/#installation","title":"Installation","text":""},{"location":"howto/odk-setup/#for-windows","title":"For Windows","text":"
        • Follow the instructions here. Note that you should have Windows 10 Professional installed for this to work. We are not sure Docker Desktop works at all with Windows 10 Home, but we have not tried in a while. If you know what you are doing, you could try to configure Docker toolbox, but we have had many issues with it, and do not recommend it unless absolutely necessary.
          • If you are unable to install Docker Desktop on your Windows PC (e.g. no admin rights or pohibited by the IT department of your institution) but you have the ability to use the Windows Hyper-V-Manager (possible w/o admin rights) or another virtualization tool, such as VirtualBox, you could set up a Linux virtual machine (VM) to use ODK. We recommend using Lubuntu, as it won't need much computing resources. Although you cannot install Docker Desktop in such a VM, you can install the Docker Engine, which suffices to proceed with the next step.
        • Once installed, you should be able to open your command line and download the ODK.
        • Click on your Windows symbol (usually in bottom left corner of screen), type \"cmd\" and you should be able to see and open the Command Line tool.
        • in the command line type, type docker pull obolibrary/odkfull. This will download the ODK (will take a few minutes, depending on you internet connection).
        • Executing something in a Docker container can be \"wordy\", because the docker container requires quite a few parameters to be run. To make this easier, we prepared a wrapper script here. You can download this file by clicking on Raw, and then, when the file is open in your browser, CTRL+S to save it. Ideally, you save this file in your project directory, the directory you will be using for your exercises, as it will only allow you to edit files in that very same directory (or one of its sub-directories).
        • Setting the memory: Typical issues (WSL 1 vs 2)
        "},{"location":"howto/odk-setup/#for-maclinux","title":"For Mac/Linux","text":"
        • Install docker: Install Docker following the official instructions.
        • Make sure its running properly, for example by typing docker ps in your terminal or command line (CMD). If all is ok, you should be seeing something like:
        CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES\n
        • Run docker pull obolibrary/odkfull on your command line to install the ODK. This will take while.
        • Download an ODK wrapper script. The odk.sh has further instruction on how to best use it.
        • Now you are ready to go to a directory containing the odk.sh wrapper script and running sh odk.sh robot --version to see whether it works.
        • The ODK wrapper script is generally useful to have: you can for example enter a ODK container, similar to a virtual machine, by simply running sh odk.sh bash (to leave the ODK container again, simply run exit from within the container). On Windows, use run.bat bash instead. However, for many of the ontologies we develop, we already ship an ODK wrapper script in the ontology repo, so we dont need the odk.sh or odk.bat file. That file is usually called run.sh or run.bat and can be found in your ontology repo in the src/ontology directory and can be used in the exact same way.
        "},{"location":"howto/odk-setup/#problems-with-memory-important","title":"Problems with memory (important)","text":"

        One of the most frequent problems with running the ODK for the first time is failure because of lack of memory. There are two potential causes for out-of-memory errors:

        1. The application (for example, the ODK release run) needs more memory than assigned to JAVA inside the ODK docker container. This memory is set as part of the ODK wrapper files, i.e. src/ontology/run.bat or src/ontology/run.sh, usually with ODK_JAVA_OPTS.
        2. The application needs more memory than is assigned to your docker installation. On most systems (apart from a handful fo Windows ones based on WSL), you have to set docker memory in the docker preferences. That happens here is that the Java memory above may be set to something like 10GB, while the maximum docker memory is set to 8GB. If the application needs, say, 9GB to run, you have assigned enough Java memory, but docker does not permit more than 8 to be used.

        Out-of-memory errors can take many forms, like a Java OutOfMemory exception, but more often than not it will appear as something like an Error 137.

        "},{"location":"howto/odk-setup/#solving-memory-issues","title":"Solving memory issues","text":""},{"location":"howto/odk-setup/#setting-memory-limits","title":"Setting memory limits:","text":"

        There are two places you need to consider to set your memory:

        1. Your ODK wrapper script (see above), i.e. odk.bat, odk.sh or src/ontology/run.sh (or run.bat) file. You can set the memory in there by adding robot_java_args: '-Xmx8G' to your src/ontology/cl-odk.yaml file, see for example here.
        2. Set your docker memory. By default, it should be about 10-20% more than your robot_java_args variable. You can manage your memory settings by right-clicking on the docker whale in your system bar-->Preferences-->Resources-->Advanced, see picture below.

        "},{"location":"howto/odk-setup/#more-intelligent-pipeline-design","title":"More intelligent pipeline design","text":"

        If your problem is that you do not have enough memory on your machine, the only solution is to try to engineer the pipelines a bit more intelligently, but even that has limits: large ontologies require a lot of memory to process when using ROBOT. For example, handling ncbitaxon as an import in any meaningful way easily consumes up to 12GB alone. Here are some tricks you may want to contemplate to reduce memory:

        • robot query uses an entirely different framework for representing the ontology, which means that whenever you use ROBOT query, for at least a short moment, you will have the entire ontology in memory twice. Sometimes you can optimse memory by seperating query and other robot commands into seperate commands (i.e. not chained in the same robot command).
        • The robot reason command consumes a lot of memory. reduce and materialise potentially even more. Use these only ever in the last possible moment in a pipeline.

        • `

        "},{"location":"howto/odk-update/","title":"Updating ODK","text":"

        A new version of the Ontology Development Kit (ODK) is out? This is what you should be doing:

        1. Install the latest version of ODK by pulling the ODK docker images. In your terminal, run:
        docker pull obolibrary/odkfull\n
        1. To update your repository, go to your src/ontology directory.
        cd myrepo/src/ontology\n
        1. Create a new git branch in your usual way (optional)

        Now run the update command TWICE (the first time it may fail, as the update command needs to update itself).

        sh run.sh make update_repo\nsh run.sh make update_repo\n
        1. Edit the following file: .github/workflows/qc.yml (from the top level of your repository) and make sure that it is using the latest version of the ODK.

        For example, container: obolibrary/odkfull:v1.3.0, if v1.3.0. Is the latest version. If you are unsure what the latest version is, you can find that information here: https://hub.docker.com/r/obolibrary/odkfull/tags

        1. OPTIONAL: if you have any other GitHub actions you would like to update to the latest ODK, now is the time! All of your GitHub actions can be found in the .github/workflows/ directory from the top level of your repo.

        2. Review all the changes and commit them, and make a PR the usual way. 100% wait for the PR to pass QC - ODK updates can be significant!

        3. Send a reminder to all other ontology developers of your repo and tell them to install the latest version of ODK (step 1 only).

        "},{"location":"howto/ontology-overview/","title":"How to prepare OBO Academy ontology overview","text":""},{"location":"howto/ontology-overview/#overview","title":"Overview","text":"

        This 'how to' guide provides a template for an Ontology Overview for your ontology. Please create a markdown file using this template and share it in your ontology repository, either as part of your ReadMe file or as a separate document in your documentation. The Ontology Overview should include the following three sections:

        1. Scope
        2. Curation and governance workflows
        3. How the ontology is used in practice
        "},{"location":"howto/ontology-overview/#scope","title":"Scope","text":"
        • Describe the domain and scope of ontology.
        • For example, the Mondo ontology covers concepts in the area of diseases across species and integrates disease terminologies from several underlying sources.
        • Include a figure of upper level terms (critical: give a list of all the high level terms that the ontology covers (1-2 levels). Eg Mondo: disease or disorder, disease susceptibility, disease characteristic).
        • Include a figure with exemplary term (using OBO graph)
        "},{"location":"howto/ontology-overview/#curation-and-governance-workflows","title":"Curation and governance workflows","text":""},{"location":"howto/ontology-overview/#ontology-curation","title":"Ontology Curation","text":"

        Describe the ontology level curation, ie how to add terms. For example, terms are added to the ontology via:

        • Manual additions via Protege
        • ROBOT templates
        • DOSDP templates
        "},{"location":"howto/ontology-overview/#governance","title":"Governance","text":"
        • How do people request new terms or changes
        • How do people contribute terms directly (ie ROBOT templates, etc) (if applicable)

        Note: There is no need for details about QC, ODK unless it is related to curation (ie pipeline that automatically generates mappings, include that)

        "},{"location":"howto/ontology-overview/#how-the-ontology-used-in-practice","title":"How the ontology used in practice","text":"

        Include 1-3 actual use cases. Please provide concrete examples.

        For example:

        1. this group uses the ontology to annotate this data for this purpose
        2. this group uses the ontology to compute phenotypic similarity for prediction of related diseases
        3. The ontology is used for named entity recognition (NER) as a dictionary as a synonym source
        "},{"location":"howto/open-science-engineer/","title":"How to be an Open Science Engineer - maximising impact for a better world","text":"

        Contributors:

        • Nicole Vasilevsky
        • Nicolas Matentzoglu
        • Bradley Varner

        Status: This is a working document! Feel free to add more content!

        The Open Science Engineer contributes to the collection and standardisation of publicly available scientific knowledge through curation, community-building and data, ontology and software engineering.

        Open Science and all its sub-divisions, including Open Data and Open Ontologies, are central to tackling global challenges from rare disease to climate change. Open licenses are only part of the answer - the really tough part is the standardisation of data (including the unification of ontologies, the FAIRification of data and adoption of common semantic data models) and the organisation of a global, fully decentralised community of Open Science engineers. Here, we will discuss some basic principles on how we can maximise our impact as members of a global community combating the issues of our time:

        1. Principle of Collaboration: How do we create a welcoming and inclusive environment for implementing social workflows and deepen our ties across project boundaries?
        2. Principle of Upstream Fixing: How can we maximise benefits to the global community by pushing fixes as far upstream as possible?
        3. Principle of No-ownership: How do we develop a sense of co-, or -no, ownership for community driven ontologies and ontology tools?

        We discuss how to best utilise social workflows to achieve positive impact. We will try to convince you that building a close collaborative international community by spending time on submitting and answering issues on GitHub, helping on Stack Overflow and other online platforms, or just reaching out and donating small amounts of time to other open science efforts can make a huge difference.

        "},{"location":"howto/open-science-engineer/#table-of-contents","title":"Table of contents","text":"
        • Principle of Collaboration
        • Principle of Upstream fixing
        • Principle of No-ownership
        • TLDR - Summary
        "},{"location":"howto/open-science-engineer/#tutorials","title":"Tutorials","text":""},{"location":"howto/open-science-engineer/#icbo-2022-presentation","title":"ICBO 2022 presentation","text":"

        For a quick 10 minute overview:

        "},{"location":"howto/open-science-engineer/#monarch-obo-training-tutorial","title":"Monarch OBO training Tutorial","text":"

        How to be an open science ontologist

        "},{"location":"howto/open-science-engineer/#principle-of-collaboration","title":"Principle of Collaboration","text":"

        The heart and soul of a successful Open Science culture is collaboration. The relative isolation into which many projects are forced due to limitations imposed by certain kinds of funding makes it even more important to develop effective social, collaborative workflows. This involve effective online communication, vocal appreciation (likes, upvotes, comments), documentation and open-ness.

        "},{"location":"howto/open-science-engineer/#question-answering-and-documentation","title":"Question answering and documentation","text":"
        1. When you find an answer on Stack Overflow, GitHub issues (or even Hacker News) that helps you, upvote it. It cannot be stressed enough how important this is to let good answers float up to the top (become more visible), and recognise the time and energy people spend formulating answers. If you do not have a Stack Overflow account, make one now.
        2. If you cannot find an answer to a question on GitHub or Stack Overflow, and you figure out a solution consider asking the question and answering it yourself! Consider this: if you provide an answer that will result in only 6 open science people spending one hour less solving a problem (a conservative estimate), you saved the taxpayer 6 hours of salary (not to speak of improving the quality of the solutions)!
        3. Answer questions on GitHub issues even when on trackers not in your purview. People often falsely assume that they should not try to answer queries in an open source project that they are not directly involved with. This is wrong! Open source developers highly (!) appreciate it when you chip in on answering queries, from dealing with errors and exceptions to \"How do I?\" kind of queries. Get involved on other peoples issue trackers!
        4. Before asking questions on slack or issue trackers, always do a basic search first. Consider (1) the project's documentation, (2) open and closed issues on the issue tracker of the project your query is related to. If you do not find the information you need try and craft questions that are concise yet give sufficient context. To enable future users to find these answers, consider using the issue tracker instead of slack! Also it is important to remember that the people that answer your questions have to spend time they could have spend on other Open Science work!
        5. Make yourself responsible for continuously improving open science documentation. If a question was answered on slack or in an issue, consider a 10 minute detour to update the documentation of the project to reflect the solution if you think it could be helpful. This is the only way to scale Open Science projects: as the user base increases, providing support on a 1:1 basis will soon be infeasible.
        6. Good documentation is as important as good quality code, and everyone can help out, even if it is \"only\" about formatting, typos and adding additional links!
        "},{"location":"howto/open-science-engineer/#social-conduct-and-review","title":"Social Conduct and review","text":"
        1. Be overly generous with likes. Being a Open Science Engineer can be quite a lonely affair: hundreds of unanswered issues and questions, pull requests that remain un-reviewed for months, projects for which you never really get credit (want to be a QC engineer, anyone?). Even if you do not have time to respond to all issues you scroll through in a day, add a like if you find an answer useful. This goes for slack comments, Tweets and random Pull Requests you have nothing to do with as well. And, perhaps most importantly star all GitHub repos that are useful to you (you could, for example, scroll through https://github.com/topics/obofoundry and star all ontologies and ontology projects useful in your work)! This is a huge deal as it significantly motivates other OSEs and therefore provides fuel to the Open Science movement.
        2. Reduce work for others as much as possible by communicating clearly.
          • Take the time to write clear responses with just the right amount of detail. The goal of your communication is to get the point across as swiftly as possible, and misunderstandings are a huge time killer.
          • Again: Sloppy, quick responses can cause more work than not responding at all!
          • Use bullet lists to structure your response, and checklists for action items.
          • Hide unnecessary details with <details> tag: <details><summary>[click arrow to expand]</summary>. See example here
          • Be generous linking external issues to provide context. Example:
        3. Be positive and generous with gratitude and attribution
          • If a member of the community opens an issue, always thank them for the issue right away. We need to encourage people to open issues.
          • Don't let issues linger without any response. It is better to respond with a thank you and some instructions for the issuer on what to do to fix the issue themselves than to let it linger. We need our stakeholders to be more involved - first time issuers are especially vulnerable and may not bother to come back if they are ignored.
          • When giving feedback, be positive, friendly and constructive.
          • Show appreciation: thank users for issues and thank a PR reviewer for their review. Always.
          • Attribute, attribute, attribute. If someone helped you sort something out emphasise this publicly!
        "},{"location":"howto/open-science-engineer/#openness","title":"Openness","text":"
        1. Promote truly open communication:
          • Contribute your thoughts openly so other people can benefit from it.
          • Don't put issues on Slack where the public can't see it. Consider moving interesting discussions on Slack into a more public space, like GitHub discussions.
          • Create public tickets which can be searched and referred to later.
        "},{"location":"howto/open-science-engineer/#principle-of-upstream-fixing","title":"Principle of Upstream Fixing","text":"

        Maximising impact of your changes is by far the best way you can benefit society as an Open Science Engineer. Open Science projects are a web of mutually dependent efforts, for example:

        • Ontologies re-use terms and axioms from other ontologies
        • Software packages provide functionality that help building Knowledge Graphs, ensuring the quality of ontology releases and extract new insights from existing knowledge and scientific facts.
        • Projects use ontologies for indexing data and making them discoverable.

        The key to maximising your impact is to push any fixes as far upstream as possible. Consider the following projects and the way they depend on each other (note that this is a gross simplification for illustration; in reality the number of dependencies is much higher):

        Let's think of the following (entirely fabricated) scenario based on the image above.

        1. Open Targets provides evidence for a gene association with some disease.
        2. This association is only supported by the IMPC data source which associates mouse and human phenotypes using the phenodigm algorithm which is based on semantic similarity.
        3. The semantic similarity scores are computed using cross-species axioms provided by the Monarch Initiative, especially uPheno.
        4. The cross-species logical axioms provided by Monarch depend on a range of lexical and logical approaches. This means the structure of uPheno is directly influenced by the naming and synonyms provided by species specific phenotype ontologies (SSPOs), such as the Human Phenotype Ontology (HPO).

        It is, therefore, possible that:

        1. A faulty synonym is accidentally added to the HPO...
        2. ...which causes a faulty logical axiom candidate in uPheno (again missed by QC measures)...
        3. ...which causes a faulty similarity value in Monarch...
        4. ...which causes a wrong disease-gene association in IMPC...
        5. ...which ultimately leads to a faulty piece of evidence in Open Targets.

        Imagine a user of Open Targets that sees this evidence, and reports it to Open Targets as a bug. Open Targets could take the easy way out: remove the erroneous record from the database permanently. This means that the IMPC (itself with hundreds of dependent users and tools), Monarch (again with many dependents), uPheno and HPO (with probably thousands of dependents) would still carry forward that (tiny) mistake. This is the basic idea of maximising impact through Upstream Fixing: The higher up-stream (up the dependency graph) an error is fixed, the more cumulative benefit there is to a huge ecosystem of tools and services.

        An even better fix would be to have each fix to the ontology result in a new, shared quality control test. For example, some errors (duplicate labels, missing definition, etc) can be caught by automated testing. Here is a cool story.

        "},{"location":"howto/open-science-engineer/#case-study-external-contribution-and-upstream-fixing","title":"Case Study: External contribution and upstream fixing","text":"
        • Over time, we have developed QC checks that ensure that the same exact synonym cannot be shared between two classes. However the checks where not perfect..
        • @vasvir (GitHub name), a member of the global community reached out to us on Uberon: https://github.com/obophenotype/uberon/issues/2424. https://github.com/obophenotype/uberon/pull/2640
        • Instead of fixing the discovered issue by ourselves, we invited @vasvir to fix the issues himself. We gave him some instructions on how to proceed, leading not only to eight new pull requests, but also an entirely new Quality Control check that augments the existing checks with case-insensitivity (Gasserian ganglion and gasserian ganglion where previously considered distinct). Note: before the PRs, @vasvir did not speak any SPARQL.
        • Members of our team helped @vasvir to see his first pull requests through by instructing them how to use the technology (robot, ODK, docker, SPARQL), and follow our pull request conventions.

        Instead of simply deleting the synonyms for his NLP projects, @vasvir instead decided to report the issues straight to the source. This way, hundreds, if not thousands of projects will directly or indirectly benefit from him!

        "},{"location":"howto/open-science-engineer/#other-examples-of-upstream-fixing","title":"Other examples of upstream fixing","text":"

        Example 1: While curating Mondo, Nicole identified issues relevant to Orphanet and created this issue.

        Example 2: There is overlap between Mondo and Human Phenotype Ontology and the Mondo and HPO curators tag each other on relevant tickets.

        Example 3: In Mondo, if new classifications are made, Mondo curators report this back to the source ontology to see if they would like to follow our classification.

        "},{"location":"howto/open-science-engineer/#conclusions-upstream-fixing","title":"Conclusions: Upstream Fixing","text":"

        Have you ever wondered how much impact changing a synonym from exact to related could have? Or the addition of a precise mapping? The fixing of a typo in a label? It can be huge. And this does not only relate to ontologies, this goes for tool development as well. We tend to work around bugs when we are building software. Instead, or at least in addition to, we should always report the bug at the source to make sure it gets fixed eventually.

        "},{"location":"howto/open-science-engineer/#principle-of-no-ownership","title":"Principle of No-ownership","text":"

        Many of the resources we develop are financed by grants. Grants are financed in the end by the taxpayer. While it is occasionally appropriate to protect open work with creative licenses, it rarely makes sense to restrict access to Open Ontologies work - neither to commercial nor research exploitation (we may want to insist on appropriate attribution to satisfy our grant developers).

        On the other side there is always the risk of well-funded commercial endeavours simply \"absorbing\" our work - and then tying stakeholders into their closed, commercial ecosystem. However, this is not our concern. We cannot really call it stealing if it is not really ours to begin with! Instead of trying to prevent unwanted commercialisation and closing, it is better to work with corporations in pre-competitive schemes such as Pistoia Alliance or Allotrope Foundation and lobby for more openness. (Also, grant authorities should probably not allow linking scientific data to less than totally open controlled vocabularies.)

        Here, we invite you to embrace the idea that ontologies and many of the tools we develop are actually community-driven, with no particular \"owners\" and \"decision makers\". While we are not yet there (we don't have sufficiently mature governance workflows for full fledged onto-communism), and most ontologies are still \"owned\" by an organisation that provides a major source of funding, we invite you to think of this as a preliminary state. It is better to embrace the idea of \"No-ownership\" and figure out social workflows and governance processes that can handle the problems of decision making.

        "},{"location":"howto/open-science-engineer/#take-responsibility-for-your-community-ontologies","title":"Take responsibility for your community (ontologies)","text":"
        1. Ensure that you see your issues and pull requests through to the end. No one will do this for you. Remember - contributors to open source projects, especially ontologies, have their own agendas, and do not automatically care about other peoples work.
        2. Feel empowered to nudge reviewers or experts to help. Get that issue answered and PR merged whatever it takes!

          Example: After waiting for the PR to be reviewed, Meghan kindly asked Nicole if she should find a different reviewer. 1. Find review buddies. For every ontology you seek to contribute to pair up with someone who will review your pull requests and you will review their pull requests. Sometimes, it is very difficult to get anyone to review your pull request. Reach out to people directly, and form an alliance for review. It is fun, and you learn new things (and get to know new people!). 1. Be proactive

          • Problem of decentralization and lack of hierarchial organisation needs proactive and brave decision makers.
          • No one will do your work for you. See your pull requests and issues through all the way to the release!
          • Learn the tools necessary to make basic fixes - just try it/do it.
          • Always have your index finger on the Edit button when reading documentation. There is always something to fix, including typos and content.
        "},{"location":"howto/open-science-engineer/#reduce-your-fear-of-breaking-the-ontology","title":"Reduce your fear of \"breaking the ontology\".","text":"
        1. Most of our ontologies have many checks in place, and GitHub has version control. Nothing has ever been broken to the point where it can't be fixed. (Remember to work on a branch!) Example: The QC checks on this PR failed 6 times before it passed.
        2. Perfect is the enemy of good enough.
        3. It's okay if your PR is rejected. Mentally, prepare yourself for having the PR rejected. This is fine - the community always looks to the best possible way to change the ontology. The next PR will be accepted!
        4. If you make a mistake, and it is pointed out during pull request review, consider adding an appropriate QC check to prevent the issue from happening again. And who knows - maybe you have an opportunity to fix past mistakes!
        "},{"location":"howto/open-science-engineer/#tldr-summary","title":"TLDR - Summary","text":"
        • Principle of Collaboration
          • Upvote answers, on Stack Overflow, GitHub and any other open communication platform.
          • Get involved on other peoples issue trackers.
          • Always do a basic search before asking.
          • Continuously improve Open Science documentation.
          • Be overly generous with likes.
          • Always strive to reduce work for other members of the community.
          • Be positive and generous with gratitude and attribution.
          • Promote open communication (less slack, more GitHub).
        • Principle of Upstream fixing
          • The key to maximising your impact is to push any fixes as far upstream as possible.
          • When you experience a problem, always report it to the immediate source. If you can report it as high upstream as possible.
          • In a perfect world, provide a fix in the form of a pull request.
        • Principle of No-ownership
          • See your issues and pull requests through to the end (dont drop the ball, no one will do your work for you)
          • Feel empowered to nudge reviewers until they tell you not to.
          • Find review buddies (this is really helpful to organise community work).
          • Be proactive... and brave.
          • Reduce your fear of breaking the ontology.
          • Reduce your fear of getting a pull request rejected.
          • Reduce other peoples fear of breaking the ontology by adding additional QC checks.
        "},{"location":"howto/prettify/","title":"Prettify markdown files","text":""},{"location":"howto/prettify/#description","title":"Description","text":"

        Prettier standardizes the representation and formatting of Markdown. More information is available at https://prettier.io/. Note, these instructions are for a Mac.

        "},{"location":"howto/prettify/#install-npm","title":"Install npm","text":"

        If you do not have npm installed, this can be installed using homebrew (if you have homebrew installed).

        brew install node

        "},{"location":"howto/prettify/#install-prettier-locally","title":"Install Prettier locally","text":"
        1. Run npm install --save-dev --save-exact prettier
        "},{"location":"howto/prettify/#prettify-your-files","title":"Prettify your files","text":"
        1. Create a new branch
        2. Navigate to your root directory containing obook
        3. Run npx prettier --write .
        4. Commit to your branch and create a pull request
        "},{"location":"howto/protege-browse-search/","title":"Browsing and Searching","text":""},{"location":"howto/protege-browse-search/#open-the-ontology-in-protege","title":"Open the ontology in Prot\u00e9g\u00e9","text":"

        Note: Windows users should open Protege using run.bat Note: For the purpose of this how-to, we will be using MONDO as the ontology

        1. Navigate to where you downloaded the repository and open the mondo-edit.obo file (src/ontology/mondo-edit.obo)
        2. When you open Protege, you will be on the Active Ontology tab
        3. Note the Ontology IRI field. The IRI is used to identify the ontology on the Web.

        "},{"location":"howto/protege-browse-search/#the-protege-ui","title":"The Prot\u00e9g\u00e9 UI","text":"

        The Prot\u00e9g\u00e9 interface follows a basic paradigm of Tabs and Panels. By default, Prot\u00e9g\u00e9 launches with the main tabs seen below. The layout of tabs and panels is configurable by the user. The Tab list will have slight differences from version to version, and depending on your configuration. It will also reflect your customizations.

        To customize your view, go to the Window tab on the toolbar and select Views. Here you can customize which panels you see in each tab. In the tabs view, you can select which tabs you will see. You will commonly want to see the Entities tab, which has the Classes tab and the Object Properties tab.

        Note: if you open a new ontology while viewing your current ontology, Prot\u00e9g\u00e9 will ask you if you'd like to open it in a new window. \u00a0For most normal usage you should answer no. This will open in a new window.

        The panel in the center is the ontology annotations panel. This panel contains basic metadata about the ontology, such as the authors, a short description and license information.

        "},{"location":"howto/protege-browse-search/#running-the-reasoner","title":"Running the reasoner","text":"

        Before browsing or searching an ontology, it is useful to run an OWL reasoner first. This ensures that you can view the full, intended classification and allows you to run queries. Navigate to the query menu, and run the ELK reasoner:

        "},{"location":"howto/protege-browse-search/#entities-tab","title":"Entities tab","text":"

        You will see various tabs along the top of the screen. Each tab provides a different perspective on the ontology. For the purposes of this tutorial, we care mostly about the Entities tab, the DL query tab and the search tool. OWL Entities include Classes (which we are focussed on editing in this tutorial), relations (OWL Object Properties) and Annotation Properties (terms like, 'definition' and 'label' which we use to annotate OWL entities. Select the Entities tab and then the Classes sub-tab. Now choose the inferred view (as shown below).

        The Entities tab is split into two halves. The left-hand side provides a suite of panels for selecting various entities in your ontology. When a particular entity is selected the panels on the right-hand side display information about that entity. The entities panel is context specific, so if you have a class selected (like Thing) then the panels on the right are aimed at editing classes. The panels on the right are customizable. Based on prior use you may see new panes or alternate arrangements. You should see the class OWL:Thing. You could start browsing from here, but the upper level view of the ontology is too abstract for our purposes. To find something more interesting to look at we need to search or query.

        "},{"location":"howto/protege-browse-search/#searching-in-protege","title":"Searching in Protege","text":"

        You can search for any entity using the search bar on the right:

        The search window will open on top of your Protege pane, we recommend resizing it and moving it to the side of the main window so you can view together.

        Here's an example search for 'COVID-19':

        It shows results found in display names, definitions, synonyms and more. The default results list is truncated. To see full results check the 'Show all results option'. You may need to resize the box to show all results. Double clicking on a result, displays details about it in the entities tab, e.g.

        In the Entities, tab, you can browse related types, opening/closing branches and clicking on terms to see details on the right. In the default layout, annotations on a term are displayed in the top panel and logical assertions in the 'Description' panel at the bottom.

        Try to find these specific classes:

        • 'congenital heart disease'
        • 'Kindler syndrome'
        • 'kidney failure'

        Note - a cool feature in the search tool in Protege is you can search on partial string matching. For example, if you want to search for \u2018down syndrome\u2019, you could search on a partial string: \u2018do synd\u2019.

        • Try searching for \u2018br car and see what kind of results are returned.
        • Question: The search will also search on synonyms. Try searching for \u2018shingles\u2019 and see what results are returned. Were you able to find the term?

        Note - if the search is slow, you can uncheck the box \u2018Search in annotation values. Try this and search for a term and note if the search is faster. Then search for \u2018shingles\u2019 again and note what results you get.

        "},{"location":"howto/revert-commit/","title":"How to revert a commit using GitHub Desktop","text":""},{"location":"howto/revert-commit/#prerequisites","title":"Prerequisites","text":"

        You need to have a GitHub account GitHub and download GitHub Desktop

        "},{"location":"howto/revert-commit/#background","title":"Background","text":""},{"location":"howto/revert-commit/#reversing-a-commit","title":"Reversing a commit","text":"
        1. Create a new branch in GitHub Desktop (Important step! Never make changes to the master branch!)
        2. Click on History tab.
        3. Find commit you want to revert.
        4. Right click. Click on 'Reverse Changes in Commit' from the drop-down list.
        5. Fix any conflicts.
        6. Commit branch, create pull request and assign a reviewer.
        "},{"location":"howto/revert-commit/#contributors","title":"Contributors","text":"
        • Arwa Ibrahim
        "},{"location":"howto/review-disease-mappings/","title":"Reviewing disease mappings for Biocurators and Clinicians","text":""},{"location":"howto/review-disease-mappings/#description","title":"Description","text":"

        This guide provides guidelines on how to rapidly review large scale efforts to create mappings between ontology classes.

        Mapping can be created using tools like OAK to generate a bunch of mapping candidates. A reviewer then needs to determines whether the mapping is correct or not.

        Refer to Are these two entities the same? A guide. for a comprehensive guide on determining a specific mapping.

        "},{"location":"howto/review-disease-mappings/#guidelines","title":"Guidelines","text":"
        1. Depending on the format of the table you are reviewing, it is recommended that you open the table in a google spreadsheet, to allow for collaborative work and to allow yourself to add notes in a new column, or add formatting or color coding.
        2. Hide any columns that are not relevant, to make it easier to quickly compare the mappings. For example, in the table below, you may want to hide the mapping_justification column, mapping_tool. You can also move the columns around so the labels are next to each other.
        3. Look at the confidence score for the mapping and look at the lower confidence scores first, as these are more likely to have issues.
        4. Review the label of the mappings. Note, matching on the label is not always sufficient to conclude two terms are equivalent. Ideally, reviewers should compare the definitions of each term to ensure they have the same meaning.
        5. Review how the match was made. If it is a lexical match, matching on labels, it is likely the mapping is correct but this should ideally be confirmed by reviewing the definitions as mentioned above.
        6. If matches are made based on shared xrefs, these should be carefully reviewed because not all mapping between terminologies are intended to be equivalent xrefs. For example: MONDO:0000509 non-syndromic intellectual disability was mapped to DOID:0081098 autosomal recessive intellectual developmental disorder 13 based on the shared xref OMIM:613192. The Mondo class is broader than this DO class and this is not an exact mapping.
        7. Watch out for matching on acronyms. Acronyms can mean a lot of different things and sometimes the mapping tools will incorrectly match on acronyms.
        "},{"location":"howto/review-disease-mappings/#example-mappings","title":"Example mappings","text":"subject_id subject_label predicate_id object_id object_label mapping_justification mapping_tool confidence subject_match_field object_match_field match_string comment ID A oboInOwl:hasDbXref >A oboInOwl:source >A sssom:object_label MONDO:0000159 bone marrow failure syndrome MONDO:equivalentTo NCIT:C165614 Bone Marrow Failure Syndrome semapv:LexicalMatching oaklib 0.849778895 rdfs:label rdfs:label bone marrow failure syndrome LEXMATCH MONDO:0000376 respiratory system cancer MONDO:equivalentTo NCIT:C4571 Malignant Respiratory System Neoplasm semapv:LexicalMatching oaklib 0.8 oio:hasExactSynonym rdfs:label malignant respiratory system neoplasm LEXMATCH MONDO:0000437 cerebellar ataxia MONDO:equivalentTo NCIT:C26702 Ataxia semapv:LexicalMatching oaklib 0.8 oio:hasExactSynonym rdfs:label ataxia LEXMATCH MONDO:0000541 jejunal adenocarcinoma MONDO:equivalentTo NCIT:C181158 Jejunal Adenocarcinoma semapv:LexicalMatching oaklib 0.849778895 rdfs:label rdfs:label jejunal adenocarcinoma LEXMATCH MONDO:0000543 ovarian melanoma MONDO:equivalentTo NCIT:C178441 Ovarian Melanoma semapv:LexicalMatching oaklib 0.849778895 rdfs:label rdfs:label ovarian melanoma LEXMATCH MONDO:0000665 apraxia MONDO:equivalentTo NCIT:C180557 Apraxia semapv:LexicalMatching oaklib 0.849778895 rdfs:label rdfs:label apraxia LEXMATCH MONDO:0000705 Clostridium difficile colitis MONDO:equivalentTo NCIT:C180523 Clostridium difficile Infection semapv:LexicalMatching oaklib 0.8 oio:hasExactSynonym rdfs:label clostridium difficile infection LEXMATCH MONDO:0000736 dyschromatosis universalis hereditaria MONDO:equivalentTo NCIT:C173131 Dyschromatosis Universalis Hereditaria semapv:LexicalMatching oaklib 0.849778895 rdfs:label rdfs:label dyschromatosis universalis hereditaria LEXMATCH"},{"location":"howto/review-pull-request/","title":"How to review a pull request","text":"

        Pull Requests are GitHub's mechanism for allowing one person to propose changes to a file (which could be a chunk of code, documentation, or an ontology) and enabling others to comment on (review) the proposed changes. You can learn more about creating Pull Requests (PRs) here; this document is about reviewing other people's PRs.

        One key aspect of reviewing pull requests (aka code review or ontology change review) is that the purpose is not just to improve the quality of the proposed change. It is also about building shared coding habits and practices and improving those practices for all engineers (ontology and software) across a whole organisation (effectively building the breadth of project knowledge of the developers and reducing the amount of hard-to-understand code).

        Reviewing is an important aspect of open science and engineering culture that needs to be learned and developed. In the long term, this habit will have an effect on the growth and impact of our tools and ontologies comparable to the engineering itself.

        It is central to open science work that we review other people's work outside our immediate team. We recommend choosing a few people with whom to mutually review your work, whether you develpo ontologies, code or both. It is of great importance that pull requests are addressed in a timely manner, ideally within 24 hours of the request. The requestor is likely in the headspace of being receptive to changes and working hard to get the code fixed when they ask for a code review.

        "},{"location":"howto/review-pull-request/#overarching-workflow","title":"Overarching workflow","text":"
        1. Understand the Context: First, read the description of the pull request (PR). It should explain what changes have been made and why. Understand the linked issue or task related to this PR. This will help you understand the context of the changes.

        2. Check the Size: A good PR should not be too large, as this makes it difficult to understand the full impact of the changes. If the PR is very large, it may be a good idea to ask the author to split it into smaller, more manageable PRs.

        3. Review the Code: Go through the code changes line by line. Check the code for clarity, performance, and maintainability. Make sure the code follows the style guide and best practices of your project. Look out for any potential issues such as bugs, security vulnerabilities, or performance bottlenecks.

        4. Check the Tests: The PR should include tests that cover the new functionality or changes. Make sure the tests are meaningful, and they pass. If the project has a continuous integration (CI) system, all tests should pass in the CI environment. In some cases, manual testing may be helpful (see below).

        5. Check the Documentation: If the PR introduces new functionality, it should also update the documentation accordingly. Even for smaller changes, make sure that comments in the code are updated.

        6. Give Feedback: Provide constructive feedback on the changes. If you suggest changes, explain why you think they are necessary. Be clear, respectful, and concise. Remember, your goal is to help improve the quality of the code.

        7. Follow Up: After you have provided feedback, check back to see if the author of the PR has made the suggested changes. You might need to have a discussion or explain your points further.

        8. Approve/Request Changes: If you are satisfied with the changes and all your comments have been addressed, approve the PR. If not, request changes and explain what should be done before the PR can be approved.

        9. Merge the PR: Once the PR is approved and all CI checks pass, it can be merged into the main branch. If your project uses a specific merge strategy (like squash and merge or rebase and merge), make sure it's followed.

        "},{"location":"howto/review-pull-request/#how-to-review-the-code-ontology-changes-thoroughly","title":"How to review the code / ontology changes thoroughly","text":"
        1. Ensure that the PR links to a related issue that explains the context of the PR. If there is no issue, request that an issue be created to motivate the change in the PR (gently - accept if the answer is negative).
        2. Understand the Context: Begin by familiarizing yourself with the purpose of the changes. Read the description of the pull request, any linked issues or tasks, and understand the feature or bug that the pull request is addressing.
        3. Ensure that all changes in the PR are intentional. Changes should be small. If there are a lot of unrelated changes, in particular line ending changes, serialisation changes in ontology (e.g. a lot of added xsd:string declarations), request before doing a review to reduce the changes to only the changes pertaining to the specific issue at hand.
        4. Review the Code Structure: Look at the overall structure of the code. Check if the code is organized logically and consistently, follows the project's coding conventions, and the changes are made in the right place.
          • For software, consider factors like whether the code is in an approporiate location (files, modules). If there are no specific coding standards for the project, suggest that such standards be created.
          • For ontologies, check that the change is to the right file (edit file, DOSDP patterns, ROBOT templates etc.).
        5. Check the Code Quality: Review the code in detail. Look for any programming errors, potential performance issues, or security vulnerabilities. The code should be clean, efficient, and easy to understand. Pay attention to the naming conventions, error handling, edge cases, and potential bugs.
          • The two items below are where you should spend most of your time:
        6. Review the Tests: Ensure that the PR includes tests and that they cover all important aspects of the new code. Check if all tests pass, and if the project has a continuous integration (CI) system, ensure all CI checks pass as well.
          • For ontologies, it is essential that a bug fix is augmented by a test that can recognise the same bug happening again in the future!
          • For code, it is a bit of a judgment call whether a test is needed, but in general, we have to have at least thorough integration tests that touch the feature affected by the pull request.
        7. Test the Changes Manually (use with care): Depending on the change, it may be a good idea to check out the PR branch and test the changes manually. This can help catch issues that are not covered by automated tests, or may be necessary if the diff is too large for a normal review. Note that this is an instance of Guru Testing and should only be used when there is a sense that automated testing is incomplete. If at all possible, an automated test should be run immediately after the manual review is done. Examples of where this kind of manual review may be appropriate are cases where, for example, a lot of the class hierarchy of an ontology is affected by a change. Manual review may catch issues such as missing superclasses which are hard to capture through automated testing.
        8. Provide Constructive Feedback: Provide clear, respectful, and constructive feedback. Highlight the parts of the code that you think are good and the parts that need improvement. Request changes if necessary, and approve the PR once you're satisfied with the changes.
        "},{"location":"howto/review-pull-request/#how-to-review-a-pull-request-in-5-min","title":"How to review a pull request in 5 min","text":"

        In many cases, we may not have the time to perform a proper code review. In that case, try at least to achieve this:

        1. Ensure that the PR has a related issue that explains the context of the PR (see above).
        2. Ensure that all changes in the PR are intentional (see above).
        3. File and structure overview: Scan through the files and directories that have been modified. Note the overall structure of the changes, and look for any unusual modifications (e.g., changes in areas not related to the stated purpose of the PR, or large diffs that are not explained by the PR description).
        4. Random code sampling: Instead of trying to read every line, pick a few sections of code at random to review. Pay attention to the cleanliness of the code, and see if there are any glaring issues or departures from the project's coding conventions.
        5. Check automated tests and results: Review the tests that have been added or modified. Check the results of the tests and automated build processes, if available. Even in a quick review, the status of the tests can provide useful information about the quality of the changes.
        6. Provide high-level feedback: Based on your quick review, provide high-level feedback. This could include praising good practices you've noticed, pointing out major concerns or areas that seem off, or simply acknowledging the work with a comment.
        "},{"location":"howto/screenshot/","title":"Create Screenshot and paste into an issue","text":""},{"location":"howto/screenshot/#description","title":"Description","text":"

        The instructions below describe how to capture a screenshot of your screen, either your entire screen or a partial screenshot. These can be pasted into GitHub issues, pull requests or any markdown file.

        "},{"location":"howto/screenshot/#screenshot-instructions-mac","title":"Screenshot Instructions (Mac)","text":"
        1. Full screen: Hit the Command, Shift and 3 keys together to take a screenshot of the entire screen
        1. Partial screen: Hit the Shift, Control, Command and 4 keys together to take a screenshot of a portion of the screen. Crosshairs will appear and select the portion you would like to capture.
        1. Paste the partial screenshot into comment box in GitHub.
        "},{"location":"howto/screenshot/#video-explanation-partial-screenshot-on-a-mac","title":"Video explanation: Partial screenshot on a Mac","text":""},{"location":"howto/screenshot/#screenshot-instructions-pc","title":"Screenshot Instructions (PC)","text":""},{"location":"howto/screenshot/#use-the-snipping-tool-available-with-windows-10","title":"Use the Snipping Tool (available with Windows 10)","text":"
        1. The easiest way to elicit the tool is to press Windows logo key + Shift + S to open a dialog window to select the type of screen capture you would like to do. 1. Options exist for free form, rectangular, window or full screen snips.
        2. After snipping, a notification dialog pops up so the user can select the location to save or annotate the screenshot. Otherwise, the default setting is to save to the clipboard.
        "},{"location":"howto/screenshot/#use-your-keyboard","title":"Use your keyboard","text":"

        Different keyboards have different keys. One of the following options should work:

        1. Fn + Print Screen is an option on some keyboards
        2. PrtScn or PrtSc
        3. Hit Shift, Window, S keys together to take a screenshot. You will be able to resize the screenshot as needed.
        "},{"location":"howto/screenshot/#reference","title":"Reference","text":"
        • Wikihow Take a Screenshot on a Mac
        • Using snipping tools to capture screenshots is described here.
        "},{"location":"howto/set-up-protege/","title":"Setup Protege 5.6.2","text":"

        (This was adopted from the Gene Ontology editors guide and Mondo documentation). Updated 2023-08-16 by Nicole Vasilevsky

        "},{"location":"howto/set-up-protege/#mac-instructions","title":"Mac Instructions","text":"

        These instructions are for Mac OS

        "},{"location":"howto/set-up-protege/#protege-version","title":"Protege version","text":"

        As of February 2023, OBO ontology editors are using Protege version 5.6.2.

        "},{"location":"howto/set-up-protege/#download-and-install-protege","title":"Download and install Protege","text":"
        • Get Protege from protege.stanford.edu
        • Unzip and move the Protege app to your Applications folder.
        • See Install_Protege5_Mac for more instructions and troubleshooting common problems.
        "},{"location":"howto/set-up-protege/#increase-memory-in-protege-562","title":"Increase memory in Protege 5.6.2","text":"

        Protege needs at least 4G of RAM to cope with large ontologie like Mondo, ideally use 12G or 16G if your machine can handle it. Edits to the Protege configuration files will not take effect until Protege is restarted.

        1. If running from Protege.app on a Mac, open the /Applications/Protege-5.6.2/Prot\u00e9g\u00e9.app/Contents/conf/jvm.conf file
        2. set the heap size to 12G: max_heap_size=12G
        "},{"location":"howto/set-up-protege/#increase-memory-in-protege-550","title":"Increase memory in Protege 5.5.0","text":"
        1. If running from Protege.app on a Mac, open the /Applications/Protege-5.5.0/Prot\u00e9g\u00e9.app/Contents/info.plist file
        2. Below the line: <string>-Xss16M</string>
        3. Insert another line: <string>-Xmx12G</string>

        Some Mac users might find that the edits need to be applied to /Applications/Prot\u00e9g\u00e9.app/Contents/Info.plist.

        "},{"location":"howto/set-up-protege/#pc-instructions","title":"PC Instructions","text":"

        Taken in part from Memory Management with Prot\u00e9g\u00e9 by Michael DeBellis. Updated by Nicole Vasilevsky.

        The following instructions will probably not work if Prot\u00e9g\u00e9 was installed from the platform independent version, which does not include the Java Runtime Environment or a Windows .exe launcher.

        • Visit https://protege.stanford.edu/
        • Click orange DOWNLOAD NOW button
        • Click gray Download for Windows button on subsequent page
        • Register if desired, or skip registration
        • Find Protege-<version>-win.zip
        • most likely in your Downloads directory (or in This PC directory)
        • current version is Protege-5.5.0-win.zip
        • Unzip the downloaded file with your favorite file compression utility
        • You should see the Protege application and a file called 'run'
        • To open Protege, double-click the 'run' file. This will open cmd.exe and it will take a bit to open the file.
        • The fonts used by Prot\u00e9g\u00e9 may be very small, especially on some high resolution monitors. To increase the font size, go to File -> Preferences -> Renderer -> Font size.
        • Exit Prot\u00e9g\u00e9 after confirming that it can be launched.
        • There should be a Protege.l4j.ini in the same directory as Protege.exe. Opening large ontologies like MONDO will require an increase to Protege's default maximum Java heap size, which is symbolized as -Xmx<size>. 4GB is usually adequate for opening MONDO, as long as 4GB of free memory is really available on your system before you launch Prot\u00e9g\u00e9! Allocating even more memory will improve some tasks, like reasoning. You can check your available memory by launching the Windows Task Manager, clicking on the More details button on the bottom of the window and then checking the Performance tab at the top of the window.
        • It's recommended to make a backup of Protege.l4j.ini before editing

        Open Protege.l4j.ini with a lightweight text editor like Atom or Sublime. Using notepad.exe instead might work, but may change character encodings or the character(s) used to represent End of Line.

        After increasing the memory available to Prot\u00e9g\u00e9, Protege.l4j.ini might look like this.

        -Xms200M\n-Xmx4G\n-Xss16M\n

        Note that there is no whitespace between -Xmx, the numerical amount of memory, and the Megabytes/Gigabytes suffix. Don't forget to save.

        Taking advantage of the memory increase requires that Prot\u00e9g\u00e9 is shut down and relaunched, if applicable. The methods discussed here may not apply if Prot\u00e9g\u00e9 is launched through any method other than double clicking Protege.exe from the folder where the edited Protege.l4j.ini resides.

        "},{"location":"howto/set-up-protege/#note-on-increasing-memory","title":"Note on increasing memory","text":"

        If you have issues opening Protege, then reduce the memory, try 10G (or lower) instead.

        "},{"location":"howto/set-up-protege/#add-elk-reasoner","title":"Add ELK reasoner","text":"

        See instructions here. Note: Protege 5.6.1 has the ELK reasoner installed.

        "},{"location":"howto/set-up-protege/#instructions-for-new-protege-users","title":"Instructions for new Protege users","text":""},{"location":"howto/set-up-protege/#setting-your-id-range","title":"Setting your ID range","text":"

        See instructions here.

        "},{"location":"howto/set-up-protege/#user-details","title":"User details","text":"
        1. User name Click Use supplied user name: add your name (ie nicolevasilevsky)
        2. Check Use Git user name when available
        3. Add ORCID. Add the ID number only, do not include https://, ie 0000-0001-5208-3432
        "},{"location":"howto/set-up-protege/#setting-username-and-auto-adding-creation-date","title":"Setting username and auto-adding creation date","text":"
        1. In the Protege menu, go to Preferences > New Entities Metadata tab
        2. Check Annotate new entities with creator (user) box
        3. Creator property Add http://purl.org/dc/terms/contributor
        4. Creator value Select Use ORCID
        5. Date property Add http://purl.org/dc/terms/date
        6. Date value format Select ISO-8601
        "},{"location":"howto/set-up-protege/#install-protege-obo-plugin","title":"Install Protege OBO plugin","text":"

        This plugin enables some extra functionality, such as the option to obsolete entities from the menu. To install it:

        1. Go to File > Check for plugins....
        2. Click on OBO Annotations Editor and click on Install.
        3. Restart Protege for the plugin to be active.
        4. You should now have the option to obsolete entities in Edit > Make entity obsolete.
        5. You can see a list of all installed plugins in Preferences > Plugins.
        "},{"location":"howto/setup-docker/","title":"Set up docker","text":"
        • Follow the instructions here (note these instructions are for a Mac).
        • Once installed, you should be able to open your command line and download the ODK.
          • Open Terminal
          • in the command line type, type docker pull obolibrary/odkfull. This will download the ODK (will take a few minutes, depending on you internet connection).
        • Setting the memory: Set memory ~60% of your system memory, for example, if you have 16GB of RAM, then you should assign 10-11.
        "},{"location":"howto/setup-ontology-development-odk/","title":"Getting set up to manage ontology pipelines with the ODK","text":"
        1. Set up docker and install the ODK (howto)
        2. To warm up with ODK development, follow the ODK Tutorial here
        "},{"location":"howto/switching-ontologies/","title":"Switching Ontologies in Protege","text":"

        By: Nicole Vasilevsky

        Note: This applies to Protege 5.5.0 and below. Protege 5.6 manages ID ranges for you automatically and these instructions are not needed.

        "},{"location":"howto/switching-ontologies/#description","title":"Description","text":"

        When you edit an ontology, you need to make sure you are using the correct prefix and your assigned ID range for that on ontology. Protege (unfortunately) does not remember the last prefix or ID range that you used when you switch between ontologies. Therefore we need to manually update this each time we switch ontologies.

        "},{"location":"howto/switching-ontologies/#instructions","title":"Instructions","text":"
        1. When you switch to a new ontology file, open your preferences in Protege (File -> Preferences).
        2. Be sure you are on the New entities tab.
        3. Add the Prefix for the ontology you are working on.
        4. If you don't know your ID range, go to the ID ranges file for that ontology (it should be in src/ontology/[ontology-name]-idranges.owl. (For example, src/ontology/mondo-idranges.owl.)
        5. Copy and paste in the start and end values for your ID range.
        "},{"location":"howto/switching-ontologies/#tips","title":"Tips","text":"
        1. I work on many ontologies, so I keep a note in OneNote (or Evernote) that keeps track of all my ID ranges for quick reference.
        2. You don't need to track the last ID that was used, Protege will know to pick the next ID in your range. For example, if your ID range is 8000000 to 8999999, you can enter that as your range, even if you have already added 10 terms within your range. Protege will know to assign the next ID as 8000011.
        "},{"location":"howto/switching-ontologies/#video-explanation","title":"Video Explanation","text":""},{"location":"howto/term-request/","title":"Make term requests to existing ontologies","text":""},{"location":"howto/term-request/#prerequisites","title":"Prerequisites","text":"

        You need to have a GitHub account to make term requests. Sign up for a free GitHub account.

        "},{"location":"howto/term-request/#background","title":"Background","text":""},{"location":"howto/term-request/#recommended-reading","title":"Recommended reading","text":"

        This guide on How to select and request terms from ontologies by Chris Mungall provides some helpful background and tips for making term requests.

        "},{"location":"howto/term-request/#why-make-a-new-term-request","title":"Why make a new term request?","text":"

        Onologies are under constant development and are continuously expanded and iterated upon. You may discover that a term you need is not available in your preferred ontology. In this case, please make a new term request to the ontology.

        "},{"location":"howto/term-request/#making-term-requests-to-existing-ontologies","title":"Making term requests to existing ontologies","text":"

        In the following text below, we describe best practices for making a term request to an ontology. In general, requests for new terms are make on the ontology GitHub issue tracker. For example, this is the GitHub issue tracker for the Uberon Anatomy onology.

        Note: These are suggestions and not strict rules. We appreciate your contributions to extending and improving ontologies. Following best guidelines is appreciated by the curators and developers, and assists them in addressing your issue more quickly. However, we understand if you are not always able to follow these best practices. Please add as much information as possible, and if there are any questions, the ontology developer may follow up with you for further clarification.

        "},{"location":"howto/term-request/#making-a-new-term-request","title":"Making a new term request","text":"
        1. Go to the ontology issue tracker in GitHub
        2. Select New issue
        3. Pick appropriate template (if applicable)
        4. If there is a template, fill in the information that is requested on the template below each header.
        5. General information that should be included in a new term request:
        6. Preferred label: Your preferred name or label for the new term. Note- new term request should not match existing terms or synonyms.
        7. Parent: The parent or superclass for that term. Remember that ontologies use subsumption reasoning, meaning that a subclass/child will inherit all the properties of the parent. In most ontologies, terms can have multiple classification, means terms can be classified under more than one parent. Note: You can use a ontology search enginge like OLS to double check your class does not already exist and to search for parent terms in your respective ontology.
        8. Definition: Please write a concise definition of your term (see this guide on writing good ontology definitions).
        9. Definition database cross-reference(s): Indicate the source or database cross-reference(s) or source for the definition, such as a PubMed ID (PMID) or reference to a website.
        10. Synonym(s): an alternative term that has the same or closely related meaning for your new term. Please indicate the synonym scope (see more details below).
        11. Synonym database cross-reference(s): Provide a database cross-reference or source for the synonym, if applicable.
        12. Your ORCID or the URL for your working group, if applicable. If you do not have an ORCID, you can sign up for one for free here. Note: You can link your ORCID in your GitHub profile.
        13. Comments: You can add any additional comments at the end. Please indicate if the comment should be included as a 'comment' annotation on the ontology term.
        14. Click Submit New Issue
        15. An ontology curator will review your issue and follow up with you if more information is needed.
        "},{"location":"howto/term-request/#synonym-scopes","title":"Synonym scopes:","text":"
        • Exact - an exact match
        • Narrow - more specific term
        • Broad - more general term
        • Related - a word of phrase has been used synonymously with the primary term name in the literature, but the usage is not strictly correct
        "},{"location":"howto/term-request/#formatting","title":"Formatting:","text":"
        1. For most ontologies, the preferred term labels should be lowercase (unless it is a proper name or abbreviation)
        2. Write the request below the prompts on the template so the Markdown formatting displays properly
        3. Synonyms should be lowercase (with exceptions above)
        4. Definition source - if from PubMed, please use the format PMID:XXXXXX (no space)
        5. Include the ID and label for the parent term
        "},{"location":"howto/term-request/#submitting-other-issues","title":"Submitting other issues","text":"
        • Users may want to request other types of changes to an ontology such as Mondo beyond just adding a new term.
        • Other types of requests may include changes to the classification, typos, bugs, etc.
        • Some ontologies have other templates available on their issue tracker. Select the appropriate template. If there is not an appropriate template available, scroll to the bottom and select 'open a blank issue'.
        "},{"location":"howto/term-request/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        "},{"location":"howto/update-import/","title":"Update Imports Workflow","text":"

        This page discusses how to update the contents of your imports using the ODK, like adding or removing terms.

        Note: This is a specialised how-to for ODK managed ontologies and is replicated from ODK docs to consolidate workflows in the obook. Not all ontologies use ODKs and many ontologies have their own workflows for imports, please also check with your local ontology documents and/or developers.

        Note: The extract function in ROBOT can also be used to extract subsets from onotlogies for modular imports without the use of the ODK. For details on that, please refer to the ROBOT documentation

        "},{"location":"howto/update-import/#importing-a-new-term","title":"Importing a new term","text":"

        Note: some ontologies now use a merged-import system to manage dynamic imports, for these please follow instructions in the section title \"Using the Base Module approach\".

        Importing a new term is split into two sub-phases:

        1. Declaring the terms to be imported
        2. Refreshing imports dynamically
        "},{"location":"howto/update-import/#declaring-terms-to-be-imported","title":"Declaring terms to be imported","text":"

        There are three ways to declare terms that are to be imported from an external ontology. Choose the appropriate one for your particular scenario (all three can be used in parallel if need be):

        1. Protege-based declaration
        2. Using term files
        3. Using the custom import template
        "},{"location":"howto/update-import/#protege-based-declaration","title":"Protege-based declaration","text":"

        This workflow is to be avoided, but may be appropriate if the editor does not have access to the ODK docker container. This approach also applies to ontologies that use base module import approach.

        1. Open your ontology (edit file) in Protege (5.5+).
        2. Select 'owl:Thing'
        3. Add a new class as usual.
        4. Paste the full iri in the 'Name:' field, for example, http://purl.obolibrary.org/obo/CHEBI_50906.
        5. Click 'OK'

        Now you can use this term for example to construct logical definitions. The next time the imports are refreshed (see how to refresh here), the metadata (labels, definitions, etc) for this term are imported from the respective external source ontology and becomes visible in your ontology.

        "},{"location":"howto/update-import/#using-term-files","title":"Using term files","text":"

        Every import has, by default a term file associated with it, which can be found in the imports directory. For example, if you have a GO import in src/ontology/go_import.owl, you will also have an associated term file src/ontology/go_terms.txt. You can add terms in there simply as a list:

        GO:0008150\nGO:0008151\n

        Now you can run the refresh imports workflow) and the two terms will be imported.

        "},{"location":"howto/update-import/#using-the-custom-import-template","title":"Using the custom import template","text":"

        This workflow is appropriate if:

        1. You prefer to manage all your imported terms in a single file (rather than multiple files like in the \"Using term files\" workflow above).
        2. You wish to augment your imported ontologies with additional information. This requires a cautionary discussion.

        To enable this workflow, you add the following to your ODK config file (src/ontology/cl-odk.yaml), and update the repository (using sh run.sh make update_repo):

        use_custom_import_module: TRUE\n

        Now you can manage your imported terms directly in the custom external terms template, which is located at src/templates/external_import.owl. Note that this file is a ROBOT template, and can, in principle, be extended to include any axioms you like. Before extending the template, however, read the following carefully.

        The main purpose of the custom import template is to enable the management off all terms to be imported in a centralised place. To enable that, you do not have to do anything other than maintaining the template. So if you, say current import APOLLO_SV:00000480, and you wish to import APOLLO_SV:00000532, you simply add a row like this:

        ID  Entity Type\nID  TYPE\nAPOLLO_SV:00000480  owl:Class\nAPOLLO_SV:00000532  owl:Class\n

        When the imports are refreshed see imports refresh workflow, the term(s) will simply be imported from the configured ontologies.

        Now, if you wish to extent the Makefile (which is beyond these instructions) and add, say, synonyms to the imported terms, you can do that, but you need to (a) preserve the ID and ENTITY columns and (b) ensure that the ROBOT template is valid otherwise, see here.

        WARNING. Note that doing this is a widespread antipattern (see related issue). You should not change the axioms of terms that do not belong into your ontology unless necessary - such changes should always be pushed into the ontology where they belong. However, since people are doing it, whether the OBO Foundry likes it or not, at least using the custom imports module as described here localises the changes to a single simple template and ensures that none of the annotations added this way are merged into the base file (see format variant documentation for explanation on what base file is)

        "},{"location":"howto/update-import/#refresh-imports","title":"Refresh imports","text":"

        If you want to refresh the import yourself (this may be necessary to pass the travis tests), and you have the ODK installed, you can do the following (using go as an example):

        First, you navigate in your terminal to the ontology directory (underneath src in your hpo root directory).

        cd src/ontology\n

        Then, you regenerate the import that will now include any new terms you have added. Note: You must have docker installed.

        sh run.sh make PAT=false imports/go_import.owl -B\n

        Since ODK 1.2.27, it is also possible to simply run the following, which is the same as the above:

        sh run.sh make refresh-go\n

        Note that in case you changed the defaults, you need to add IMP=true and/or MIR=true to the command below:

        sh run.sh make IMP=true MIR=true PAT=false imports/go_import.owl -B\n

        If you wish to skip refreshing the mirror, i.e. skip downloading the latest version of the source ontology for your import (e.g. go.owl for your go import) you can set MIR=false instead, which will do the exact same thing as the above, but is easier to remember:

        sh run.sh make IMP=true MIR=false PAT=false imports/go_import.owl -B\n
        "},{"location":"howto/update-import/#using-the-base-module-approach","title":"Using the Base Module approach","text":"

        Since ODK 1.2.31, we support an entirely new approach to generate modules: Using base files. The idea is to only import axioms from ontologies that actually belong to it. A base file is a subset of the ontology that only contains those axioms that nominally belong there. In other words, the base file does not contain any axioms that belong to another ontology. An example would be this:

        Imagine this being the full Uberon ontology:

        Axiom 1: BFO:123 SubClassOf BFO:124\nAxiom 1: UBERON:123 SubClassOf BFO:123\nAxiom 1: UBERON:124 SubClassOf UBERON 123\n

        The base file is the set of all axioms that are about UBERON terms:

        Axiom 1: UBERON:123 SubClassOf BFO:123\nAxiom 1: UBERON:124 SubClassOf UBERON 123\n

        I.e.

        Axiom 1: BFO:123 SubClassOf BFO:124\n

        Gets removed.

        The base file pipeline is a bit more complex then the normal pipelines, because of the logical interactions between the imported ontologies. This is solved by _first merging all mirrors into one huge file and then extracting one mega module from it.

        Example: Let's say we are importing terms from Uberon, GO and RO in our ontologies. When we use the base pipelines, we

        1. First obtain the base (ususally by simply downloading it, but there is also an option now to create it with ROBOT)
        2. We merge all base files into one big pile
        3. Then we extract a single module imports/merged_import.owl

        The first implementation of this pipeline is PATO, see https://github.com/pato-ontology/pato/blob/master/src/ontology/pato-odk.yaml.

        To check if your ontology uses this method, check src/ontology/cl-odk.yaml to see if use_base_merging: TRUE is declared under import_group

        If your ontology uses Base Module approach, please use the following steps:

        First, add the term to be imported to the term file associated with it (see above \"Using term files\" section if this is not clear to you)

        Next, you navigate in your terminal to the ontology directory (underneath src in your hpo root directory).

        cd src/ontology\n

        Then refresh imports by running

        sh run.sh make imports/merged_import.owl\n

        Note: if your mirrors are updated, you can run sh run.sh make no-mirror-refresh-merged

        This requires quite a bit of memory on your local machine, so if you encounter an error, it might be a lack of memory on your computer. A solution would be to create a ticket in an issue tracker requesting for the term to be imported, and your one of the local devs should pick this up and run the import for you.

        Lastly, restart Protege, and the term should be imported in ready to be used.

        "},{"location":"images/","title":"About using images in Git/GitHub","text":"

        There are two places you'll probaby want to use images in GitHub, in issue tracker and in markdown files, html etc. The way you handle images in these contexts is quite different, but easy once you get the hang of it.

        "},{"location":"images/#in-markdown-files-and-html-etc","title":"In markdown files (and html etc)","text":"

        All images referenced in static files such as html and markdown need to be referenced using a URL; dragging and dropping is not supported and could actually cause problems. Keeping images in a single directory enables them to be referenced more readily. Sensible file names are highly recommended, preferably without spaces as these are hard to read when encoded.

        An identical file, named in two different ways is shown as an example below. They render in the same way, but the source \"code\" looks ugly when spaces are used in file names.

        Eg.

        encoding needed no encoding needed ![](github%20organizations%20teams%20repos.png ![](github-organizations-teams-repos.png)

        In this example, the filename is enough of a 'url' because this file (https://ohsu-library.github.io/github-tutorial/howto/images/index.md) and the images are in the same directory https://ohsu-library.github.io/github-tutorial/howto/images/.

        To reference/embed an image that is not in the same directory, a more careful approach is needed.

        "},{"location":"images/#referencing-images-in-your-repository-and-elsewhere","title":"Referencing images in your repository and elsewhere","text":"Absolute path referencing Relative path referencing ![](https://github.com/OHSU-Library/github-tutorial/raw/master/docs/other-images/owl.jpg) ![](other-images/owl.jpg)

        Each instance of ../ means 'go up one level' in the file tree.

        It is also possible to reference an image using an external URL outside your control, in another github organization, or anywhere on the web, however this method can be fragile if the URL changes or could lead to unintended changes. Therefore make your own copies and reference those unless:

        • You're sure that referencing the originals will not end in broken links or surprising content.
        • Copying the image is prohibited
        • The images are too large to make copying worth the hassle/expense.

        For example, it is not clear for how long the image below will manage to persist at this EPA link, or sadly, for how long the image will even be an accurate reflection of the current situation in the arctic. https://www.epa.gov/sites/production/files/styles/microsite_banner/public/2016-12/epa-banner-images/science_banner_arctic.png

        "},{"location":"images/#in-github-issue-tracker","title":"In GitHub issue tracker","text":"

        Images that are embedded into issues can be dragged and dropped in the GitHub issues interface. Once you've done so, it will look something like this with GitHub assigning an arbitrary URL (githubuserassets) for the image.

        ![](screenshot-of-images-in-issues.png)

        "},{"location":"images/#sizing-images","title":"Sizing images","text":"

        Ideally, a Markdown document is renderable in a variety of output formats and devices. In some cases, it may be desirable to create non-portable Markdown that uses HTML syntax to position images. This limits the longevity of the artifact, but may be necessary sometimes. We describe how to manage this below.

        In order to size images, use the native html syntax: width = with the <img src=, as per below.

        <img src=\"https://github.com/monarch-initiative/monarch-app/raw/master/image/Phenogrid3Compare.png\" width=\"53\">

        "},{"location":"images/#back-to-home","title":"Back to Home","text":""},{"location":"lesson/analysing-linked-data/","title":"Analysing Linked Data (Fundamentals)","text":""},{"location":"lesson/analysing-linked-data/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/analysing-linked-data/#prerequisites","title":"Prerequisites","text":"
        • Review tutorial on Ontology Theory
        "},{"location":"lesson/analysing-linked-data/#preparation","title":"Preparation","text":"
        • Essential
        • Linked Data Engineering: Week 1
        • Support
        • Programming Historian Linked Data tutorial
        • Original Whitepaper (Tim Berners Lee et al)
        • Educational curriculum for Linked Data
        • Tools: Browse through the tools and standards listed in the Semantic Engineer Toolbox.
        "},{"location":"lesson/analysing-linked-data/#learning-objectives","title":"Learning objectives","text":"
        • Advanced SPARQL
        • Term enrichment
        • Semantic similarity
        • Named Entity Recognition
        "},{"location":"lesson/analysing-linked-data/#tutorials","title":"Tutorials","text":""},{"location":"lesson/analysing-linked-data/#the-linked-data-landscape-from-an-obo-perspective-standards-services-and-tools","title":"The Linked Data landscape from an OBO perspective: Standards, Services and Tools","text":"

        In the following we will look a bit at the general Linked Data landscape, and name some of its flagship projects and standards. It is important to be clear that the Semantic Web field is a very heterogenous one:

        "},{"location":"lesson/analysing-linked-data/#flagship-projects-of-the-wider-semantic-web-community","title":"Flagship projects of the wider Semantic Web community","text":"
        • Linked Open Data (LOD) cloud: The flagship project of the Semantic Web. An attempt to make all, or anyways a lot, of Linked Data accessible in one giant knowledge graph. A good overview can be found in this medium article. Note that some people seem to think that the Semantic Web is (or should be) the Linked Open Data cloud. I would question this view, but I am not yet decided what my position is.
        • Schema.org: General purpose vocabulary for entities on the web, founded by Google, Microsoft, Yahoo and Yandex. To get a better sense of the types of entities and relationships covered see here.
        • DBpedia: Project that extracts structured data from Wikipedia and makes it available as a giant knowledge graph. The associated ontology, similar to schema.org, covers entities encountered in common sense knowledge.
        • Wikidata: Free and open knowledge base that can be edited in much the same way as Wikipedia is edited.

        While these Semantic Web flagship projects are doubtlessly useful, it is sometimes hard to see how they can help for your biomedical research. We rarely make use of them in our day to day work as ontologists, but there are some notable exceptions:

        • Where our work involves modelling environmental factors, we sometimes use wikidata as a standard way to refer for example to countries.
        • For some more common sense knowledge use cases, such as nutrition, consider augmenting your knowledge graph with data from wikidata or dbpedia. While they may be a bit more messy and not directly useful for exploration by humans, it is quite possible that Machine Learning approaches can use the additional context provided by these knowledge graphs to improve embeddings and deliver more meaningful link predictions.
        • Some OBO ontologies are already on Wikidata - perhaps you can find additional synonyms and labels which help with your data mapping problems!
        "},{"location":"lesson/analysing-linked-data/#where-the-obo-and-semantic-web-communities-are-slightly-at-odds","title":"Where the OBO and Semantic Web communities are slightly at odds","text":"

        The OBO format is a very popular syntax for representing biomedical ontologies. A lot of tools have been built over the years to hack OBO ontologies on the basis of that format - I still work with it on a daily basis. Although it has semantically been proven to be a subset of OWL (i.e. there is a lossless mapping of OBO into OWL) and can be viewed as just another syntax, it is in many ways idiosyncratic. For starters, you wont find many, if any, IRIs in OBO ontologies. The format itself uses CURIEs which are mapped to the general OBO PURL namespace during transformation to OWL. For example, if you see MONDO:0003847 in an OBO file, and were to translate it to OWL, you will see this term being translated to http://purl.obolibrary.org/obo/MONDO_0003847. Secondly, you have a bunch of built-in properties like BROAD or ABBREVIATION that mapped to a vocabulary called oboInOwl (oio). These are pretty non-standard on the general Semantic Web, and often have to be manually mapped to the more popular counterparts in the Dublin Core or SKOS namespaces.

        Having URIs as identifiers is not generally popular in the life sciences. As discussed elsewhere, it is much more likely to encounter CURIEs such as MONDO:0003847 than URIs such as http://purl.obolibrary.org/obo/MONDO_0003847 in biomedical databases.

        "},{"location":"lesson/analysing-linked-data/#useful-tools-for-biomedical-research","title":"Useful tools for biomedical research","text":"

        Why does the biomedical research, and clinical, community care about the Semantic Web and Linked Data? There are endless lists of applications that try to apply semantic technologies to biomedical problems, but for this week, we only want to look at the broader picture. In our experience, the use cases where Semantic Web standards are applied successfully are:

        • Where to find ontologies: Ontology repositories
        • OBO Foundry Ontology Library
        • BioPortal
          • CPT Story. The Current Procedural Terminology was the by far most highly accessed Terminology on Bioportal - for many years. Due to license concerns, it had to be withdrawn from the repository. This story serves a cautionary tale of using terminologies with non-open or non-transparent licensing schemes.
        • AgroPortal: Like BioPortal, but focussed on the Agronomy domain.
        • Linked Open Data Vocabularies (LOV): Lists the most important vocabularies in the Linked Data space, such as Dublin Core, SKOS and Friend-of-a-Friend (FOAF).
        • Where to find terms: Term browsers
        • OLS: The boss of the current term browsers out there. While the code base is a bit dated, it still gives access to a wide range of relevant open biomedical ontology terms. Note, while being a bit painful, it is possible to set up your own OLS (for your organisation) which only contains those terms/ontologies that are relevant for your work.
        • Ontobee: The default term browser for OBO term purls. For example, click on http://purl.obolibrary.org/obo/OBI_0000070. This will redirect you directly to Ontobee, to show you the terms location in the hierarchy. A key difference between Ontobee and OLS/Bioportal is that Ontobee limits hierarchical relationships to is_a. This means if you are browsing ontologies such as GO, Uberon, CL, ENVO, you will not see part-of links in the hierarchy, and these links are crucial for understanding these ontologies.
        • AberOWL: Another ontology repository and semantic search engine. Some ontologies such as PhenomeNet can only be found on AberOWL, however, I personally prefer OLS.
        • identifiers.org: A centralised registry for identifiers used in the life sciences. This is one of the tools that bridge the gap between CURIEs and URLs, but it does not cover (OBO) ontologies very well, and if so, is not aware of the proper URI prefixes (see for example here, and HP term resolution that does not list the proper persistent URL of the HP identifier (http://purl.obolibrary.org/obo/HP_0000001)). Identifiers.org has mainly good coverage for databases/resources that use CURIE type identifiers. But: you can enter any ID you find in your data and it will tell you what it is associated with.
        • Curate biomedical data. There are a lot of different tools in this space - which we will discuss in a bespoke unit later in the course. Examples:
        • isatools: The open source ISA framework and tools help to manage an increasingly diverse set of life science, environmental and biomedical experiments that employing one or a combination of technologies.
        • RightField: System for curating ontology terms in Excel spreadsheets.
        • CEDAR Templates: Basically a templating system that allows to create templates to record metadata, for example in a lab setting, of course with ontology integration.
        • Other examples of tabular data to RDF converters, but new ones coming up every year.
        • Building ontologies
        • Populous/Webulous: A system to maintain/generate ontologies from spreadsheets. The idea was to basically to define patterns in a (now mostly dead) language called OPPL, and then apply them to spreadsheets to generate OWL axioms. EBI recently discontinued the service, as there is a general exodus to Google Sheets + ROBOT templates instead.
        • ROBOT templates + Google Sheets and Cogs: A lightweight approach based on a set of tools that allows curating ontologies in spreadsheets (e.g. Google Sheets) which are converted into OWL using ROBOT.
        • DOSDP tools + Dead Simple Design Patterns (DOSDP): Similar to ROBOT templates, DOSDPs (which really should be called DOSDTs, because they are not really design patterns; they are ontology templates), another system that allows the generation of OWL axioms based on spreadsheet data.
        • Cleaning messy data
        • OpenRefine: I have not myself used this ever, but some of my colleagues have. OpenRefine allows you to upload (spreadsheet) data, explore it and clean it (going as far as reconciling terms using Wikidata concepts).
        "},{"location":"lesson/analysing-linked-data/#which-biomedical-ontologies-should-we-use","title":"Which biomedical ontologies should we use?","text":"

        As a rule of thumb, for every single problem/term/use case, you will have 3-6 options to choose from, in some cases even more. The criteria for selecting a good ontology are very much dependent on your particular use case, but some concerns are generally relevant. A good first pass is to apply to \"10 simple rules for selecting a Bio-ontology\" by Malone et al, but I would further recommend to ask yourself the following:

        • Do I need the ontology for grouping and semantic analysis? In this case a high quality hierarchy reflecting biological subsumption is imperative. We will explain later what this means, but in essence, you should be able to ask the following question: \"All instances/occurrences of this concept in the ontology are also instances of all its parent classes. Everything that is true about the parent class is always also true about instances of the children.\" It is important for you to understand that, while OWL semantics imply the above, OWL is difficult and many ontologies \"pretend\" that the subclass link means something else (like a rule of thumb grouping relation).
        • Can I handle multiple inheritance in my analysis? While I personally recommend to always consider multiple inheritance (i.e, allow a term to have more than one parent class), there are some analysis frameworks, in particular in the clinical domain, that make this hard. Some ontologies are inherently ploy-hierarchical (such as Mondo), while others strive to be single inheritance (DO, ICD).
        • Are key resources I am interested in using the ontology? Maybe the most important question that will drastically reduce the amount of data mapping work you will have to do: Does the resource you wish to integrate already annotate to a particular ontology? For example, EBI resources will be annotating phenotype data using EFO, which in turn used HPO identifiers. If your use case demands to integrate EBI databases, it is likely a good idea to consider using HPO as the reference ontology for your phenotype data.

        Aside from aspects of your analysis, there is one more thing you should consider carefully: the open-ness of your ontology in question. As a user, you have quite a bit of power on the future trajectory of the domain, and therefore should seek to endorse and promote open standards as much as possible (for egotistic reasons as well: you don't want to have to suddenly pay for the ontologies that drive your semantic analyses). It is true that ontologies such as SNOMED have some great content, and, even more compellingly, some really great coverage. In fact, I would probably compare SNOMED not with any particular disease ontology, but with the OBO Foundry as a whole, and if you do that, it is a) cleaner, b) better integrated. But this comes at a cost. SNOMED is a commercial product - millions are being payed every year in license fees, and the more millions come, the better SNOMED will become - and the more drastic consequences will the lock-in have if one day you are forced to use SNOMED because OBO has fallen too far behind. Right now, the sum of all OBO ontologies is probably still richer and more valuable, given their use in many of the central biological databases (such as the ones hosted by the EBI) - but as SNOMED is seeping into the all aspects of genomics now (for example, it will soon be featured on OLS!) it will become increasingly important to actively promote the use of open biomedical ontologies - by contributing to them as well as by using them.

        We will discuss ontologies in the medical, phenomics and genomics space in more detail in a later session of the course.

        "},{"location":"lesson/analysing-linked-data/#other-interesting-links","title":"Other interesting links","text":"
        • Linked Data in e-Government
        • Industrial Ontologies Foundry: Something like the OBO Foundry for Industrial Ontologies
        • OntoCommons: An H2020 CSA project dedicated to the standardisation of data documentation across all domains related to materials and manufacturing.
        "},{"location":"lesson/analysing-linked-data/#basic-linked-data-and-semantic-web-concepts-for-the-semantic-data-engineer-in-the-biomedical-domain","title":"Basic Linked data and Semantic Web Concepts for the Semantic Data Engineer in the Biomedical Domain","text":"

        In this section we will discuss the following:

        • Introductory remarks
        • The advantages of globally unique identifiers
        • Some success stories of the Semantic Web in the biomedical domain
        • Some basic concepts you should probably have heard about
        • The ecosystem of the Semantic Web: Standards, Technologies and Research Areas
        • Typical tasks of Semantic Data Engineers in the biomedical domain
        "},{"location":"lesson/analysing-linked-data/#introduction","title":"Introduction","text":"

        Note of caution: No two Semantic Web overviews will be equivalent to each other. Some people claim the Semantic Web as an idea is an utter failure, while others praise it as a great success (in the making) - in the end you will have to make up your own mind. In this section I focus on parts of the Semantic Web step particularly valuable to the biomedical domain, and I will omit many relevant topics in the wider Semantic Web area, such as Enterprise Knowledge Graphs, decentralisation and personalisation, and many more. Also, the reader is expected to be familiar with the basic notions of the Semantic Web, and should use this overview mainly to tie some of the ideas together.

        The goal of this section is to give the aspiring Semantic Data Engineer in the biomedical domain a rough idea of key concepts around Linked Data and the Semantic Web insofar as they relate to their data science and and data engineering problems. Even after 20 years of Semantic Web research (the seminal paper, conveniently and somewhat ironically behind a paywall, was published in May 2001), the area is still dominated by \"academic types\", although the advent of the Knowledge Graph is already changing that. As I already mentioned above, no two stories of what the Semantic Web is will sound the same. However, there are a few stories that are often told to illustrate why we need semantics. The OpenHPI course names a few:

        • \"From the web of documents to the web of data\" tells the story of how the original web is essentially a huge heap of (interlinked) natural language text documents which are very hard to understand for search engines: Does the word \"Jaguar\" on this site refer to the car or the cat? Clarifying in your web page that the word Jaguar refers to the concept of \"Jaguar the cat\", for example like this: <span about=\"dbpedia:Jaguar\">Jaguar</span>, will make it easier for the search engine to understand what your site is about and link it to other relevant content. From this kind of mark-up, structured data can be extracted and integrate into a giant, worldwide database, and exposed through SPARQL endpoints, that can then be queried using a suitable query language.
        • \"From human to machine understandable\": as a Human, we know that a Jaguar is a kind of cat, and all cats have four legs. If you ask a normal search engine: \"Does a Jaguar have four legs?\" it will have a tough time to answer this question correctly (if it cannot find that exact statement anywhere). That is why we need proper semantics, some kind of formalism such that a \"machine\" can deduce from the statements \"Jaguar is a cat; Cat has four legs\" that \"Jaguar has four legs\".
        • The \"Semantic Layer Cake\": a box/brick diagram showing how Semantic Web Technologies are stacked on top of each other. An engineering centric view that has been used countless times to introduce the Semantic Web, but rarely helped anyone to understand what it is about.

        I am not entirely sure anymore that any of these ways (web of data, machine understanding, layered stack of matching standards) to motivate the Semantic Web are particularly effective for the average data scientists or engineer. If I had to explain the Semantic Web stack to my junior self, just having finished my undergraduate, I would explain it as follows (no guarantee though it will help you).

        The Semantic Web / Linked Data stack comprises roughly four components that are useful for the aspiring Semantic (Biomedical) Data Engineer/Scientist to distinguish:

        "},{"location":"lesson/analysing-linked-data/#a-way-to-refer-to-things-including-entities-and-relations-in-a-global-namespace","title":"A way to refer to things (including entities and relations) in a global namespace.","text":"

        You, as a scientist, might be using the term \"gene\" to refer to basic physical and functional unit of heredity, but me, as a German, prefer the term \"Gen\". In the Semantic Web, instead of natural language words, we prefer to use URIs to refer to things such as https://www.wikidata.org/wiki/Q7187: if you say something using the name https://www.wikidata.org/wiki/Q7187, both your German and Japanese colleagues will \"understand\" what you are referring to. More about that in the next chapter.

        "},{"location":"lesson/analysing-linked-data/#lots-loaaaads-of-ways-to-make-statements-about-things","title":"Lots (loaaaads!) of ways to make statements about things.","text":"

        For example, to express \"a mutation of SHH in humans causes isolated microphthalmia with coloboma-5\" you could say something like (http://purl.obolibrary.org/obo/MONDO_0012709 | \"microphthalmia, isolated, with coloboma 5\")--[http://purl.obolibrary.org/obo/RO_0004020 | \"has basis in dysfunction of\"]-->(https://identifiers.org/HGNC:10848 | \"SSH (gene)\"). Or you could say: (http://purl.obolibrary.org/obo/MONDO_0012709 | \"microphthalmia, isolated, with coloboma 5\")--[http://www.w3.org/2000/01/rdf-schema#subClassOf | \"is a\"]-->(http://purl.obolibrary.org/obo/MONDO_0003847 | \"Mendelian Disease\"). If we use the analogy of \"language\", then the URIs (above) are the words, and the statements are sentences in a language. Unfortunately, there are many languages in the Semantic Web, such as OWL, RDFS, SKOS, SWRL, SHACL, SHEX, and dialects (OWL 2 EL, OWL 2 RL) and a plethora of formats, or serialisations (you can store the exact same sentence in the same language such as RDF, or OWL, in many different ways)- more about that later. In here lies also one of the largest problems of the Semantic Web - lots of overlapping standards means, lots of incompatible data - which raises the bar for actually being able to seamlessly integrate \"statements about things\" across resources.

        "},{"location":"lesson/analysing-linked-data/#collections-of-statements-about-things-that-somehow-belong-together-and-provide-some-meaning-or-context-for-those-things","title":"Collections of statements about things that somehow belong together and provide some meaning, or context, for those things.","text":"

        Examples include:

        • controlled vocabularies, that define, for example, how to refer to a disease (e.g., we use http://purl.obolibrary.org/obo/MONDO_0012709 to refer to \"isolated microphthalmia with coloboma 5\"),
        • terminologies which describe how we humans refer to a disease (How is it called in German? Which other synonyms are used in the literature? How is the term defined in the medical literature?),
        • taxonomies which define how diseases are related hierarchically (\"microphthalmia, isolated, with coloboma 5 is a kind of Mendelian disease\"),
        • ontologies which further define how diseases are defined in terms of other entities, for example \"microphthalmia, isolated, with coloboma 5 is a Mendelian disease that has its basis in the dysfunction of SSH\".
        • Note: In practice, when we say \"ontology\", we mean all of the above together - it is, however, good to know that they are somewhat distinct, and that there are different \"languages\" that can be used for each of these distinctions.
        "},{"location":"lesson/analysing-linked-data/#tools-that-do-something-useful-with-these-collections-of-statements","title":"Tools that do something useful with these collections of statements.","text":"

        For example (as always, non exhaustive):

        • Efficient storage (triple stores, in-memory ontology APIs, other databases). Similar to traditional SQL databases, the Semantic Web comes with a number of database solutions that are optimised to deliver \"semantic content\".
        • Semantically aware querying: Very similar to traditional SQL (which, incidentally is often great to query semantic data), there are various ways to \"interrogate\", or query, your Linked Data, such as SPARQL, DL Querying, Ontology-based data access (OBDA).
        • Subsetting (module/subset extraction): Often, ontologies (or other collections of Linked Data statements) are very large and cover a lot of entities and knowledge that is not important to your work. There are a number of techniques that allow you to extract meaningful subsets for your use case; for example, you may be interested to get all the information you can about Mendelian diseases, but you don't care about common diseases (e.g. see ROBOT extract).
        • Visualisation: As a Data Scientist, you are used to looking at your data in tabular form - while a lot of information stored in ontologies can still be inspected this way, in general semantic data is best perceived as a graph - which are notoriously hard to visualise. Fortunately, a lot of Linked Data, in particular ontologies in the biomedical domain are predominantly tree-shaped (you have a disease, and underneath sub-diseases). Term browsers like OLS typically render ontologies as trees.
        • Data linking/matching: This is key in particular in the biomedical sciences, as there is almost never just one way to refer to the same thing. In my experience, a good rule of thumb is that there are 3-6, e.g. 3-6 URIs that refer to \"Mendelian Disease\", all of which need to be matched together to integrate data across resources. There are many approaches to ontology matching - none of which are anywhere near perfect.
        • Automated error checking and validation (Syntax, Structure (SHEX, SHACL), logical Consistency (DL Reasoner)): Naturally, writing sentences in any language is hard in the beginning, but this is even more true for highly complex languages such as OWL. In my experience, no-one can write flawless OWL without the help of automatic syntax and semantics checking, at least not consistently. Validation tools are a crucial part of your Semantic Engineering toolbox.
        • Translate between languages: Often we need to translate from one language, for example OWL, to another, for example SKOS to integrate divergent resources. Translations in the Semantic Web context are nearly always lossy (there are always things you can say in one language, but not in another), but they may be necessary nevertheless.
        • Discovery of terms (OLS, BioPortal): If you are curating terms, you need to know what ID (URI) to use for \"isolated microphthalmia with coloboma 5\". For that, term browsers such as OLS are perfect. Just type in your natural language search term, and you will find a series of suggestions for URIs you can use for your curation.
        • Discovery of vocabularies OBO Foundry ontology library, BioPortal): we will have a section later on on how to select appropriate ontologies for your use case, but the general problem of finding vocabularies, or ontologies, is answered by ontology repositories or libraries. Naturally, our favourite ontology library is the OBO Foundry ontology library which contain a lot of high quality ontologies for the biomedical domain.
        • Make implicit knowledge explicit, aka reasoning:
        • Deductive (DL Reasoning, Rule-based reasoning such as Datalog, SWRL). One of the major selling points for OWL, for example, in the biomedical domain is the ability to use logical reasoning in a way that is sound (only gives you correct inferences, at all times) and complete (all hidden implications are found, at all times, by the reasoner) - this is particularly great for medical knowledge where mistakes in computer algorithms can have devastating effects. However, I am slowly coming to the conviction that sound and complete reasoning is not the only form of deductive reasoning that is useful - many rule languages can offer value to your work by unveiling hidden relationships in the data without giving such strong \"logical guarantees\".
        • Inductive (Machine Learning approaches, Knowledge Graph Representation Learning). The new frontier - we will discuss later in the course how our ontology-powered Knowledge Graphs can be leveraged to identify drug targets, novel gene to phenotype associations and more, using a diverse set of Machine Learning-based approaches.

        This week will focus on 1 (identifiers) and 4 (applications) - 2 (languages and standards) and 3 (controlled vocabularies and ontologies) will be covered in depth in the following weeks.

        Note on the side: Its not always 100% clear what is meant by Linked Data in regular discourse. There are some supposedly \"clear\" definitions (\"method for publishing structured data\", \"collection of interrelated datasets on the Web\"), but when it comes down to the details, there is plenty of confusion (does an OWL ontology constitute Linked Data when it is published on the Web? Is it Linked Data if it does not use RDF? Is it Linked Data if it is less than 5-star - see below). In practice all these debates are academic and won't mean much to you and your daily work. There are entities, statements (context) being said about these entities using some standard (associated with the Semantic Web, such as OWL or RDFS) and tools that do something useful with the stuff being said.

        "},{"location":"lesson/analysing-linked-data/#when-i-say-mendelian-disease-i-mean-httppurlobolibraryorgobomondo_0003847","title":"When I say \"Mendelian Disease\" I mean http://purl.obolibrary.org/obo/MONDO_0003847","text":"

        One of the top 5 features of the Semantic Web (at least in the context of biomedical sciences) is the fact that we can use URIs as a global identifier scheme that is unambiguous, independent of database implementations, independent of language concerns to refer to the entities in our domain.

        For example, if I want to refer to the concept of \"Mendelian Disease\", I simply refer to http://purl.obolibrary.org/obo/MONDO_0003847 - and everyone, in Japan, Germany, China or South Africa, will be able to \"understand\" or look up what I mean. I don't quite like the word \"understanding\" in this context as it is not actually trivial to explain to a human how a particular ID relates to a thing in the real world (semiotics). In my experience, this process is a bit rough in practice - it requires that there is a concept like \"Mendelian Disease\" in the mental model of the person, and it requires some way to link the ID http://purl.obolibrary.org/obo/MONDO_0003847 to that \"mental\" concept - not always as trivial as in this case (where there are standard textbook definitions). The latter is usually achieved (philosophers and linguists please stop reading) by using an annotation that somehow explains the term - either a label or some kind of formal definition - that a person can understand. In any case, not trivial, but thankfully not the worst problem in the biomedical domain where we do have quite a wide range of shared \"mental models\" (more so in Biology than Medical Science..). Using URIs allows us to facilitate this \"understanding\" process by leaving behind some kind of information at the location that is dereferenced by the URI (basically you click on the URI and see what comes up). Note that there is a huge deal of compromise already happening across communities. In the original Semantic Web community, the hope was somehow that dereferencing the URI (clicking on it, navigating to it) would reveal structured information about the entity in question that could used by machines to understand what the entity is all about. In my experience, this was rarely ever realised in the biomedical domain. Some services like Ontobee expose such machine readable data on request (using a technique called content negotiation), but most URIs simply refer to some website that allow humans to understand what it means - which is already a huge deal. For more on names and identifiers I refer the interested reader to James Overton's OBO tutorial here.

        Personal note: Some of my experienced friends in the bioinformatics world say that \"IRI have been more pain than benefit\". It is clear that there is no single thing in the Semantic Web is entirely uncontested - everything has its critics and proponents.

        "},{"location":"lesson/analysing-linked-data/#the-advent-of-the-curie-and-the-bane-of-the-curie-map","title":"The advent of the CURIE and the bane of the CURIE map","text":"

        In reality, few biological resources will contain a reference to http://purl.obolibrary.org/obo/MONDO_0003847. More often, you will find something like MONDO:0003847, which is called a CURIE. You will find CURIEs in many contexts, to make Semantic Web languages easier to read and manage. The premise is basically that your document contains a prefix declaration that says something like this:

        PREFIX MONDO: <http://purl.obolibrary.org/obo/MONDO_>\n

        which allows allows the interpreter to unfold the CURIE into the IRI:

        MONDO:0003847 -> http://purl.obolibrary.org/obo/MONDO_0003847\n

        In reality, the proliferation of CURIEs has become a big problem for data engineers and data scientists when analysing data. Databases rarely, if ever, ship the CURIE maps with their data required to understand what a prefix effectively stands for, leading to a lot of guess-work in the daily practice of the Semantic Data Engineer (if you ever had to distinguish ICD: ICD10: ICD9: UMLS:, UMLSCUI: without a prefix map, etc you will know what I am talking about). Efforts to bring order to this chaos, essentially globally agreed CURIE maps (e.g. prefixcommons), or ID management services such as identifiers.org exist, but right now there is no one solution - prepare yourself to having to deal with this issue when dealing with data integration efforts in the biomedical sciences. More likely than not, your organisation will build its own curie map and maintain it for the duration of your project.

        "},{"location":"lesson/analysing-linked-data/#semantic-web-in-the-biomedical-domain-success-stories","title":"Semantic Web in the biomedical domain: Success stories","text":"

        There are probably quite a few divergent opinions on this, but I would like to humbly list the following four use cases as among the most impactful applications of Semantic Web Technology in the biomedical domain.

        "},{"location":"lesson/analysing-linked-data/#light-semantics-for-data-aggregation","title":"Light Semantics for data aggregation.","text":"

        We can use hierarchical relations in ontology to group data. For example, if I know that http://purl.obolibrary.org/obo/MONDO_0012709 (\"microphthalmia, isolated, with coloboma 5\") http://www.w3.org/2000/01/rdf-schema#subClassOf (\"is a\") http://purl.obolibrary.org/obo/MONDO_0003847 (\"Mendelian Disease\"), then a specialised Semantic Web tool called a reasoner will know that, if I ask for all genes associated with Mendelian diseases, you also want to get those associated with \"microphthalmia, isolated, with coloboma 5\" specifically (note that many query engines such as SPARQL with RDFS entailment regime have simple reasoners embedded in them, but we would not call them \"reasoner\" - just query engine).

        "},{"location":"lesson/analysing-linked-data/#heavy-semantics-for-ontology-management","title":"Heavy Semantics for ontology management.","text":"

        Ontologies are extremely hard to manage and profit from the sound logical foundation provided by the Web Ontology Language (OWL). We can logically define our classes in terms of other ontologies, and then use a reasoner to classify our ontology automatically. For example, we can define abnormal biological process phenotypes in terms of biological processes (Gene Ontology) and classify our phenotypes entirely using the classification of biological processes in the Gene Ontology (don't worry if you don't understand a thing - we will get to that in a later week).

        "},{"location":"lesson/analysing-linked-data/#globally-unique-identifiers-for-data-integration","title":"Globally unique identifiers for data integration.","text":"

        Refer to the same thing the same way. While this goal was never reached in total perfection, we have gotten quite close. In my experience, there are roughly 3-6 ways to refer to entities in the biomedical domain (like say, ENSEMBL, HGNC, Entrez for genes; or SNOMED, NCIT, DO, MONDO, UMLS for diseases). So while the \"refer to the same thing the same way\" did not truly happen, a combination of standard identifiers with terminological mappings, i.e. links between terms, can be used to integrate data across resources (more about Ontology Matching later). Again, many of my colleagues disagree - they don't like IRIs, and unfortunately, you will have to build your own position on that.

        Personal note: From an evolutionary perspective, I sometimes think that having 2 or 3 competing terminological systems is better than 1, as the competition also drives the improvements in quality, but there is a lot of disagreement on this.

        "},{"location":"lesson/analysing-linked-data/#coordinated-development-of-mutually-compatible-ontologies-across-the-biomedical-domain-the-open-biological-and-biomedical-ontologies-obo-foundry","title":"Coordinated development of mutually compatible ontologies across the biomedical domain: The Open Biological and Biomedical Ontologies (OBO) Foundry.","text":"

        The OBO Foundry is a community-driven effort to coordinate the development of vocabularies and ontologies across the biomedical domain. It develops standards for the representation of terminological content (like standard properties), and ontological knowledge (shared design patterns) as well as shared systems for quality control. Flagship projects include:

        • The Relation Ontology (RO) for the standardisation of relationships that connect entities in biomedical ontologies.
        • The Core Ontology for Biology and Biomedicine (COB): upper ontology to align key entities used throughout biomedical ontologies.
        • The OBO Metadata Ontology for aligning ontology metadata properties across OBO ontologies.
        • The OBO Persistent Identifier System: an Identifier scheme for persistent URIs used by many ontologies on the web. The system is used to refer to terms as well as ontologies and their versions.
        • OBO Dashboard: a system for the monitoring and continued improvement of OBO ontologies with automated Quality Control checks.
        "},{"location":"lesson/analysing-linked-data/#semantic-web-and-linked-data-things-you-should-have-heard-about","title":"Semantic Web and Linked Data: Things you should have heard about","text":"
        • The Semantic Web Layer Cake: A iconic, colourful graphic that describes the layered design of the semantic web, from URIs to Logic. Its not particularly useful, but as a Semantic Web Explorer, you should have seen it.
        • Linked Data is mostly referred to as a \"method for publishing data\", a key concept in the Semantic Web domain, coined by Tim Berners Lee in 2006. Related concepts:
        • Linked Data Principles:
          • Use URIs as names for things
          • Use HTTP URIs so that people can look up those names.
          • When someone looks up a URI, provide useful information.
          • Include links to other URIs. so that they can discover more things.
        • 5-Star system
          1. make your stuff available on the Web (whatever format) under an open license
          2. make it available as structured data (e.g., Excel instead of image scan of a table)
          3. use non-proprietary formats (e.g., CSV instead of Excel)
          4. use URIs to denote things, so that people can point at your stuff
          5. link your data to other data to provide context
        • FAIR data: Principles defined in 2016, somewhat orthogonal to Linked Data Principles. A nice tutorial, also going a bit more in depth into identifiers than what we did in this section, can be found here. The idea of FAIR data is probably more impactful in the biomedical and pharmaceutical world then the idea of Linked Data. While there are some (slighltly irritating) voices on the sidelines that say that \"It can't be FAIR if its not RDF\", it is probably true that a nicely formatted CSV file on the Web is at least as useful as a (hard to understand) RDF dump containing the same data. Worldwide collaborations between major pharmaceutical corporations promoting FAIR data, such as the Pistoia Alliance do mention Semantic Web Technologies in their White papers, but keep the jargon a bit more hidden from the general public. Data, according to the FAIR principles, should be:
        • Findable (machine readable metadata, etc)
        • Accessible (open authentication, authorisation)
        • Interoperable (integrated with other data, closely related to controlled vocabularies and linked data)
        • Reusable (metadata, license, provenance)
        • World Wide Web Consortium (W3C): The World Wide Web Consortium (W3C) is an international community that develops open standards, in particular many of those (but not all!) pertaining to the Semantic Web.
        "},{"location":"lesson/analysing-linked-data/#the-ecosystem-of-linked-data-and-semantic-web-standards-technologies-and-research-areas","title":"The Ecosystem of Linked Data and Semantic Web: Standards, Technologies and Research Areas","text":"

        In the following, we will list some of the technologies you may find useful, or will be forced to use, as a Semantic Data Engineer. Most of these standards will be covered in the subsequent weeks of this course.

        Standard Purpose Use case Web Ontology Language (OWL) Representing Knowledge in Biomedical Ontologies All OBO ontologies must be provided in OWL as well. Resource Description Framework (RDF) Model for data interchange. Triples, the fundamental unit of RDF, are ubiquitous on the Semantic Web SPARQL Query Language for RDF A standard query language for RDF and RDFS. Primary query language to interrogate RDF/RDFS/Linked Data on the Web. Simple Knowledge Organization System (SKOS) Another, more lightweight, knowledge organisation system in many ways competing with OWL. Not as widely used in the biomedical domain as OWL, but increasing uptake of \"matching\" vocabulary (skos:exactMatch, etc). RDF-star A key shortcoming of RDF is that, while I can in principle say everything about everything, I cannot directly talk about edges, for example to attribute provenance: \"microphthalmia, isolated, with coloboma 5 is kind of Mendelian disease\"--source: Wikipedia Use cases here. JSON-LD A method to encoding linked data in JSON format. (Very useful to at least know about). RDFa W3C Recommendation to embed rich semantic metadata in HTML (and XML). I have to admit - in 11 years Semantic Web Work I have not come across much use of RDFa in the biomedical domain. But @jamesaoverton is using it in his tools!

        A thorough overview of all the key standards and tools can be found on the Awesome Semantic Web repo.

        For a rough sense of current research trends it is always good to look at the accepted papers at one of the major conferences in the area. I like ISWC (2020 papers), but for the aspiring Semantic Data Engineering in the biomedical sphere, it is probably a bit broad and theoretical. Other interesting specialised venues are the Journal of Biomedical Semantics and the International Conference on Biomedical Ontologies, but with the shift of the focus in the whole community towards Knowledge Graphs, other journals and conferences are becoming relevant.

        Here are a few key research areas, which are, by no means (!), exhaustive.

        • How can we combine data and knowledge from different ontologies/knowledge graphs?
        • Ontology/Knowledge graph alignment: How can we effectively link to ontologies, or knowledge graphs, together?
        • Ontology merging: combine two ontologies by corresponding concepts and relations.
        • Ontology matching: A sub-problem of ontology alignment, namely the problem of determining whether two terms (for example two diseases) from different ontologies should be linked together or not.
        • How can we integrate data from unstructured and semistructured sources such as documents or spreadsheets?
        • Named Entity Recognition (NER): the process of identifying a named \"thing\" in a text.
        • Entity linking: The task of associating a named entity, for example the result of a Named Entity Recognition algorithm, or the column of a spreadsheet, to a concept in an ontology. For example, the value \"Mendelian Disease\" is linked to the concept http://purl.obolibrary.org/obo/MONDO_0003847.
        • Relationship extraction: Once you have identified the genes and diseases in your Pubmed abstracts, you will want to understand how they related to each other. Is the gene the \"basis in dysfunction of\" the disease? Or just randomly co-occurs in the sentence?
        • Note: Many of the problems in this category are typically associated with the domain of Natural Language Processing rather than Semantic Web.
        • How can we generate insight from semantically integrated data?
        • Knowledge Graphs and Machine Learning
          • Knowledge Graph Embeddings. The number one hype topic in recent years: How do you get from a graph of interrelated entities to a faithful representation in a vector space (basically numbers), so that Machine Learning algorithms can do their magic?
          • Link predication: Based on what we know, which are the best drug targets for my rare disease of interest?
        • Logical reasoning: While the research on deductive reasoning, at least the more \"hard-core\" Description Logic kind, seems to be a bit more quiet in recent years (maybe I am wrong here, I just see much less papers coming through my Google Scholar alerts now then I used to), there is still a lot going on in this domain: more efficient SPARQL engines, rule-based reasoning such as the recently commercialised RDFox reasoner and many more.
        • Other research areas (not in any way exhaustive):
        • Web decentralisation and privacy:
          • Solid: Solid (Social Linked Data) is a web decentralization project led by Tim Berners-Lee, with the aim of true ownership of personal data and improved privacy. \"Pods\" are like secure personal web servers for data from which application can request data.
          • Shape validation: It is very difficult to validate huge Knowledge Graphs of interrelated data efficiently (by validate we can mean a lot of things, such as making sure that your cat does not accidentally end up as someone's \"Mendelian Disease\"). Shape languages such as Shex and SHACL are poised to solve this problem, but the research is ongoing.
        • New standards and tools: There is always someone proposing a new semantic standard for something or building a new kind of triple store, SPARQL extension or similar.
        "},{"location":"lesson/analysing-linked-data/#typical-jobs-of-semantic-data-engineers-in-the-biomedical-domain","title":"Typical Jobs of Semantic Data Engineers in the biomedical domain","text":"

        It is useful to get a picture of the typical tasks a Semantic Data Engineer faces when building ontologies are Knowledge Graphs. In my experience, it is unlikely that any particular set of tools will work in all cases - most likely you will have to try and assemble the right toolchain for your use case and refine it over the lifetime of your project. The following are just a few points for consideration of tasks I regularly encountered - which may or may not overlap with the specific problems you will face.

        "},{"location":"lesson/analysing-linked-data/#finding-the-right-ontologies","title":"Finding the right ontologies","text":"

        There are no simple answers here and it very heavily depends on your use cases. We are discussing some places to look for ontologies here, but it may also be useful to simply upload the terms you are interested in to a service like Zooma and see what the terms map to at a major database provider like EBI.

        "},{"location":"lesson/analysing-linked-data/#finding-the-right-data-sources","title":"Finding the right data sources","text":"

        This is much harder still than it should have to be. Scientific databases are scattered across institutions that often do not talk to each other. Prepare for some significant work in researching the appropriate databases that could benefit your work, using Google and the scientific literature.

        "},{"location":"lesson/analysing-linked-data/#extending-existing-ontologies","title":"Extending existing ontologies","text":"

        It is rare nowadays that you will have to develop an ontology entirely from scratch - most biomedical sub-domains will have some kind of reasonable ontology to build upon. However, there is often a great need to extend existing ontologies - usually because you have the need of representing certain concepts in much more detail, or your specific problem has not been modelled yet - think for example when how disease ontologies needed to be extended during the Coronavirus Crisis. Extending ontologies usually have two major facets:

        1. If at all possible you should seek to contribute new terms, synonyms and relationships to the ontologies you seek to extend directly. Here, you can use GitHub to make issues requesting new terms, but more boldly, you can also add new terms yourself. We will teach you how to do that in one of the next weeks.
        2. If the knowledge is considered out of scope for the ontology to be extended (for example because the terms are considered too detailed), then you will maintain your own \"branch\" of the ontology. Many tools such as the Ontology Development Kit and ROBOT can help you maintain such a branch but the general instinct should be:
        3. Make a public GitHub repo.
        4. Reach out to the developers of the main ontology
        5. Stay in touch and coordinate releases
        "},{"location":"lesson/analysing-linked-data/#mapping-data-into-ontologiesknowledge-graphs","title":"Mapping data into ontologies/knowledge graphs","text":"

        Also sometimes more broadly referred to as \"data integration\", this problem involves a variety of tasks, such as:

        1. Named Entity Recognition. If you have a set of documents, such as PubMed abstracts or clinical notes, you may have to first identify the parts of speech that refer to clinical entities.
        2. Entity Linking: Once you have identified the biomedical entities of interest, you may want to link them to your existing knowledge graph. This process is sometimes called entity mapping or data mapping as well. Very often, this task is not fully automated. We have worked on projects where we used approaches to Entity Linking to suggest good mappings to users, which then had to confirm or reject them. It is also good to understand that not all entity linking must be vertical (i.e. between \"equivalent\" entities). Very often, there is no equivalent entity in your knowledge graph to map to, and here you need to decide whether to (a) create a new entity in the knowledge graph to map to or (b) map to a broader entity (for example \"microphthalmia, isolated, with coloboma 5\" to \"Mendelian Disease\"). What is more efficient / useful solely depends on your use case!
        "},{"location":"lesson/analysing-linked-data/#build-application-ontologies","title":"Build application ontologies","text":"

        To make your data discoverable, it is often useful to extract a view from the ontologies you are using (for example, Gene Ontology, Disease Ontology) that only contains the terms and relationships of relevance to your data. We usually refer to this kind of ontology as an application ontology, or an ontology specific to your application, which will integrate subsets of other ontologies. This process will typically involve the following:

        • Define a seed, or a set of terms you want to import from your external ontologies of interest.
        • Extract relevant subsets from ontologies using this seed (for example using ROBOT extract).
        • Combine and potentially link these subsets together.
        • Frameworks such as the Ontology Development Kit can help with this task, see for example the Coronavirus Vocabulary maintained by EBI.
        "},{"location":"lesson/analysing-linked-data/#leverage-ontologies-and-knowledge-graphs-for-you-data-analysis-problems","title":"Leverage ontologies and knowledge graphs for you data analysis problems","text":"

        There are many ways your semantic data can be leveraged for data analysis, but in my experience, two are particularly central:

        1. Data grouping and search: make data about \"microphthalmia, isolated, with coloboma 5\" available when searching for data about \"Mendelian Disease\".
        2. Link prediction: Figure out what additional knowledge is hidden in your data that can drive your research (e.g. possible new therapies or drug targets).
        "},{"location":"lesson/analysing-linked-data/#additional-materials-and-resources","title":"Additional materials and resources","text":"

        The open courses of the Hasso Plattner Institute (HPI) offer introductions into the concepts around Linked Data, Semantic Web and Knowledge Engineering. There are three courses of relevance to this weeks topics, all of which overlap significantly.

        • Knowledge Engineering and the Web of Data: The oldest (2015), of the courses, but the most thorough when it comes to logical foundations, semantics and OWL. We will come back to this course in Weeks 4 and 5.
        • Linked Data Engineering: Overlaps a lot with the Knowledge Engineering and the Web of Data course, with a bit more RDF/Linked Data focus.
        • Knowledge Graphs: The most up-to-date of the three courses (2020), and will be referred to again in Week 12 of our course here.
        "},{"location":"lesson/analysing-linked-data/#contributors","title":"Contributors","text":"
        • add name/ORCID here
        "},{"location":"lesson/automating-ontology-workflows/","title":"Automating Ontology Development Workflows: Make, Shell and Automation Thinking","text":""},{"location":"lesson/automating-ontology-workflows/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/automating-ontology-workflows/#prerequisites","title":"Prerequisites","text":"
        • Ontology Pipelines
        "},{"location":"lesson/automating-ontology-workflows/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        In this course, you will learn the basics of automation in and around the OBO ontology world - and beyond. The primary goal is to enable ontology pipeline developers to plan the automation of their ontology workflows and data pipelines, but some of the materials are very general and apply to scientific computing more widely. The course serves also as a prerequisite for advanced application ontology development.

        "},{"location":"lesson/automating-ontology-workflows/#learning-objectives","title":"Learning objectives","text":"
        • Unix shell
        • make
        • Advanced Git, GitHub
        "},{"location":"lesson/automating-ontology-workflows/#preparation","title":"Preparation","text":"

        Please complete the following tutorials.

        • The Unix Shell (~4.5 hours)
        • Version Control with Git (~3 hours)
        • Introduction to GitHub
        "},{"location":"lesson/automating-ontology-workflows/#tutorials","title":"Tutorials","text":""},{"location":"lesson/automating-ontology-workflows/#thinking-automation","title":"Thinking \"Automation\"","text":"

        By: James Overton

        Automation is part of the foundation of the modern world. The key to using and building automation is a certain way of thinking about processes, how they can be divided into simple steps, and how they operate on inputs and outputs that must be exactly the same in some respects but different in others.

        In this article I want to make some basic points about automation and how to think about it. The focus is on automation with software and data, but not on any particular software or data. Some of these points may seem too basic, especially for experienced programmers, but in 20+ years of programming I've never seen anybody lay out these basic points in quite this way. I hope it's useful.

        "},{"location":"lesson/automating-ontology-workflows/#the-basics","title":"The Basics","text":"

        \"automatos\" from the Greek: \"acting of itself\"

        Automation has two key aspects:

        1. make the input the same
        2. process the inputs in the same way

        The second part is more visible, and tends to get more attention, but the first part is at least as important. While automation makes much of the modern world possible, it is not new, and there are serious pitfalls to avoid. No system is completely automatic, so it's best to think of automation on a spectrum, and starting thinking about automation at the beginning of a new project.

        "},{"location":"lesson/automating-ontology-workflows/#examples-of-automation","title":"Examples of Automation","text":"

        To my mind, the word \"automation\" brings images of car factories, with conveyor belts and robotic arms moving parts and welding them together. Soon they might be assembling self-driving (\"autonomous\") cars. Henry Ford is famous for making cars affordable by building the first assembly lines, long before there were any robots. The essential steps for Ford were standardizing the inputs and the processes to get from raw materials to a completed car. The history of the 20th century is full of examples of automation in factories of all sorts.

        Automation was essential to the Industrial Revolution, but it didn't start then. We can look to the printing press. We can look to clocks, which regimented lives in monasteries and villages. We can think of recipes, textiles, the logistics of armies, advances in agriculture, banking, the administration of empires, and so on. The scientific revolution was built on repeatable experiments published in letters and journal articles. I think that the humble checklist is also an important relative of automation.

        Automation is not new, but it's an increasingly important part of our work and our lives.

        "},{"location":"lesson/automating-ontology-workflows/#software-automation-is-special","title":"Software Automation is Special","text":"

        Software is almost always written as source code in text files that are compiled and/or interpreted as machine code for a specific set of hardware. Software can drive machines of all sorts, but a lot of software automation stays inside the computer, working on data in files and databases, and across networks. We'll be focused on this kind of software automation, transforming data into data.

        The interesting thing about this is that source code is a kind of data, so there are software automation workflows that operate on data that defines software. The upshot is that you can have automation that modifies itself. Doing this on a large scale introduces a lot of complexity, but doing it on a small scale can be a clean solution to certain problems.

        Another interesting thing about software is that once we solve an automation problem once we can copy that solution and apply it again and again for almost zero cost. We don't need to build a new factory or a new threshing machine. We can just download a program and run it. Henry Ford could make an accurate estimate of how long it would take to build a car on his assembly line, but software development is not like working on the assembly line, and estimating time and budget for software development is notoriously hard. I think this is because software developers aren't just executing automation, they're building new automation for each new project.

        Although we talk about \"bit rot\", and software does require maintenance of a sort, software doesn't break down or wear out in the same ways that physical machines do. So while the Industrial Revolution eliminated many jobs, it also created different jobs, building and maintaining the machines. It's not clear that software automation will work the same way.

        Software automation is special because it can operate on itself, and once complete can be cheaply copied. Software development is largely about building automated systems of various sorts, usually out of many existing pieces. We spend most of our time building new systems, or modifying an existing system to handle new inputs, or adapting existing software to a new use case.

        "},{"location":"lesson/automating-ontology-workflows/#the-dangers-of-automation","title":"The Dangers of Automation","text":"

        To err is human; to really foul things up requires a computer.

        An obvious danger of automation is that machines are faster than humans, so broken automation can often do more damage more quickly than a human can. A related problem is that humans usually have much more context and depth of experience, which we might call \"common sense\", and a wider range of sensory inputs than most automated systems. This makes humans much better at recognizing that something has gone wrong with a process and that it's time to stop.

        New programmers soon learn that a simple program that performs perfectly when the input is in exactly the right format, becomes a complex program once it's updated to handle a wide range of error conditions. In other words, it's almost always much harder to build automation that can gracefully handler errors and problems than it is to automate just the \"happy path\". Old programmers have learned through bitter experience that it's often practically impossible to predict all the things that can go wrong with an automated system in practise.

        I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail. -- Abraham Maslow

        A less obvious danger of automation comes from the sameness requirement. When you've built a great piece of automation, perfectly suited to inputs of a certain type, it's very tempting to apply that automation more generally. You start paying too much attention to how things are the same, and not enough attention to their differences. You may begin to ignore important differences. You may surrender your common sense and good judgment, to save yourself the work of changing the automated system or making an exception.

        Bureaucracies are a form of automation. Everyone has had a bad experience filling out some form that ignores critical information, and with some bureaucrat who would not apply common sense and make an exception.

        Keep all this in mind as you build automated systems: a broken machine can do a lot of damage very quickly, and a system built around bad assumptions can do a lot of hidden damage.

        "},{"location":"lesson/automating-ontology-workflows/#a-spectrum-of-automation","title":"A Spectrum of Automation","text":"

        Let's consider a simple case of automation with software, and build from the most basic sort of automation to a full-fledged system.

        Say you have a bunch of text files in a directory, each containing minutes from meetings that we had together over the years. You can remember that I talked about a particular software package that might solve a problem that you just discovered, but you can't remember the name.

        "},{"location":"lesson/automating-ontology-workflows/#1-ad-hoc","title":"1. Ad Hoc","text":"

        The first thing you try is to just search the directory. On a Mac you would open the Finder, navigate to the directory, and type \"James\" into the search bar. Unfortunately that gives too many results: all the files with the minutes for a meeting where I said something.

        The next thing to do is double click some text files, which would open them in Text Edit program, and skim them. You might get lucky!

        You know that I the meeting was in 2019, so you can try and filter for files modified in that year. Unfortunately the files have been updated at different times, so the file dates aren't useful.

        Now if each file was named with a consistent pattern, including the meeting date, then it would be simple to filter for files with \"2019\" in the name. This isn't automation, but it's the first step in the right direction. Consistent file names are one way to make inputs the same so that you can process them in the same way.

        Let's say it works: you filter for files from 2019 with \"James\" in them, skim a few, and find a note where I recommended using Pandoc to convert between document formats. Mission accomplished!

        "},{"location":"lesson/automating-ontology-workflows/#2-notes","title":"2. Notes","text":"

        Next week you need to do something very similar: Becky mentioned a website where you can find an important dataset. It's basically the same problem with different inputs. If you remember exactly what you did last time, then you can get the job done quickly. As the job gets more complicated and more distant in time, and as you find yourself doing similar tasks more often, it's nice to have notes about what you did and how you did it.

        If I'm using a graphical user interface (GUI) then for each step I'll note the program I used, and the menu item or button I clicked, e.g. \"Preferences > General > Font Size\", or \"Search\" or \"Run\". If I'm using a command-line interface (CLI) then I'll copy-paste the commands into my notes.

        I often keep informal notes like this in a text file in the relevant directory. I name the file \"notes.txt\". A \"README\" file is similar. It's used to describe the contents of a directory, often saying which files are which, or what the column headers for a given table mean.

        Often the task is more complicated and requires one or more pieces of software that I don't use every day. If there's relevant documentation, I'll put a link to it in my notes, and then a short summmary of exactly what I did.

        In this example I look in the directory of minutes and see my \"notes.txt\" file. I read that and remember how I filtered on \"2019\" and searched for \"James\". This time I filter on \"2020\" and search for \"Becky\", and I find the website for the dataset quickly enough.

        As a rule of thumb, it might take you three times longer to find your notes file, write down the steps you took, and provide a short description, than it would to just do the job without taking notes. When you're just taking notes for yourself, this often feels like a waste of time (you'll remember, right?!), and sometimes it is a bit of a waste. If you end up using your notes to help with similar tasks in the future, then this will likely be time well spent.

        As a rule of thumb, it might take three times longer to write notes for a broader audience than notes for just yourself. This is because you need to take into account the background knowledge of your reader, including her skills and assumptions and context, and especially the possible misunderstandings that you can try to avoid with careful writing. I often start with notes for just myself and then expand them for a wider audience only when needed.

        "},{"location":"lesson/automating-ontology-workflows/#3-checklist","title":"3. Checklist","text":"

        When tasks get more complicated or more important then informal notes are not enough. The next step on the spectrum of automation is the humble checklist.

        The most basic checklists are for making sure that each item has been handled. Often the order isn't important, but lists are naturally ordered from top to bottom, and in many cases that order is useful. For example, my mother lays out her shopping lists in the order of the aisles in her local grocery store, making it easier to get each item and check it off without skipping around and perhaps having to backtrack.

        I think of a checklist as a basic form of automation. It's like a recipe. It should lay out the things you need to start, then proceed through the required steps in enough detail that you can reproduce them. In some sense, by using the checklist you are becoming the \"machine\". You are executing an algorithm that should take you from the expected inputs to the expected output.

        Humble as the checklist is, there's a reason that astronauts, pilots, and surgical teams live by their checklists. Even when the stakes are not so high, it's often nice to \"put your brain on autopilot\" and just work the checklist without having to remember and reconsider the details of each step.

        A good checklist is more focused than a file full of notes. A checklist has a goal at the end. It has specific starting conditions. The steps have been carefully considered, so that they have the proper sequence, and none are missing. Perhaps most importantly, a checklist helps you break a complex task down into simple parts. If one of the parts is still too complex, then break it down again into a nested checklist (really a sort of tree structure).

        Checklists sometimes include another key element of automation: conditionals. A shopping list might say \"if there's a sale on crackers, then buy three boxes\". If-then conditions let our automated systems adapt to circumstances. The \"then\" part is just another step, but the \"if\" part is a little different. It's a test to determine whether a condition holds. We almost always want the result of the test to be a simple True or False. Given a bunch of inputs, some of which pass the test and some of which fail it, we can think of the test as determining some way in which all the things that pass are the same and all the things that fail are the same. Programmers will also be familiar with more complex conditionals such as if-then-else, if-elseif-else, and \"case\", which divide process execution across multiple \"branches\".

        As a rule of thumb, turning notes into a checklist will likely take at least three times as long as simply writing the notes. If the checklist is for a wider audience, expect it to take three times as long to write, for the same reasons mentioned above for notes.

        If a task is simple and I can hold all the steps in my head, and I can finish it in one sitting without distractions, then I won't bother with a checklist. But more and more I find myself writing myself a checklist before I begin any non-trivial tasks. I use bullet points in my favourite text editor, or sometimes the Notes app on my iPhone. I lay out the steps in the expected order, and I check them off as I go. Sometimes I start making the checklist days before I need it, so I have lots of time to think about it and improve it. If there's a job that I'm worried about, breaking it down into smaller pieces usually helps to make the job feel more manageable. Actually, I try to start every workday by skimming my (long) To Do list, picking the most important tasks, and making a checklist for what I want to get done by quitting time.

        "},{"location":"lesson/automating-ontology-workflows/#3-checkscript","title":"3. Checkscript","text":"

        \"Checkscript\" is a word that I think I made up, based on insights from a couple of sources, primarily this blog post on \"Do-nothing scripting: the key to gradual automation\" This is where \"real\" automation kicks in, writing \"real\" code and stuff, but hopefully you'll see that it's just one more step on the spectrum of automation that I'm describing.

        The notes and checklists we've been discussing are just text in your favourite text editor. A checkscript is a program. It can be written in whatever programming language you prefer. I'll give examples in Posix Shell, but that blog post uses Python, and it really doesn't matter. You start with a checklist (in your mind at least). The first version of your program should just walk you through your checklist. The program should walk you through each step of your checklist, one by one. That's it.

        Here's a checkscript based on the example above. It just prints the first step (echo), waits for you to press any key (read), then prints the next step, and so on.

        ###!/bin/sh\n\necho \"1. Use Finder to filter for files with '2019' in the name\"\nread -p \"Press enter to continue\"\n\necho \"2. Use finder to search file content for 'James'\"\nread -p \"Press enter to continue\"\n\necho \"3. Open files in Text Edit and search for 'James'\"\nread -p \"Press enter to continue\"\n\necho \"Done!\"\n

        So far this is just a more annoying way to use a checklist. The magic happens once you break the steps down into small enough pieces and realize that you know how to tell the computer to do some of the steps instead of doing them all yourself.

        For example, you know that the command-line tool grep is used for searching the contents of files, and that you can use \"fileglob\"s to select just the files that you want to search, and that you can send the output of grep to another file to read in your favourite text editor. Now you know how to automate the first two steps. The computer can just do that work without waiting for you:

        ###!/bin/sh\n\ngrep \"James\" *2019* > search_results.txt\n\necho \"1. Open 'search_results.txt' in Text Edit and search for 'James'\"\nread -p \"Press enter to continue\"\n\necho \"Done!\"\n

        Before we were using the Finder, and it is possible to write code to tell the Finder to filter and seach for files. The key advantage of grep here is that we send the search results to another file that we can read now or save for later.

        This is also a good time to mention the advantage of text files over word processor files. If the minutes were stored in Word files, for example, then Finder could probably search them and you could use Word to read them, but you wouldn't be able to use grep or easily output the results to another file. Unix tools such as grep treat all text files the same, whether they're source code or meeting minutes, which means that these tools work pretty much the same on any text file. By keeping your data in Word you restrict yourself to a much smaller set of tools and make it harder to automate you work with simple scripts like this one.

        Even if you can't get the computer to run any of the steps for you automatically, a checkscript can still be useful by using variables instead of repeating yourself:

        ###!/bin/sh\n\nFILE_PATTERN=\"*2019*\"\nFILE_CONTENTS=\"James\"\n\necho \"1. Use Finder to filter for files with '${FILE_PATTERN}' in the name\"\nread -p \"Press enter to continue\"\n\necho \"2. Use finder to search file content for '${FILE_CONTENTS}'\"\nread -p \"Press enter to continue\"\n\necho \"3. Open files in Text Edit and search for '${FILE_CONTENTS}'\"\nread -p \"Press enter to continue\"\n\necho \"Done!\"\n

        Now if I want to search for \"Becky\" I can just change the FILE_CONTENTS variable in one place. I find this especially useful for dates and version numbers.

        This is pretty simple for a checkscript, with very few steps. A more realistic example would be if there were many directories containing the minutes of many meetings, maybe in different file formats and with different naming conventions. In order to be sure that we're searching all of them we might need a longer checkscript.

        Writing and using a checkscript instead of a checklist will likely take (you guessed it) about three times as long. But the magic of the checkscript is in the title of the blog post I mentioned: \"gradual automation\". Once you have a checkscript, you can run through it all manually, but you can also automate bits a pieces of the task, saving yourself time and effort next time.

        "},{"location":"lesson/automating-ontology-workflows/#5-script","title":"5. Script","text":"

        A \"script\" is a kind of program that's easy to edit and run. There are technical distinctions to be made between \"compiled\" programs and \"interpreted\" programs, but they turn out to be more complicated and less helpful than they seem at first. Technically, a checkscript is just a script that waits for you to do the hard parts. In this section I want to talk about \"fully automated\" or \"standalone\" scripts that you just provide some input and execute.

        Most useful programs are useful because they call other programs (in the right ways). I like shell scripts because they're basically just commands that are copied and pasted from work I was doing on the command-line. It's really easy to call other programs.

        To continue our example, say that our minutes were stored in Word files. There are Python libraries for this, such as python-docx. You can write a little script using this library that works like grep to search for specified text in selected files, and output the results to a search results file.

        As you add more and more functionality to a script it can become unwieldy. Scripts work best when they have a simple \"flow\" from beginning to end. They may have some conditionals and some loops, but once you start seeing nested conditionals and loops, then your script is doing too much. There are two main options to consider:

        1. break your script into smaller, simpler scripts
        2. build a specialized tool: the next step on the spectrum of automation

        The key difference between a checkscript and a \"standalone\" script is handling problems. A checkscript relies on you to supervise it. A standalone script is expected to work properly without supervision. So the script has to be designed to handle a wider range of inputs and fail gracefully when it gets into trouble. This is a typical case of the \"80% rule\": the last 20% takes 80% of the time. As a rule of thumb, expect it to take three times as long to write a script that can run unsupervised than it takes you to write a checkscript that does \"almost\" the same thing.

        "},{"location":"lesson/automating-ontology-workflows/#6-specialized-tool","title":"6. Specialized Tool","text":"

        When your script needs nested conditionals and loops, then it's probably time to reach for a programming language that's designed to write code \"in the large\". Some languages such as Python can make a pretty smooth transition from a script in a single file to a set of files in a module, working together nicely. You might also choose another language that can provide better performance or efficiency.

        It's not just the size and the logical complexity of your script, consider its purpose. The specialized tools that I have in mind have a clear purpose that helps guide their design. This also makes them easier to reuse across multiple projects.

        I often divide my specialized tools into two parts: a library and a command-line interface. The library can be used in other programs, and contains the most distinctive and important functionality. But the command-line interface is essential, because it lets me use my specialized tool in the shell and in scripts, so I can build more automation on top of it.

        Writing a tool in Java or C++ or Rust usually takes longer than a script in shell or Python because there are more details to worry about such as types and efficient memory management. In return you usually get more reliability and efficiency. But as a rule of thumb, expect it to take three times as long to write a specialized tool than it would to \"just\" write the script. On the other hand, if you already have a script that does most of what you want, and you're already familiar with the target you are moving to, then it can be fairly straightforward to translate from the script to the specialized tool. That's why it's often most efficient to write a prototype script first, do lots of quick experiments to explore the design space, and when you're happy with the design then start on the \"production\" version.

        "},{"location":"lesson/automating-ontology-workflows/#7-workflow","title":"7. Workflow","text":"

        The last step in the spectrum of automation is to bring together all your scripts into a single \"workflow\". My favourite tool for this is the venerable Make. A Makefile is essentially a bunch of small scripts with their input and output files carefully specified. When you ask Make to build a given output file, it will look at the whole tree of scripts, figure out which input files are required to build your requested output file, then which files are required to build those files, and so on until it has determined a sequence of steps. Make is also smart enough to check whether some of the dependencies are already up-to-date, and can skip those steps. Looking at a Makefile you can see everything broken down into simple steps and organized into a tree, through which you can trace various paths. You can make changes at any point, and run Make again to update your project.

        I've done this all so many times that now I often start with a Makefile in an empty directory and build from there. I try experiments on the command line. I make notes. I break the larger task into parts with a checklist. I automate the easy parts first, and leave some parts as manual steps with instructions. I write little scripts in the Makefile. I write larger scripts in the src/ directory. If these get too big or complex, I start thinking about building a specialized tool. (And of course, I store everything in version control.) It takes more time at the beginning, but I think that I usually save time later, because I have a nice place to put everything from the start.

        In other words, I start thinking about automation at the very beginning of the project, assuming from the start that it will grow, and that I'll need to go back and change things. With a mindset for automation, from the start I'm thinking about how the inputs I care about are the same and different, which similarities I can use for my tests and code, and which differences are important or unimportant.

        "},{"location":"lesson/automating-ontology-workflows/#conclusion","title":"Conclusion","text":"

        In the end, my project isn't ever completely automated. It doesn't \"act of itself\". But by making everything clear and explicit I'm telling the computer how to do a lot of the work and other humans (or just my future self) how to do the rest of it. The final secret of automation, especially when it comes to software and data, is communication: expressing things clearly for humans and machines so they can see and do exactly what you did.

        "},{"location":"lesson/automating-ontology-workflows/#scientific-computing-an-overview","title":"Scientific Computing: An Overview","text":"

        By: James Overton

        By \"scientific computing\" we mean using computers to help with key aspect of science such as data collection, cleaning, interpretation, analysis, and visualization. Some people use \"scientific computing\" to mean something more specific, focusing on computational modelling or computationally intensive analysis. We'll be focusing on more general and day-to-day topics: how can a scientist make best use of a computer to do their work well?

        These three things apply to lots of fields, but are particularly important to scientists:

        • reliability
        • reproducibility
        • communication

        It should be no surprise that automation can help with all of these. When working properly, computers make fewer mistakes than people, and the mistakes they do make are more predictable. If we're careful, our software systems can be easily reproduced, which means that an entire data analysis pipeline can be copied and run by another lab to confirm the results. And scientific publications are increasingly including data and code as part of the review and final publication process. Clear code is one of the best ways to communicate detailed steps.

        Automation is critical to scientific instruments and experiments, but we'll focus on the data processing and analysis side: after the data has been generated, how should you deal with it.

        Basic information management is always important:

        • community standard file formats
        • consistent file naming
        • documentation, READMEs
        • backups
        • version control

        More advanced data management is part of this course:

        • consistent use of versioned
        • software
        • reference data
        • terminology
        • controlled vocabularies
        • data dictionaries
        • ontologies

        Some simple rules of thumb can help reduce complexity and confusion:

        • make space
        • firm foundations
        • one-way data flow
        • plan for change
        • test from the start
        • documentation is also for you
        "},{"location":"lesson/automating-ontology-workflows/#make-space","title":"Make Space","text":"

        When starting a new project, make a nice clean new space for it. Try for that \"new project smell\".

        • I always create a new directory on my computer.
        • I almost always create a new GitHub repository.
        • I usually create a README and a Makefile, right away.

        It's not always clear when a project is really \"new\" or just a new phase of an old project. But try to clear some space to make a fresh start.

        "},{"location":"lesson/automating-ontology-workflows/#firm-foundations","title":"Firm Foundations","text":"

        A lot of data analysis starts with a reference data set. It might be a genome or a proteome. It might be a corpus. It might be a set of papers or data from those papers.

        Start by finding that data and selecting a particular version of it. Write that down clearly in your notes. If possible, include a unique identifier such as a (persistent) URL or DOI. If that's not possible, write down the steps you took. If the data isn't too big, keep a copy of it in your fresh new project directory. If the data is a bit too big, keep a compressed copy in a zip or gz file. A lot of software is perfectly happy to read directly from compressed files, and you can compress or uncompress data using piped commands in your shell or script. If the data is really too big, then be extra careful to keep notes on exactly where you can find it again. Consider storing just the hashes of the big files, so you can confirm that they have exactly the same contents.

        If you know from the start that you will need to compare your results with someone else's, make sure that you're using the same reference data that they are. This may require a conversation, but trust me that it's better to have this conversation now than later.

        "},{"location":"lesson/automating-ontology-workflows/#one-way-data-flow","title":"One-Way Data Flow","text":"

        It's much easier to think about processes that flow in one direction. Branches are a little trickier, but usually fine. The real trouble comes with loops. Once a process loops back on itself it's much more difficult to reason about what's happening. Loops are powerful, but with great power comes great responsibility. Keep the systems you design as simple as possible (but no simpler).

        In practical terms:

        • Try not to read then write to the same file. If you have to, try to append rather than overwrite. This is one reason why I prefer tables on disk to databases.
        • Don't hesitate to write intermediate files. These are very useful for testing and debugging. When you're \"finished\" you can comment out these steps.
        "},{"location":"lesson/automating-ontology-workflows/#plan-for-change","title":"Plan for Change","text":"

        It's very tempting: you could automate this step, or you could just do it manually. It might take three times as long to automate it, right? So you can save yourself some precious time by just opening Excel and \"fixing\" things by hand.

        Sometimes that bet will pay off, but I lose that bet most of the time. I tend to realize my mistake only at the last minute. The submission deadline is tomorrow but the core lab \"fixed\" something and they have a new version of the dataset that we need to use for the figures. Now I really don't have time to automate, so I'm up late clicking through Excel again and hoping that I remembered to redo all the changes that I made last time.

        Automating the process would have actually saved me time, but more importantly it would have avoided a lot of stress. By now I should know that the dataset will almost certainly be revised at the last minute. If I have the automation set up, then I just update the data, run the automation again, and quickly check the results.

        "},{"location":"lesson/automating-ontology-workflows/#test-from-the-start","title":"Test from the Start","text":"

        Tests are another thing that take time to implement.

        One of the key benefits to tests is (again) communication. When assessing or trying out some new piece of software I often look to the test files to see examples of how the code is really used, and the shape of the inputs and outputs.

        There's a spectrum of tests that apply to different parts of your system:

        • unit tests: individual functions and methods
        • regression tests: ensure that fixed bugs do not reappear
        • integration tests: end-to-end functionality
        • performance tests: system speed and resource usage
        • acceptance tests: whether the overall system meets its design goals

        Tests should be automated. The test suite should either pass or fail, and if it fails something needs to be fixed before any more development is done. The automated test suite should run before each new version is committed to version control, and ideally more often during development.

        Tests come with costs:

        • development cost of writing the tests
        • time and resources spent running the tests
        • maintenance costs of updating the tests

        The first is obvious but the other two often more important. A slow test suite is annoying to run, and so it won't get run. A test suite that's hard to update won't get updated, and then failures will be ignored, which defeats the entire purpose.

        "},{"location":"lesson/automating-ontology-workflows/#documentation-is-also-for-you","title":"Documentation is also for You","text":"

        I tend to forget how bad a memory I have. In the moment, when I'm writing brilliant code nothing could be more obvious than the perfect solution that is pouring forth from my mind all over my keyboard. But when I come back to that code weeks, months, or years later, I often wonder what the heck I was thinking.

        We think about the documentation we write as being for other people, but for a lot of small projects it's really for your future self. Be kind to your future self. They may be even more tired, even more stressed than you are today.

        There's a range of different forms of documentation, worth a whole discussion of its own. I like this four-way distinction:

        • tutorials: getting started, basic concepts, an overview
        • how-to guides: how to do common tasks
        • explanation: why does it work this way?
        • reference: looking up the details

        You don't need all of these for your small project, but consider a brief explanation of why it works the way it does (aimed at a colleague who knows your field well), and some brief notes on how-to do the stuff this project is for. These could both go in the README of a small project.

        "},{"location":"lesson/automating-ontology-workflows/#additional-materials-and-resources","title":"Additional materials and resources","text":"
        • A whirlwind introduction to the command line
        • Programming with Python
        • Oh My Git!
        "},{"location":"lesson/automating-ontology-workflows/#contributors","title":"Contributors","text":"
        • Nico Matentzoglu
        • James Overton
        "},{"location":"lesson/chatgpt-ontology-curation/","title":"Leveraging ChatGPT for ontology curation","text":""},{"location":"lesson/chatgpt-ontology-curation/#lesson-leveraging-chatgpt-for-ontology-curation","title":"Lesson: Leveraging ChatGPT for ontology curation","text":"

        In this lesson, we will take a look at the generative capabilities of LLM's in general and ChatGPT in particular, to try and get a beginning sense on how to leverage it to enhance ontology curation workflows.

        The goal of the lesson is to give a mental model of what ChatGPT and LLMs are used for (ignoring details on how they work), contextualise the public discourse a bit, and then move on to looking at some concrete examples at its potential for improving curation activties.

        To achieve this we engaged in a dialog with ChatGPT to generate almost the entire content of the lesson. The lesson authors provide the general \"structure\" of the lesson, provided to ChatGPT as a series of prompts, and get ChatGPT to provide the content. This content is obviously not as good as it could have been if it was created by a human with infinite resources, but we hope it does get the following points across:

        1. You can get 80% of the way in 20% (or less, in my case) of the time (it took me 90 minutes to write the lesson, while the same scope of lesson would have taken me 8-10 hours without ChatGPT
        2. Beware of hallucinations in particular
        3. ChatGPT is not only good for generating natural language text, but also structured content
        4. Using ChatGPT is fun, which drastically reduces the mental barrier of using it in a professional context

        We believe that from a user perspective, prompt engineering will be the most important skill that need to be learned when dealing with generative AI. Not just ChatGPT (which generates text), but also tools that generate images from text such as DALL-E or Midjourney, so this is what we will focus on. In the long term, applications like Monarchs OntoGPT will do some of the heavy lifting around writing perfect prompts, but it seems pretty clear that some basic knowledge of prompt engineering will be useful, or even necessary, for a long time to come.

        For a reference of effective ChatGPT prompts for ontology development see here.

        Note: - ChatGPT is rapidly evolving. The moment we add an answer, it will probably be outdated. For example, I created the first version of this tutorial on April 17th 2023. On May 27th, almost all answers ChatGPT is giving are completely different from the ones given in the first round. This is also important to remember when building applications around ChatGPT. - Note: https://open-assistant.io/chat is free and can be used to follow this tutorial instead of ChatGPT.

        "},{"location":"lesson/chatgpt-ontology-curation/#contributors","title":"Contributors","text":"
        • Sierra Moxon
        • Chris Mungall
        • Nico Matentzoglu
        "},{"location":"lesson/chatgpt-ontology-curation/#skills-you-will-learn-in-this-lesson","title":"Skills you will learn in this lesson","text":"
        • Write basic prompts for ChatGPT and similar LLM-based chatbots
        • Understand the basic principles of text in -> text out of LLM-based programs
        • Understand practically the risks of hallucination
        • Motivate yourself to explore the question: \"How, if at all, can I use this technology to become more efficient/effective in my work? (there is no general answer to that yet!)\"
        "},{"location":"lesson/chatgpt-ontology-curation/#conventions","title":"Conventions","text":"

        Prompts

        We use quote syntax with the prompt icon to indicate a concrete prompt for ChatGPT

        Comments

        We use quote syntax with the comment icon to indicate a comment by the author

        Replies by ChatGPT

        Replies are given in normal text form. All text after the table of contents, apart from comments, prompts and the section on executable workflows are generated by ChatGPT.

        "},{"location":"lesson/chatgpt-ontology-curation/#prequisites","title":"Prequisites","text":"
        • Have a very basic understanding of how ChatGPT works.
        "},{"location":"lesson/chatgpt-ontology-curation/#preparation","title":"Preparation","text":"
        • If you have a tiny bit of a technical inclination, we recommend the ca. 60 minute OpenAI/DeepLearning.ai course. It has zero fluff, and is very focussed on some of the core use cases of using ChatGPT as an API.
        • We recommend to spend 30-60 minutes studying the excellent Learn Prompting, a Free, Open Source Course on Communicating with Artificial Intelligence.
        • Take a look at this nice introduction to prompt engineering by anthropic
        • If you want to replicate the contents of this lession, you have to make an account at https://chat.openai.com/
        "},{"location":"lesson/chatgpt-ontology-curation/#lesson","title":"Lesson","text":"
        • Basic concepts and why should you care?
        • What is Prompt Engineering?
        • Applications of LLMs and ChatGPT around ontology development
        • How can we, concretely, enhance the ontology curation process?
        • Using ChatGPT for ontology mappings
        • Generating pre-coordinated expressions and schema instances

        None of the text in this section is generated with ChatGPT.

        In essence, an LLM takes as an input a piece of text, and returns text as an output. A \"prompt\" is a piece of text that is written by an agent. This can be a human, or a software tool, or a combination of the two. In most cases, a human agent will pass the prompt to a specialised tool that pre-processes the prompt in certain ways (like translating it, adding examples, structuring it and more) before passing it to the large language model (LLM). For example, a when a chatbot tool like ChatGPT receives a prompt, it processes the prompt in certain ways, than leveraging the trained LLM to generate the text (which is probably postprocessed) and passed back to the human agent.

        There are an infinite number of possible tools you can imagine following this rough paradigm. Monarch's own ontogpt, for example, receives the prompt from the human agent, then augments the prompt in a certain way (by adding additional instructions to it) before passing the augmentd prompt to an LLM like gpt3.5 (or lately even gpt4), which generates an instance of a curation schema. This is a great example for an LLM generating not only human readable text, but structured text. Another example for this is to ask an LLM to generate, for example, a SPARQL query to obtain publications from Wikidata.

        Given the wide range of applications LLMs can serve, it is important to get a mental model of how these can be leveraged to improve our ontology and data curation workflows. It makes sense for our domain (semantic engineering and curation) to distinguish four basic models of interacting with LLMs (which are technically not much different):

        1. Using LLM-based tools as advisors (endpoint humans)
        2. Using LLM-based tools as assistants (endpoint humans)
        3. Using LLM-based tools to extract information for automated processing (endpoint application)

        Using LLMs as advisors has a huge number of creative applications. An advisor in this sense is a machine that \"knows a lot\" and helps you with your own understanding of the world. Large language models trained on a wide range of inputs are particularly interesting in this regard because of the immense breadth of their knowledge (rather than depth), which is something that can be difficult to get from human advisors. For example, the authors of this article have used ChatGPT and other LLM-based chatbots to help with understanding different domains, and how they might relate to knowledge management and ontologies in order to give specific career advice or to prepare for scientific panel discussions. For ontology curators, LLMs can be used to generate arguments for certain classification decisions (like a disease classification) or even suggest a mapping.

        Using LLMs as assistants is probably the most important use of LLM-based tools at the moment, which includes aspects like summarising texts, generating sometimes boring, yet important, creative work (documentation pages, tutorials, blog-posts etc). It is probably not a good idea, at least as of May 2023, to defer to LLM-based tools to classify a term in an ontology, for example because of its tendency to hallucinate. Despite many arguments to the contrary LLMs are not databases. They are programs to generate text.

        Using LLMs to extract information, similar to \"LLMs as assistants\", is, similar to the above, also about automating certain tasks, but the endpoint is not a software program rather than a human. It is the most important basic model of LLMs for us curators and software engineers to understand, because it is, in essence, the one that threatens our current work-life the most: What happens if LLMs become better at extracting structured knowledge from papers (or similarly generate software codes for user stories) than us? It is important that this thought is not ignored out of fear, but approached with a realistic and positive mindset.

        Training. Apart from the fact that LLMs take text as an input and return text as an output, it is important to be aware how they are trained.

        The basic technique for trainig is called \"next token prediction\". In essence, tokens in the text such as words or phrases are masked out by the training function and the LLM is trained to correctly predict these masked out phrases given the previous words in the sentence (or paragraph). The corpus used for this training ranges from specialised databases all the way to a large chunk of the publicly accessible textual information on the internet. Again, it is important to realise that text does not have to be composed of natural language sentences - learning how to generate programming code and structured data works much the same way.

        In the following, we will ask ChatGPT or Open Assistant a few questions that are relevant to this lesson, which allows us to make certain points. The main point is that a lot of the work for preparing a useful tutorial can be deferred to ChatGPT is an assistant! Many of the questions explore how these tools could relate to us biocurators and semantic engineers in particular, but non of this should be viewed as written in stone. The most important take away from this lesson is that you should play with these tools yourself!

        Can you explain in 3 simple sentences what an LLM is and how it works? [Note this question was asked to [Open Assistant](https://open-assistant.io/chat/) instead of ChatGPT.]

        An LLM (Langauge Modell) is a AI model that can be trained to perform specific tasks such as speech recognition, text generation or machine translation. It's called a \"model\" because it is being trained on large sets of data to predict the next step based on previously learned relationships between inputs and outputs. LLMs are designed to recognize patterns in human language by processing input data through multiple layers of artificial neural networks that simulate the way neurons communicate in the brain. The training process involves feeding vast amounts of text into the model so that it can learn to identify underlying structures within the language itself. This allows the model to make predictions about likely next words or phrases given previous context. By continually adjusting its internal weights and biases using gradient descent techniques, the LLM becomes increasingly proficient at generating coherent text based on statistical probabilities derived from its knowledge of the language.

        What is interesting here: the LLM actually made a typo, or rather, three: Langauge Modell - missing the first L (large), Langauge instead of Language and Modell with double L (which is German). Note that both words are spellied correctly later in the text.

        What are the 5 core concepts relevant for end-users to understand LLMs?

        1. Language Understanding and Generation: LLMs can understand human language inputs and generate text-based responses, allowing for interactive conversations.
        2. Contextual Understanding: LLMs consider the context of the conversation to provide relevant and coherent responses, taking into account previous messages or prompts.
        3. Pretraining: LLMs learn from vast amounts of text data during pretraining, which helps them acquire a general understanding of language, grammar, and context.
        4. Limitations and Potential Bias: LLMs may provide incorrect or biased information as they generate responses based on patterns learned from training data. Users should be mindful of these limitations and critically evaluate the information provided.
        5. Responsible Use and Privacy: Users should use LLMs responsibly, following platform guidelines and being cautious when sharing personal or sensitive information during interactions. Data privacy should be considered while engaging with LLMs.

        "},{"location":"lesson/chatgpt-ontology-curation/#what-is-prompt-engineering","title":"What is prompt engineering?","text":"

        Describe the idea of prompt engineering in simple terms for an audience of domain experts

        Prompt engineering is the process of carefully crafting input queries, or \"prompts,\" to guide the behavior of a large language model (LLM) like GPT-4, ensuring that it provides useful, relevant, and accurate responses. As domain experts, you understand the importance of asking the right questions to extract valuable information. Similarly, with prompt engineering, the goal is to design questions or statements in a way that maximizes the LLM's ability to generate meaningful, high-quality output.

        Essentially, prompt engineering serves as a \"communication bridge\" between humans and the LLM, allowing the model to better understand the intent behind the query and generate the desired response. This can involve refining the wording, providing context, or specifying the format of the desired answer, among other techniques.

        By focusing on the art and science of prompt engineering, researchers and practitioners can better harness the potential of LLMs and overcome some of the challenges related to biases, incomplete knowledge, and misleading responses.

        Providing an effective prompt to ChatGPT is an art form, and as resources like learnprompting.org testify, one that requires cultivation and care. The better you become at writing prompts, the more value you will draw from ChatGPT for your daily ontology curation tasks. How effective our prompts are depends on the exact language models used in ChatGPT (at the moment 3.5 or 4), which means that this lesson will keep evolving.

        "},{"location":"lesson/chatgpt-ontology-curation/#what-are-some-basic-tips-for-writing-good-prompts-for-chatgpt","title":"What are some basic tips for writing good prompts for ChatGPT?","text":"

        In the excellent 60 minute OpenAI, Deeplearning.ai course on Prompt Engineering, we learn that we should be (1) writing clear an specific instructions and (2) give ChatGPT \"time to think\".

        • Talking to a LLM is like talking to a teenager
        • Give clear and specific instructions.
        • Use different words to get better results the second time.
        • Give the LLM time to think.

        "},{"location":"lesson/chatgpt-ontology-curation/#applications-of-chatgpt-for-ontology-development","title":"Applications of ChatGPT for ontology development","text":"

        What are some potential applications of ChatGPT for ontology development?

        ChatGPT can be a valuable tool for ontology development in various ways. Some potential applications include:

        1. Concept identification: ChatGPT can help identify and extract relevant concepts from large volumes of unstructured text, providing a list of entities, relationships, and attributes that can be included in an ontology.
        2. Semantic relation extraction: ChatGPT can be employed to detect semantic relationships between concepts, such as \"is-a\" or \"part-of\" relations, facilitating the construction of the ontology's hierarchical structure.
        3. Ontology validation: ChatGPT can assist in validating and refining the structure of an ontology by providing human-like feedback on its consistency and coherence, suggesting improvements, or identifying potential gaps or redundancies.
        4. Automated ontology population: ChatGPT can be used to generate instances of entities and relationships based on examples or descriptions, helping to populate the ontology with relevant data.
        5. Ontology alignment and merging: ChatGPT can help identify similarities and differences between different ontologies, supporting the process of ontology alignment and merging, which is essential when integrating information from diverse sources.
        6. Natural language interfaces: ChatGPT can be utilized to develop natural language interfaces for interacting with ontologies, allowing users to query and explore the ontology using conversational language rather than complex formal queries.
        7. Ontology documentation: ChatGPT can assist in generating human-readable documentation for ontologies, including explanations of concepts, relationships, and properties, making it easier for users to understand and work with the ontology.
        8. Ontology learning: ChatGPT can be trained to learn from examples or other sources of knowledge, supporting the semi-automatic or automatic creation of ontologies based on the input data.

        By leveraging the capabilities of ChatGPT, ontology developers can streamline the development process, enhance the quality of their ontologies, and facilitate their adoption and use across various domains.

        "},{"location":"lesson/chatgpt-ontology-curation/#how-can-we-concretely-enhance-the-ontology-curation-process","title":"How can we, concretely, enhance the ontology curation process?","text":"

        A normal workflow of ontology curation is this:

        1. A concept is required by a biocurator to describe a piece of data, for example, a disease concept, or an anatomical entity.
        2. The biocurator requests the new concept (or term) from the ontology curator, providing a label and perhaps a scientific reference
        3. The ontology curator then adds that concept to the ontology using a tool like Protege, adding a human-readable definition, synonyms and provenance metadata. Most importantly, they define the concept logically, often using a formalism such as OWL specifying super-classes, and other logical relationships
        4. Lastly, the ontology curator runs a number of quality checks to ensure that the added concepts is logically coherent (e.g. the reasoner places it in the intended part of of the class hierarchy).

        How can ChatGPT be used concretely to help with that process?

        ChatGPT can be incorporated into various stages of the ontology curation workflow to assist biocurators and ontology curators in streamlining and improving the process. Here's how ChatGPT can be used concretely at each step:

        1. Concept identification: ChatGPT can help the biocurator identify relevant concepts based on the data they are working with. By providing information or descriptions related to the data, the biocurator can receive a list of potential concepts or terms, including disease concepts or anatomical entities, that might be suitable for the ontology.
        2. Term request and communication: ChatGPT can facilitate communication between the biocurator and the ontology curator. It can be used to draft the term request, including the label, scientific reference, and any other relevant information, ensuring that the request is clear and complete.
        3. Concept addition and metadata generation: ChatGPT can assist ontology curators in generating human-readable definitions, synonyms, and provenance metadata for the new concept. By providing the initial label and scientific reference, ChatGPT can produce candidate definitions, suggest synonyms, and even help draft metadata descriptions. Additionally, it can provide suggestions for logical relationships, such as super-classes and other connections, using its understanding of the formalism, like OWL.
        4. Quality checks and coherence: While ChatGPT may not directly run quality checks like a reasoner, it can help ontology curators verify the coherence of the added concepts by providing human-like feedback on the logical relationships and overall structure. It can suggest potential issues, such as redundancies or inconsistencies, that the curator may want to address to ensure that the concept is logically coherent and correctly placed in the class hierarchy.

        By integrating ChatGPT into the ontology curation workflow, biocurators and ontology curators can benefit from its natural language understanding and generation capabilities, making the process more efficient and accurate. However, it is essential to keep in mind that ChatGPT should be used as a complementary tool and not as a replacement for human expertise or specialized software designed for ontology development and curation.

        "},{"location":"lesson/chatgpt-ontology-curation/#using-chatgpt-for-ontology-mappings","title":"Using ChatGPT for ontology mappings","text":"

        What about ontology mappings?

        LLMs like ChatGPT can be used to identify equivalent or similar concepts across different ontologies by analyzing concept labels, definitions, and other metadata. They can understand and process natural language descriptions and compare them to find potential matches or alignments between concepts. Specifically, LLMs can:

        • Perform text similarity analysis: By comparing the textual descriptions of concepts, LLMs can calculate similarity scores, identifying closely related concepts across different ontologies.
        • Understand contextual relationships: LLMs can identify and consider the context in which concepts are used, making it easier to match concepts that have similar meanings or roles within their respective ontologies.
        • Leverage synonyms and alternative terms: LLMs can use synonyms or alternative terms provided in the ontology metadata to improve concept matching, ensuring that equivalent concepts with different labels can still be identified.
        • Exploit structured knowledge: LLMs can be trained to understand and work with formalisms like OWL and RDF, which can help them identify matching concepts based on the structured information within ontologies.

        By leveraging these capabilities, LLMs can assist ontology curators in the challenging task of concept matching, ultimately enhancing the ontology mapping and alignment process.

        Can you provide an example of mapping a concept from the Human Phenotype Ontology to the Mammalian Phenotype Ontology?

        Let's consider the concept \"Abnormality of the ear\" in HPO.

        1. HPO Concept:
        2. ID: HP:0000598
        3. Label: Abnormality of the ear
        4. Definition: A structural or functional anomaly of the ear.

        Our goal is to find a matching or similar concept in the Mammalian Phenotype Ontology (MPO).

        1. After analyzing the MPO, we find the following concept:
        2. ID: MP:0002161
        3. Label: abnormal ear morphology
        4. Definition: any structural anomaly of the external or middle ear

        In this case, both concepts describe abnormalities of the ear in their respective domains (human and mammalian). The labels and definitions are similar, indicating that these concepts might be considered equivalent or closely related.

        Thus, we can propose the following mapping:

        • HPO: HP:0000598 (Abnormality of the ear) <=> MPO: MP:0002161 (abnormal ear morphology)

        COMMENT. The 27th May version of ChatGPT is giving a different answer:

        Sure, let's consider an example for this mapping:

        Human Phenotype Ontology (HPO) is designed to classify and annotate the phenotypic abnormalities encountered in human disease. Each term in HPO describes a specific phenotypic abnormality, such as 'HP:0004322 - Short stature' which describes an abnormality of body height that is less than -2 standard deviations compared to the appropriate reference population.

        Mammalian Phenotype Ontology (MPO), on the other hand, is used in the annotation of data from mammalian phenotyping experiments, typically in model organisms like mice. Its equivalent term for short stature might be 'MP:0001265 - decreased body size' which describes a mammal with an overall smaller body size.

        So, in this case, 'HP:0004322 - Short stature' in HPO could be mapped to 'MP:0001265 - decreased body size' in MPO.

        Please note that this is a simplified example and the actual mapping process could be more complex, due to the nuanced differences between human and mammalian phenotypes and the structure of these ontologies. For actual mappings, it is essential to ensure the descriptions and definitions align appropriately, and the context of use is correctly considered.

        Also, there may not always be a one-to-one correspondence between the terms in different ontologies. Sometimes, one term in an ontology may correspond to multiple terms in another, or there may not be an equivalent term at all. This is why ontological mapping is a complex task requiring domain knowledge and careful consideration.

        Can you express the above mapping in SSSOM?

        The Simple Standard for Sharing Ontology Mappings (SSSOM) is a standard that enables sharing and comparing ontology mappings using a simple tabular format (TSV). Here's the example mapping from Human Phenotype Ontology (HPO) to Mammalian Phenotype Ontology (MPO) expressed in SSSOM format:

        subject_id  subject_label                 predicate_id  object_id  object_label            match_type  confidence\nHP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  Lexical     0.90\n

        In this case, I have used skos:closeMatch as the predicate to represent the close relationship between the two concepts. The match_type is \"Lexical\" since the mapping is based on similar labels and definitions. The confidence score is set to 0.90 to reflect a high degree of similarity between the concepts, but this value may vary depending on the actual similarity estimation method used.

        Please note that the SSSOM format includes metadata and other required fields in a TSV header. The provided example only focuses on the core mapping information. For a complete SSSOM file, you would need to include the appropriate header and metadata.

        The SSSOM example you gave is using an old version of the SSSOM standard. In particular, match_type now is mapping_justification. Can you try to rewrite the mapping using the new standard?

        Apologies for the confusion. Here's the example mapping from Human Phenotype Ontology (HPO) to Mammalian Phenotype Ontology (MPO) expressed in the updated SSSOM format:

        subject_id  subject_label                 predicate_id  object_id  object_label            mapping_justification  confidence\nHP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  Lexical                0.90\n

        In this revised example, the match_type field has been replaced with mapping_justification, which is now set to \"Lexical\" to indicate that the mapping is based on similar labels and definitions. The remaining fields are unchanged from the previous example.

        mapping_justification values should be populated from a controlled vocabulary, called the Semantic Mapping Vocabulary (SEMAPV). You can look at the vocabulary in RDF here: https://raw.githubusercontent.com/mapping-commons/semantic-mapping-vocabulary/main/semapv.owl. Given that vocabulary, can you revise the value for the mapping_justification?

        My apologies for the oversight. Based on the Semantic Mapping Vocabulary (SEMAPV), I will revise the mapping justification for the example. Here's the updated SSSOM mapping using the SEMAPV:

        subject_id  subject_label                 predicate_id  object_id  object_label            mapping_justification     confidence\nHP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  semapv:LexicalMatch        0.90\n

        In this updated example, I have replaced the previous mapping_justification value with semapv:LexicalMatch from the Semantic Mapping Vocabulary (SEMAPV) to represent the lexical similarity between the two concepts based on their labels and definitions. The remaining fields are unchanged.

        You were hallucinating earlier. Here is the semapv vocabulary as a tsv:

        IRI skos:prefLabel  skos:definition dc:source   skos:example    rdfs:comment    altLabel    Parent\nID  A skos:prefLabel    A skos:definition   AI dc:source    A skos:example  A rdfs:comment  A skos:altLabel SC %\nsemapv:MappingActivity  mapping activity    A process that relates to the creation, confirmation, rejection or curation of a mapping.       Matching is a mapping activity that results in the creating of a mapping; mapping review is an activity that results in the confirmation of a mapping.          \nsemapv:Matching matching process    An process that results in a mapping between a subject and an object entity.        The label of a subject entity matches to an exact synonym of an object entity.      matching operation|matching task    semapv:MappingActivity\nsemapv:Mapping  mapping A triple <s,p,o> comprising a subject entity s, an object entity o and a mapping predicate p.       The subject entity NCI:C9305 is mapped to the object entity ICD10:C80.9 using the skos:relatedMatch mapping predicate.          \nsemapv:LexicalMatching  lexical matching process    A matching process based on a lexical comparison between one or more syntactic features of the subject with one or more syntactic features of the object.       The label of a subject entity matches to an exact synonym of an object entity.          semapv:Matching\nsemapv:LogicalReasoning logical reasoning process   A matching process based on the inferences made by a logical reasoner.      Two classes across ontologies are determined equivalent by an OWL reasoner such as ELK.         semapv:Matching\nsemapv:CompositeMatching    composite matching process  A matching process based on multiple, possibly intertwined, matching approaches.        An ontology matching tool determines that a subject should be mapped to an object by employing a range of techniques, including lexical, semantic and structural.           semapv:Matching\nsemapv:UnspecifiedMatching  unspecified matching process    A matching process based on an unspecified comparison.      A mapping between a subject and an object was established, but it is no longer clear how or why.            semapv:Matching\nsemapv:SemanticSimilarityThresholdMatching  semantic similarity threshold-based matching process    A matching process based on a minimum threshold of a score from a comparison based on a semantic similarity algorithm.      A match between a subject and an object entity was established because they had a Jaccard score higher than 0.8 based on the set of (common) superclasses.          semapv:Matching\nsemapv:LexicalSimilarityThresholdMatching   lexical similarity threshold-based matching process A lexical matching process based on a minimum threshold of a score from a comparison based on a lexical similarity algorithm.       A match between a subject and an object was established because they had a Levenshtein score higher than 0.8.           semapv:Matching\nsemapv:StructuralMatching   structural matching process     https://doi.org/10.1016/j.websem.2009.11.002    A match between a subject and an object was established because of the similarity of their structural features, e.g., the number of direct property of a class. Structural matching does not involve looking at \"values\" of properties.     semapv:Matching\nsemapv:InstanceBasedMatching    instance-based matching process A matching process based on individual representations (or instances).  https://doi.org/10.1007/978-3-642-38721-0   A match between a subject A and an object B was established because they share the same instances.          semapv:Matching\nsemapv:BackgroundKnowledgeBasedMatching background knowledge-based matching process A matching process that exploits background knowledge from external resources, commonly referred to as background knowledge resources. This approach is also known as indirect matching, BK-based matching or context-based matching.   https://doi.org/10.1016/j.websem.2018.04.001    A match between a subject A and an object B was established because they appear equivalent under consideration of externally provided background knowledge.         semapv:Matching\nsemapv:MappingChaining  mapping chaining-based matching process A matching process based on the traversing of multiple mappings.        A match between a subject A and an object B was established because A was mapped to C, C was mapped to D and D was mapped to B.         semapv:Matching\nsemapv:MappingReview    mapping review  A process that is concerned with determining if a mapping \u201ccandidate\u201d (otherwise determined) is reasonable/correct.     A match between a subject A and an object B was established elsewhere, and a human reviewer determined that the mapping is true (or false) based on an independent evaluation.          semapv:MappingActivity\nsemapv:ManualMappingCuration    manual mapping curation An matching process that is performed by a human agent and is based on human judgement and domain knowledge.        A human curator determines that a subject should be mapped to an object by virtue of their domain expertise.            semapv:Matching\nsemapv:MatchingPreprocessing    matching process pre-processing A preliminary processing of inputs prior to performing matching.                    semapv:MappingActivity\nsemapv:Stemming stemming    The process of reducing a word to its word stem.                    semapv:Normalization\nsemapv:Lemmatization    lemmatization   The process of reducing the different forms of a word to one single form.   https://doi.org/10.1007/978-3-642-38721-0               semapv:Normalization\nsemapv:StopWordRemoval  stop-word removal   A preprocessing method transforming a string by removing a list of stop words.  https://doi.org/10.1007/978-3-642-38721-0   The stop-words \u201cof, and, is, a\u201d are removed from the label field of the subject entity in the mapping.          semapv:Normalization\nsemapv:RegexRemoval regex removal   A preprocessing method transforming a string by matching a regular expression and then removing that match.     The regex match \u201c[ -]phenotype\u201d is removed from the label field of the subject entity in the mapping.           semapv:Normalization\nsemapv:RegexReplacement regex replacement   A preprocessing method transforming a string by matching a regular expression and then replacing that match with a specified substitution string.       The regex match \u201c[ -]phenotype\u201d is replaced by \u201c-disease\u201d for the label field of the subject entity in the mapping.         semapv:Normalization\nsemapv:MatchingPostProcessing   matching process post-processing    A process applied to a set of mappings, usually with the intention of changing it.                  semapv:MappingActivity\nsemapv:ThresholdFiltering   threshold filtering                     semapv:MatchingPostProcessing\nsemapv:StableMarriageFiltering  stable marriage filtering                       semapv:MatchingPostProcessing\nsemapv:CardinalityFiltering cardinality filtering                       semapv:MatchingPostProcessing\nsemapv:LogicalConsistencyFiltering  logical consistency filtering                       semapv:MatchingPostProcessing\nsemapv:Normalization    normalization   A family of preprocessing techniques for reducing strings to be compared to a common format.    https://doi.org/10.1007/978-3-642-38721-0               semapv:MatchingPreprocessing\nsemapv:CaseNormalization    case normalization  A normalization technique converting each alphabetic character in a string to their lower case counterpart. https://doi.org/10.1007/978-3-642-38721-0   The string 'Ontology' is normalised to 'ontology' (lower case).         semapv:Normalization\nsemapv:DiacriticsSuppression    diacritics suppression  A normalization technique replacing diactritic signs (e.g. accents, hats) with their most frequent replacements.    https://doi.org/10.1007/978-3-642-38721-0   The string 'Prot\u00e9g\u00e9' is normalised to 'Protege'.            semapv:Normalization\nsemapv:BlankNormalisation   blank normalisation A normalization technique replacing all blank characters, such as space, tabulation, carriage return (or sequences of these) into a single blank character. https://doi.org/10.1007/978-3-642-38721-0   The string 'ontology  matching' (two spaces between 'ontology' and 'matching) becomes 'ontology matching' (one space).          semapv:Normalization\nsemapv:LinkStripping    link stripping  A normalization technique replacing specific links between words, such as apostrophes, dashes, underscore, etc into dashes or blanks.   https://doi.org/10.1007/978-3-642-38721-0   The string 'alzheimer's' becomes 'alzheimers'.          semapv:Normalization\nsemapv:DigitSuppression digit suppression   A normalization technique removing all numbers in a string.     https://doi.org/10.1007/978-3-642-38721-0   The string 'ontology1' becomes 'ontology'.          semapv:Normalization\n

        Can you use this to pick the right mapping justification?

        Apologies for the confusion earlier. Based on the provided SEMAPV vocabulary as a TSV, I will revise the mapping justification for the example. Here's the updated SSSOM mapping using the correct SEMAPV:

        subject_id  subject_label                 predicate_id  object_id  object_label            mapping_justification                    confidence\nHP:0000598  Abnormality of the ear        skos:closeMatch  MP:0002161  abnormal ear morphology  semapv:LexicalMatching                    0.90\nIn this updated example, I have replaced the previous mapping_justification value with semapv:LexicalMatching from the provided Semantic Mapping Vocabulary (SEMAPV) to represent the lexical similarity between the two concepts based on their labels and definitions. The remaining fields are unchanged.\n

        Please remember that a complete SSSOM file would require the appropriate header and metadata in addition to the core mapping information provided in the example.

        Can you add 4 more examples to that SSSOM table

        Sure, here are 4 more examples of mappings between the Human Phenotype Ontology (HPO) and the Mammalian Phenotype Ontology (MPO) using SSSOM format:

        subject_id  subject_label                         predicate_id  object_id  object_label                      mapping_justification                    confidence\nHP:0000598  Abnormality of the ear                skos:closeMatch  MP:0002161  abnormal ear morphology            semapv:LexicalMatching                    0.90\nHP:0000365  Hearing impairment                    skos:closeMatch  MP:0006325  hearing loss                      semapv:LexicalMatching                    0.92\nHP:0001382  Joint hypermobility                   skos:closeMatch  MP:0004927  increased joint flexibility       semapv:LexicalMatching                    0.85\nHP:0001392  Hepatomegaly                          skos:closeMatch  MP:0002764  enlarged liver                    semapv:LexicalMatching                    0.88\nHP:0001250  Seizures                              skos:closeMatch  MP:0002064  seizures                          semapv:LexicalMatching                    0.95\n

        These examples illustrate mappings between HPO and MPO concepts based on lexical matching, where the similarity between the labels and definitions is considered. Note that the confidence values are provided as an example and may differ in real-world scenarios.

        Can you print only the table using markdown table syntax in a way that I can copy paste it

        subject_id subject_label predicate_id object_id object_label mapping_justification confidence HP:0000598 Abnormality of the ear skos:closeMatch MP:0002161 abnormal ear morphology semapv:LexicalMatching 0.90 HP:0000365 Hearing impairment skos:closeMatch MP:0006325 hearing loss semapv:LexicalMatching 0.92 HP:0001382 Joint hypermobility skos:closeMatch MP:0004927 increased joint flexibility semapv:LexicalMatching 0.85 HP:0001392 Hepatomegaly skos:closeMatch MP:0002764 enlarged liver semapv:LexicalMatching 0.88 HP:0001250 Seizures skos:closeMatch MP:0002064 seizures semapv:LexicalMatching 0.95

        Can you add 100 more examples, this time only providing a markdown table that I can copy paste, with no further comments around it?

        Creating 100 mappings with accuracy requires domain expertise and a comprehensive understanding of the ontology mappings. However, I can provide you with 20 examples to help you understand the format. Please note that these examples may not be completely accurate and should not be used for any critical applications.

        subject_id subject_label predicate_id object_id object_label mapping_justification confidence HP:0000010 Megabladder skos:closeMatch MP:0000547 enlarged bladder semapv:LexicalMatching 0.85 HP:0000014 Renal agenesis skos:closeMatch MP:0000548 absent kidney semapv:LexicalMatching 0.82 HP:0000015 Bladder diverticulum skos:closeMatch MP:0000556 bladder diverticula semapv:LexicalMatching 0.88 HP:0000016 Urethral atresia skos:closeMatch MP:0000565 closed urethra semapv:LexicalMatching 0.90 HP:0000020 Renal duplication skos:closeMatch MP:0000571 duplex kidney semapv:LexicalMatching 0.84 HP:0000021 Hypospadias skos:closeMatch MP:0000573 abnormal penis morphology semapv:LexicalMatching 0.76 HP:0000022 Urethral stricture skos:closeMatch MP:0000574 urethral obstruction semapv:LexicalMatching 0.86 HP:0000025 Polycystic kidney dysplasia skos:closeMatch MP:0000576 polycystic kidney semapv:LexicalMatching 0.92 HP:0000026 Hyperechogenic kidneys skos:closeMatch MP:0000581 abnormal kidney echogenicity semapv:LexicalMatching 0.81 HP:0000027 Renal cortical microcysts skos:closeMatch MP:0000584 renal cortical cysts semapv:LexicalMatching 0.89 HP:0000028 Renal tubular atrophy skos:closeMatch MP:0000585 atrophic renal tubules semapv:LexicalMatching 0.87 HP:0000031 Renal hypoplasia skos:closeMatch MP:0000591 small kidney semapv:LexicalMatching 0.79 HP:0000032 Renal hypoplasia/aplasia skos:closeMatch MP:0000592 renal hypoplasia semapv:LexicalMatching 0.91 HP:0000033 Proximal tubulopathy skos:closeMatch MP:0000593 abnormal proximal tubule semapv:LexicalMatching 0.75 AT THIS POINT CHATGPT JUST STOPPED GENERATING CONTENT.

        "},{"location":"lesson/chatgpt-ontology-curation/#generating-pre-coordinated-expressions-and-schema-instances","title":"Generating pre-coordinated expressions and schema instances","text":"

        Here are a few slots in a schema: quality, anatomical_entity and chemical_entity

        quality:\ndescription: The property being measured, or changes in this property, for example, amount, level, increased amount, decreased concentration\nannotations:\n    prompt.example: amount, level, increased amount, decreased concentration\nrange: Quality\n\nanatomical_entity:\ndescription: The anatomical location that the chemical entity is measured in\nrange: AnatomicalEntity\nannotations:\n    prompt.example: liver, heart, brain, finger\n\nchemical_entity:\ndescription: The chemical entity that is being measured\nrange: ChemicalEntity\nannotations:\n    prompt.example: lysine, metabolite\n

        Can you create a YAML file with those three elements as keys, and extract the contents of the string \"increased blood glucose levels\" into as values to these keys? Output should be just a simple yaml file, like:

        quality: concentration\nanatomical_entity: liver\nchemical_entity: lysine\n
        "},{"location":"lesson/chatgpt-ontology-curation/#todo-finish-this-section","title":"TODO FINISH THIS SECTION","text":""},{"location":"lesson/chatgpt-ontology-curation/#from-chat-to-exectutable-workflows-what-we-need-to-do-to-leverage-llms","title":"From Chat to exectutable workflows: what we need to do to leverage LLMs","text":"

        The above tutorial was a fun case study using ChatGPT with GPT-4. 95% of the content provided was generated by ChatGPT with GPT-4. While certainly not as great as possible, it took a solid ontology engineer (@matentzn) about 90 minutes to write this lesson, which would have usually cost him more than 8 hours.

        It is clear that learning how to talk to AI, the process we refer to as \"prompt engineering\" is going to be absolutely essential for ontology curators moving forward - as LLMs improve and understand even complex languages like OWL better, perhaps as important as ontology modelling itself. I dont think there is any doubt that enganging is a good amount of play and study on this subject is both fun and hugely beneficial.

        All that said, perceiving LLMs through the lens of a chat bot leaves a lot of potential unexplored. For example, if ChatGPT (or LLMs in general) can generate structured data, why not implement this directly into our curation tools (like Protege)? Tools like GitHub co-pilot are already used to making good programmers a lot more effective, but so far, these tools focus on development environments where the majority of the generated content is text (e.g. software code), and not so much heavily UI driven ones like Protege.

        A lot of blog posts have circulated recently on Twitter and LinkedIn explored the potential of LLMs to generate RDF and OWL directly. It is already clear that LLMs can and will do this moving forward. For ontology curation specifically, we will need to develop executable workflows that fit into our general ontology curation process. As a first pass, some members of our community have developed OntoGPT. We will explore how to use OntoGPT in a future lesson.

        "},{"location":"lesson/chatgpt-ontology-curation/#some-more-thoughts-on-hallucinations","title":"Some more thoughts on hallucinations","text":"

        Update 27 May 2023: It seems that complaints wrt to hallucinations, the chat part of ChatGPT is a bit more sensitive to database like queries:

        "},{"location":"lesson/chatgpt-ontology-curation/#cool-applications-the-authors-of-this-tutorial-used","title":"Cool applications the authors of this tutorial used","text":"
        • The key is that it is generative: the key thing is that we are generating text that is human like
        • As databases, LLMs are very inefficient (see excellent talk by Denny Vrandecic) and Hallucinate too often (Chat)
        • Writing emails: shortening
        • Writing documentations:
        • Writing docs for a softare tool. Adding background info and context.
        • Find a good human-readable name for a cluster in ML clustering
        • Named entity recognition and knowledge extraction
        • Career planning and discovering stuff you didnt know about at all
        • ChatGPT for contextualising work and writing use cases
        • Using it for curation research - but doing it right
        • Don't ask it to do the curation for you, get it to help you find arguments for and against a modelling decision (\"I will always have to recurate anyways, so what is the point?\")
        • Always remember that ChatGPT is not a database. It hallucinates and changes its mind all the time. Get it to generate text for you that could be useful in your work.
        "},{"location":"lesson/chatgpt-ontology-curation/#additional-materials","title":"Additional materials","text":"
        • Tutorial on using OntoGPT
        • Reference of effective prompts for ChatGPT

        (Current) Limitations:

        • 8 Things to know about large language models
        • On the Dangers of Stochastic Parrots: Can Language Models Be Too Big?
        "},{"location":"lesson/contributing-to-obo-ontologies/","title":"Contributing to OBO ontologies","text":""},{"location":"lesson/contributing-to-obo-ontologies/#prerequisites","title":"Prerequisites","text":"

        Participants will need to have access to the following resources and tools prior to the training:

        • GitHub account - register for a free GitHub account here
        • Protege - Install the latest version of Protege, download it from the GitHub repository here
        • Install GitHub Desktop Please make sure you have some kind of git client installed on your machine. If you are new to Git, please install GitHub Desktop
        "},{"location":"lesson/contributing-to-obo-ontologies/#preparation","title":"Preparation","text":"
        • Review tutorial on Ontology Term Use
        "},{"location":"lesson/contributing-to-obo-ontologies/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        Description: How to contribute terms to existing ontologies.

        "},{"location":"lesson/contributing-to-obo-ontologies/#learning-objectives","title":"Learning objectives","text":"
        • How to use GitHub
        • GitHub workflows
        • Branch vs Fork
        • How to create GitHub Issues
        • Understand basic Open Source etiquette
        • Reading READMEs
        • Understand basics of ontology development workflows
        • Browsing and Searching in Protege
        • Add new terms to an ontology
          • Initial Protege setup
          • Protege editing
          • The Class description view
        • Use GitHub: make pull requests
        • Understand ontology design patterns
        • Use templates: ROBOT, DOSDP (under development)
        • Basics of OWL
        • Logic and debugging
        "},{"location":"lesson/contributing-to-obo-ontologies/#tutorials","title":"Tutorials","text":""},{"location":"lesson/contributing-to-obo-ontologies/#monarch-obo-training-tutorials","title":"Monarch OBO training Tutorials","text":""},{"location":"lesson/contributing-to-obo-ontologies/#contributing-to-ontologies-part-1","title":"Contributing to Ontologies Part 1","text":""},{"location":"lesson/contributing-to-obo-ontologies/#contributing-to-ontologies-part-2","title":"Contributing to Ontologies Part 2","text":""},{"location":"lesson/contributing-to-obo-ontologies/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/contributing-to-obo-ontologies/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        • Rebecca Jackson
        • Melissa Haendel
        • Chris Mungall
        • David Osumi-Sutherland
        • Matt Yoder
        • Carlo Torniai
        • Simon Jupp
        "},{"location":"lesson/contributing-to-obo-ontologies/#use-github","title":"Use GitHub","text":""},{"location":"lesson/contributing-to-obo-ontologies/#github-workflows","title":"GitHub workflows","text":"

        GitHub - distributed version control (Git) + social media for geeks who like to build code/documented collaboratively.

        A Git repo consists of a set of branches each with a complete history of all changes ever made to the files and directories. This is true for a local copy you check out to your computer from GitHub or for a copy (fork) you make on GitHub.

        A Git repo typically has a master or main branch that is not directly editing. Changes are made by creating a branch from Master (complete copy of the Master + its history).

        "},{"location":"lesson/contributing-to-obo-ontologies/#branch-vs-fork","title":"Branch vs Fork","text":"

        You can copy (fork) any GitHub repo to some other location on GitHub without having to ask permission from the owners.\u00a0 If you modify some files in that repo, e.g. to fix a bug in some code, or a typo in a document, you can then suggest to the owners (via a Pull Request) that they adopt (merge) you your changes back into their repo.

        If you have permission from the owners, you can instead make a new branch. For this training, we gave you access to the repository. See the Appendix for instructions on how to make a fork.

        "},{"location":"lesson/contributing-to-obo-ontologies/#create-github-issues","title":"Create GitHub Issues","text":"
        1. Go to GitHub tracker for the ontology where you'd like to create an issue
        2. Select New issue
        3. Pick appropriate template (if applicable)
        4. Fill in the information that is requested on the template below each header
        5. For a new term request, please include:
        6. The parent ID and label
        7. A definition in the proper format
        8. Sources/cross references for synonyms
        9. Your ORCID
        10. Add any additional comments at the end
        11. If you are requesting changes to an existing term, include as much information as possible, including the term ID and label.
        12. If you use a template, an ontology curator may automatically be assigned.

        Tip: you can easily obtain term metadata like OBO ID, IRI, or the term label by clicking the three lines above the Annotations box (next to the term name) in Protege, see screenshot below. You can also copy the IRI in markdown, which is really convenient for pasting into GitHub.

        "},{"location":"lesson/contributing-to-obo-ontologies/#video-explanation","title":"Video Explanation","text":"

        See this example video on creating a new term request to the Mondo Disease Ontology:

        "},{"location":"lesson/contributing-to-obo-ontologies/#basic-open-source-etiquette","title":"Basic Open Source etiquette","text":"
        • Keep in mind that open source ontology repositories on GitHub are public and open to all.
        • Be respectful in your requests and comments.
        • Do not include any private information.
        • GitHub sends notifications to your email, and you can respond via your email client. Keep in mind, the responses are posted publicly. Be sure to delete your email signature that includes any personal information, like your email address or phone number.
        • Many ontologies have limited resources and personnel for development and maintenance. Please be patient with your requests.
        • If your ticket/request has been unanswered for a long period of time, feel free to kindly check in by commenting on the ticket.
        • Including a deadline or priority on the ticket can help the ontology curators with triaging tickets.
        "},{"location":"lesson/contributing-to-obo-ontologies/#reading-readmes","title":"Reading READMEs","text":"

        A README is a text file that introduces and explains a project. It is intended for everyone, not just the software or ontology developers. Ideally, the README file will include detailed information about the ontology, how to get started with using any of the files, license information and other details. The README is usually on the front page of the GitHub repository.

        "},{"location":"lesson/contributing-to-obo-ontologies/#basics-of-ontology-development-workflows","title":"Basics of ontology development workflows","text":""},{"location":"lesson/contributing-to-obo-ontologies/#ontology-development-workflows","title":"Ontology development workflows","text":"

        The steps below describe how to make changes to an ontology.

        1. Go to the GitHub repository for your ontology, and clone the repository. The example below describes how to clone the Mondo Disease Ontology repo, but this can be applied to any ontology that is stored in GitHub.
        "},{"location":"lesson/contributing-to-obo-ontologies/#clone-the-mondo-repo","title":"Clone the Mondo repo","text":"
        1. Open the Mondo GitHub repository
        2. Click Code
        1. Click 'Open with GitHub Desktop'
        1. You will be given an option as to where to save the repository. I have a folder called 'git' where I save all of my local repos.
        2. This will open GitHub Desktop and the repo should start downloading. This could take some time depending on how big the file is and how much memory your computer has.
        "},{"location":"lesson/contributing-to-obo-ontologies/#create-a-branch-using-github-desktop","title":"Create a branch using GitHub Desktop","text":"
        1. Click the little arrow in Current Branch
        2. Click New Branch
        3. Give your branch a name: training-initials (ie training-NV)
        "},{"location":"lesson/contributing-to-obo-ontologies/#open-the-ontology-edit-file-in-protege","title":"Open the Ontology edit file in Protege","text":"
        1. Open Protege
        2. Go to: File -> Open
        3. Navigate to [ontology-name]/src/ontology/[ontology-name]-edit.obo and open this file in Protege. For example: mondo/src/ontology/mondo-edit.obo
        4. Note: all ontologies that use the Ontology Development Kit (ODK) will have the 'edit' files stored in the same folder path: src/ontology/[ontology-name]-edit.owl (or [ontology-name]-edit.obo)
        "},{"location":"lesson/contributing-to-obo-ontologies/#browsing-and-searching-in-protege","title":"Browsing and Searching in Protege","text":"

        The instructions below are using the Mondo Disease Ontology as an example, but this can be applied to any ontology.

        "},{"location":"lesson/contributing-to-obo-ontologies/#open-the-mondo-in-protege","title":"Open the Mondo in Prot\u00e9g\u00e9","text":"

        Note: Windows users should open Protege using run.bat

        1. Navigate to where you downloaded the repository and open the mondo-edit.obo file (src/ontology/mondo-edit.obo)
        2. When you open Protege, you will be on the Active Ontology tab
        3. Note the Ontology IRI field. The IRI is used to identify the ontology on the Web.

        "},{"location":"lesson/contributing-to-obo-ontologies/#the-protege-ui","title":"The Prot\u00e9g\u00e9 UI","text":"

        The Prot\u00e9g\u00e9 interface follows a basic paradigm of Tabs and Panels. By default, Prot\u00e9g\u00e9 launches with the main tabs seen below. The layout of tabs and panels is configurable by the user. The Tab list will have slight differences from version to version, and depending on your configuration. It will also reflect your customizations.

        To customize your view, go to the Window tab on the toolbar and select Views. Here you can customize which panels you see in each tab. In the tabs view, you can select which tabs you will see. You will commonly want to see the Entities tab, which has the Classes tab and the Object Properties tab.

        Note: if you open a new ontology while viewing your current ontology, Prot\u00e9g\u00e9 will ask you if you'd like to open it in a new window. \u00a0For most normal usage you should answer no. This will open in a new window.

        The panel in the center is the ontology annotations panel. This panel contains basic metadata about the ontology, such as the authors, a short description and license information.

        "},{"location":"lesson/contributing-to-obo-ontologies/#running-the-reasoner","title":"Running the reasoner","text":"

        Before browsing or searching an ontology, it is useful to run an OWL reasoner first. This ensures that you can view the full, intended classification and allows you to run queries. Navigate to the query menu, and run the ELK reasoner:

        For more details on why it is important to have the reasoner on when using the editors version of an ontology, see the Reasoning reference guide. But for now, you don't need a deeper understanding, just be sure that you always have the reasoner on.

        "},{"location":"lesson/contributing-to-obo-ontologies/#entities-tab","title":"Entities tab","text":"

        You will see various tabs along the top of the screen. Each tab provides a different perspective on the ontology. For the purposes of this tutorial, we care mostly about the Entities tab, the DL query tab and the search tool. OWL Entities include Classes (which we are focussed on editing in this tutorial), relations (OWL Object Properties) and Annotation Properties (terms like, 'definition' and 'label' which we use to annotate OWL entities. Select the Entities tab and then the Classes sub-tab. Now choose the inferred view (as shown below).

        The Entities tab is split into two halves. The left-hand side provides a suite of panels for selecting various entities in your ontology. When a particular entity is selected the panels on the right-hand side display information about that entity. The entities panel is context specific, so if you have a class selected (like Thing) then the panels on the right are aimed at editing classes. The panels on the right are customizable. Based on prior use you may see new panes or alternate arrangements. You should see the class OWL:Thing. You could start browsing from here, but the upper level view of the ontology is too abstract for our purposes. To find something more interesting to look at we need to search or query.

        "},{"location":"lesson/contributing-to-obo-ontologies/#searching-in-protege","title":"Searching in Protege","text":"

        You can search for any entity using the search bar on the right:

        The search window will open on top of your Protege pane, we recommend resizing it and moving it to the side of the main window so you can view together.

        Here's an example search for 'COVID-19':

        It shows results found in display names, definitions, synonyms and more. The default results list is truncated. To see full results check the 'Show all results option'. You may need to resize the box to show all results. Double clicking on a result, displays details about it in the entities tab, e.g.

        In the Entities, tab, you can browse related types, opening/closing branches and clicking on terms to see details on the right. In the default layout, annotations on a term are displayed in the top panel and logical assertions in the 'Description' panel at the bottom.

        Try to find these specific classes:

        • 'congenital heart disease'
        • 'Kindler syndrome'
        • 'kidney failure'

        Note - a cool feature in the search tool in Protege is you can search on partial string matching. For example, if you want to search for \u2018down syndrome\u2019, you could search on a partial string: \u2018do synd\u2019.

        • Try searching for \u2018br car and see what kind of results are returned.
        • Question: The search will also search on synonyms. Try searching for \u2018shingles\u2019 and see what results are returned. Were you able to find the term?

        Note - if the search is slow, you can uncheck the box \u2018Search in annotation values. Try this and search for a term and note if the search is faster. Then search for \u2018shingles\u2019 again and note what results you get.

        "},{"location":"lesson/contributing-to-obo-ontologies/#use-github-make-pull-requests","title":"Use GitHub: make pull requests","text":""},{"location":"lesson/contributing-to-obo-ontologies/#committing-pushing-and-making-pull-requests","title":"Committing, pushing and making pull requests","text":"
        1. Changes made to the ontology can be viewed in GitHub Desktop.

        2. Before committing, check the diff. Examples of a diff are pasted below. Large diffs are a sign that something went wrong. In this case, do not commit the changes and ask the ontology editors for help instead.

        Example 1:

        1. Commit: Add a meaningful message in the Commit field in the lower left, for example: add new class MONDO:0001012 episodic angioedema with eosinophilia

        NOTE: You can use the word 'fixes' or 'closes' in the description of the commit message, followed by the corresponding ticket number (in the format #1234) - these are magic words in GitHub; when used in combination with the ticket number, it will automatically close the ticket. Learn more on this GitHub Help Documentation page about Closing issues via commit messages.

        1. Note: 'Fixes' and \"Closes' are case-insensitive.

        2. If you don't want to close the ticket, just refer to the ticket # without the word 'Fixes' or use 'Adresses'. The commit will be associated with the correct ticket but the ticket will remain open. NOTE: It is also possible to type a longer message than allowed when using the '-m' argument; to do this, skip the -m, and a vi window (on mac) will open in which an unlimited description may be typed.

        3. Click Commit to [branch]. This will save the changes to the cl-edit.owl file.

        4. Push: To incorporate the changes into the remote repository, click Publish branch.

        "},{"location":"lesson/contributing-to-obo-ontologies/#add-new-terms-to-an-ontology","title":"Add New Terms to an Ontology:","text":"

        The instructions below are using the Mondo Disease Ontology as an example, but this can be applied to any ontology.

        "},{"location":"lesson/contributing-to-obo-ontologies/#setup","title":"Setup","text":""},{"location":"lesson/contributing-to-obo-ontologies/#setting-preferences-for-new-entities","title":"Setting Preferences for New entities","text":"

        Ontology terms have separate names and IDs. The names are annotation values (labels) and the IDs are represented using IRIs. The OBO foundry has a policy on IRI (or ID) generation (http://www.obofoundry.org/principles/fp-003-uris.html). You can set an ID strategy using the \"New Entities\" tab under the Prot\u00e9g\u00e9 Preferences -- on the top toolbar, click the \"Prot\u00e9g\u00e9 dropdown, then click Preferences.

        Set your new entity preferences precisely as in the following screenshot of the New Entities tab.

        Note - you have been assigned an ID range in the Mondo idranges file\u00a0 - you should be able to find your own range assigned there.

        DIY (only if you know what you are doing!)

        To add your own ID ranges:

        Go into src/ontology

        create a branch

        Find and edit mondo-idranges.owl by adding the following:

        Datatype: idrange:10 #update this to next following integer from previous\n\n    Annotations:\n        allocatedto: \"Your Name\" #change to your name\n\n    EquivalentTo:\n    xsd:integer[>= 0806000 , <= 0806999]. #add a range of 999 above the previous integer\n

        Be sure to change \"Your Name\" to your actual name! And note that this value should almost always be an individual, and not an organization or group.

        create a pull request and add matentzn or nicolevasilevsky as a reviewer

        proceed to setting up as below:

        Specified IRI: http://purl.obolibrary.org/obo/

        Note - if you edit more than one ontology in Protege, you will need to update your Preferences for each ontology before you edit.

        "},{"location":"lesson/contributing-to-obo-ontologies/#setting-preferences-for-user-details","title":"Setting Preferences for User details","text":"

        User name: click Use supplied user name and enter your username in the field below

        Click Use Git user name when available

        In the ORCID field, add your ORCID ID (in the format 0000-0000-0000-0000)

        "},{"location":"lesson/contributing-to-obo-ontologies/#setting-preferences-for-new-entities-metadata","title":"Setting Preferences for New entities metadata","text":"

        The current recommendation of the OBO Foundry Technical Working Group is that an editor who creates a new term SHOULD add a http://purl.org/dc/terms/contributor annotation, set to the ORCID or GitHub username of the editor, and a http://purl.org/dc/terms/date annotation, set to the current date.

        You can have Prot\u00e9g\u00e9 automatically add those annotations by setting your preferences to match the screenshot below, in the New entities metadata tab (under preferences).

        If you do not have an ORCID, register for for free here: https://orcid.org/

        "},{"location":"lesson/contributing-to-obo-ontologies/#protege-editing","title":"Protege editing","text":""},{"location":"lesson/contributing-to-obo-ontologies/#creating-a-new-class","title":"Creating a new class","text":"

        Before you start:

        • make sure you are working on a branch - see quick guide here.

        • make sure you have the editor's file open in Protege as detailed here.

        New classes are created in the Class hierarchy panel on the left.

        There are three buttons at the top of the class hierarchy view. These allow you to add a subclass (L-shaped icon), add a sibling class (c-shaped icon), or delete a selected class (x'd circle).

        Practice adding a new term:

        We will work on these two tickets:

        1. https://github.com/monarch-initiative/mondo/issues/616
        2. https://github.com/monarch-initiative/mondo/issues/2541
        "},{"location":"lesson/contributing-to-obo-ontologies/#httpsgithubcommonarch-initiativemondoissues616","title":"https://github.com/monarch-initiative/mondo/issues/616","text":"
        • Search for the parent term 'hypereosinophilic syndrome' (see search guide if you are unsure how to do this).

        • When you are clicked on the term in the Class hierarchy pane, click the add subclass button to add a child class to 'hypereosinophilic syndrome'

        A dialog will popup. Name this new subclass: migratory muscle precursor. Click \"OK\" to add the class.

        "},{"location":"lesson/contributing-to-obo-ontologies/#adding-annotations","title":"Adding annotations","text":"

        Using Prot\u00e9g\u00e9 you can add annotations such as labels, definitions, synonyms, database cross references (dbxrefs) to any OWL entity. The panel on the right, named Annotations, is where these annotations are added. CL includes a pre-declared set of annotation properties. The most commonly used annotations are below.

        • rdfs:label
        • definition
        • has_exact_synonym
        • has_broad_synonym
        • has_narrow_synonym
        • has_related synonym
        • database_cross_reference
        • rdfs:comment

        Note, most of these are bold in the annotation property list:

        Use this panel to add a definition to the class you created. Select the + button to add an annotation to the selected entity. Click on the annotation 'definition' on the left and copy and paste in the definition to the white editing box on the right. Click OK.

        Definition: A disorder characterized by episodes of swelling under the skin (angioedema) and an elevated number of the white blood cells known as eosinophils (eosinophilia). During these episodes, symptoms of hives (urticaria), fever, swelling, weight gain and eosinophilia may occur. Symptoms usually appear every 3-4 weeks and resolve on their own within several days. Other cells may be elevated during the episodes, such as neutrophils and lymphocytes. Although the syndrome is often considered a subtype of the idiopathic hypereosinophilic syndromes, it does not typically have organ involvement or lead to other health concerns.

        Definitions in Mondo should have a 'database cross reference' (dbxref), which is a reference to the definition source, such as a paper from the primary literature or another database. For references to papers, we cross reference the PubMed Identifier in the format, PMID:XXXXXXXX. (Note, no space)

        To add a dbxref to the definition:

        • Click the @ symbol next to the definition
        • Click the + button next in the pop-up window
        • Scroll up on the left hand side until you find 'database_cross_reference', and click it
        • Add the PMID in the editing box (PMID:25527564). _Note: the PMID should not have any spaces)
        • Click OK
        • Add the additional dbxref: GARD:0013029
        • The dbxrefs should appear as below.

        "},{"location":"lesson/contributing-to-obo-ontologies/#add-synonyms-and-database-cross-reference","title":"Add Synonyms and Database cross reference","text":"
        1. Add synonyms
        2. Click the add annotations button
        3. Add the following synonyms as 'has_exact_synonym':
          • EAE
          • Gleich's syndrome
          • Gleich syndrome
        4. All synonyms in Mondo should have a dbxref on the synonym
        5. Click the @ symbol next to the synonym
        6. Click the + button
        7. Add the dbxref to each synonym: GARD:0013029
        8. Add database cross reference
        9. Click the add annotations button
        10. Add the following database_cross_reference':
          • GARD:0013029
        11. Click the @ symbol next to the synonym
        12. Click the + button
          • Add source: MONDO:equivalentTo
        "},{"location":"lesson/contributing-to-obo-ontologies/#the-class-description-view","title":"The Class description view","text":"

        We have seen how to add sub/superclasses and annotate the class hierarchy. Another way to do the same thing is via the Class description view. When an OWL class is selected in the entities view, the right-hand side of the tab shows the class description panel. If we select the 'vertebral column disease' class, we see in the class description view that this class is a \"SubClass Of\" (= has a SuperClass) the 'musculoskeletal system disease' class. Using the (+) button beside \"SubClass Of\" we could add another superclass to the 'skeletal system disease' class.

        Note the Anonymous Ancestors. This is a difficult concept we will return to later, and the contents of this portion may seem confusing at first (some of these may be clearer after you complete the \"Basics of OWL\" section below). These are OWL expressions that are inherited from the parents. If you hover over the Subclass Of (Anonymous Ancestor) you can see the parent that the class inherited the expression from. For many ontologies, you will see some quite abstract expressions in here inherited from upper ontologies, but these can generally be ignored for most purposes.

        "},{"location":"lesson/contributing-to-obo-ontologies/#revising-a-superclass","title":"Revising a superclass:","text":"
        1. If you want to revise the superclass, click the 'o' symbol next to the superclass and replace the text. Try to revise 'musculoskeletal system disease' to\u00a0 'disease by anatomical system'.

        2. If you want to delete a superclass, click the 'x' button next to the superclass. Delete the 'disease by anatomical system' superclass.

        Close this window without saving.

        Save your work.

        "},{"location":"lesson/contributing-to-obo-ontologies/#make-a-pull-request","title":"Make a Pull Request","text":"
        1. Click: Create Pull Request in GitHub Desktop

        2. This will automatically open GitHub Desktop

        3. Click the green button 'Create pull request'

        4. You may now add comments to your pull request.

        5. The CL editors team will review your PR and either ask for changes or merge it.

        6. The changes will be available in the next release.

        "},{"location":"lesson/contributing-to-obo-ontologies/#ontology-design-patterns","title":"Ontology design patterns","text":"

        Dead Simple Ontology Design Patterns (DOSDPs) are specifications, written in yaml format, that specify how ontology terms should be created (see article here). They can be used to:

        • generate documentation
        • generate new terms
        • retrofit existing ontology terms

        DOSDPs have some key features:

        • Description: that describes the purpose of the patterns
        • Examples: Provides examples of terms that use the Patterns
        • Declared classes: these are the classes that are used in the pattern. Any subclass of the declared class can be used in this pattern.
        • Declared relationships: the relationships used in the logical axioms
        • vars: the variable classes that are used in the pattern. Any subclass of the 'var' can be used in this pattern.
        • Pattern for class name, annotations, text definition and equivalentTo (logical definition): Ontology classes are used as 'fillers' to create new classes that conform to the specific patterns.

        Examples of design patterns are available here:

        • uPheno pattern library
        • Mondo Disease Ontology pattern library

        "},{"location":"lesson/contributing-to-obo-ontologies/#use-templates-robot-dosdp","title":"Use templates: ROBOT, DOSDP","text":"

        under development

        "},{"location":"lesson/contributing-to-obo-ontologies/#basics-of-owl","title":"Basics of OWL","text":"
        • Clone the Ontologies 101 repository, then open the folder BDK14_exercises from your file system
        • Open basic-subclass/chromosome-parts.owl in Prot\u00e9g\u00e9, then do the following exercises:
          • Basic Subclass Hierarchy (review) - make sure to look at the \"detailed instructions\" for adding annotations here, as it will go over adding annotations on annotation assertions
          • Disjointness
          • Object Properties - note that you will rarely, if ever, be making object properties, as most of the properties you'll ever need are defined in the Relation Ontology
          • OWL Class Restrictions
        • Open basic-restriction/er-sec-complex.owl in Prot\u00e9g\u00e9, then do the following exercise:
          • Basic Restrictions
        • Open basic-dl-query/cc.owl in Prot\u00e9g\u00e9, then do the following exercises:
          • DL Query Tab - note that owl:Nothing is defined as the very bottom node of an ontology, therefore the DL query results will show owl:Nothing as a subclass. This is expected and does not mean there is a problem with your ontology! It's only bad when something is a subclass of owl:Nothing and therefore unsatisfiable (more on that below).
          • Basic DL Queries
        • Open basic-classification/ubiq-ligase-complex.owl in Prot\u00e9g\u00e9, then do the following exercises:
          • Basic Classification
        • Read (I can't get no) satisfiability (~10 minutes)
        • Optional: Open a new ontology in Prot\u00e9g\u00e9. Try creating an inconsistent ontology using the classes and instances in the first Pets example (hint: you'll also need to create the \"eats\" object property)... what happens when you run the reasoner?
        "},{"location":"lesson/contributing-to-obo-ontologies/#logic-and-debugging","title":"Logic and debugging","text":"

        Below are exercises to demonstrate how to:

        • Add equivalent axioms (logical definitions) to ontology terms
        • Run the reasoner and view the inferred hierarchy
        • Debugging and viewing explanations
        "},{"location":"lesson/contributing-to-obo-ontologies/#practice-adding-logic-and-debugging","title":"Practice adding logic and debugging","text":"

        These instructions will use the Mondo disease ontology as an example.

        "},{"location":"lesson/contributing-to-obo-ontologies/#practice-1","title":"Practice 1","text":""},{"location":"lesson/contributing-to-obo-ontologies/#add-new-terms-with-an-equivalance-axiom-to-mondo","title":"Add New Terms with an Equivalance Axiom to Mondo:","text":""},{"location":"lesson/contributing-to-obo-ontologies/#creating-a-new-class_1","title":"Creating a new class","text":"

        New classes are created in the Class hierarchy panel on the left.

        There are three buttons at the top of the class hierarchy view. These allow you to add a subclass (L-shaped icon), add a sibling class (c-shaped icon), or delete a selected class (x'd circle).

        "},{"location":"lesson/contributing-to-obo-ontologies/#practice-adding-a-new-term","title":"Practice adding a new term:","text":""},{"location":"lesson/contributing-to-obo-ontologies/#add-the-new-term-mycotoxin-allergy","title":"Add the new term 'mycotoxin allergy'","text":"
        1. Navigate to the Mondo repo in GitHub Desktop, create a branch, and open mondo-edit.obo in Protege.
        2. Search for the parent term 'allergic disease' (see search guide if you are unsure how to do this).
        3. When you are clicked on the term in the Class hierarchy pane, click the add subclass button to add a child class to 'allergic disease'
        4. A dialog will popup. Name this new subclass: mycotoxin allergy. Click \"OK\" to add the class.
        "},{"location":"lesson/contributing-to-obo-ontologies/#add-annotations-and-a-logical-axiom","title":"Add annotations and a logical axiom","text":"

        Equivalence axioms in Mondo are added according to Dead Simple Ontology Design Patterns (DOSDPs). You can view all of the design patterns in Mondo by going to code/src/patterns/dosdp-patterns/

        For this class, we want to follow the design pattern for allergy.

        1. Review this pattern before proceeding.
        2. Based on the pattern specifications, add a text definition to this term.
        3. Add the database cross reference to this term: MONDO:patterns/allergy
        4. Add a synonym that is consistent with this pattern.

        1. Add the equivalence axiom according to the pattern specifications.

        1. Run the reasoner
        2. View the inferred hierarchy. You should see a child of owl:Nothing (and you should see this in the Description pane as well.)

        1. Click on the ? button next to the owl:Nothing in the Description view
        2. The explanation tells you the reason why this is unsatisfiable

        1. Mycotoxin is a child of a 'specifically dependent continuant' and and 'independent continuant' is disjoint with 'specifically dependent continuant'.
        2. This logical axiom uses the relation 'realized in response to stimulus'
        3. Click on this relation in Protege (you can click on the relation name in the equivalence axiom, or you can click on the Object properties tab and search for this relation.
        4. There are domain and range restrictions on this property, where the range has to be a material enity. Chebi mycotoxin is actually a role, so it is not a material entity.

        1. Go back to the Classes or Entities pane and remove the equivalence axiom and run the reasoner again. You should now see no unsatisfiable classes.
        "},{"location":"lesson/contributing-to-obo-ontologies/#practice-2","title":"Practice 2","text":""},{"location":"lesson/contributing-to-obo-ontologies/#practice-adding-a-new-term_1","title":"Practice adding a new term:","text":""},{"location":"lesson/contributing-to-obo-ontologies/#add-the-new-term-acquired-alacrima","title":"Add the new term 'acquired alacrima'","text":"
        1. Add 'acquired candidiasis as a subclass of MONDO_0002026 candidiasis.
        "},{"location":"lesson/contributing-to-obo-ontologies/#add-annotations-and-a-logical-axiom_1","title":"Add annotations and a logical axiom","text":"

        As noted above, equivalence axioms in Mondo are added according to Dead Simple Ontology Design Patterns (DOSDPs). You can view all of the design patterns in Mondo by going to code/src/patterns/dosdp-patterns/

        For this class, we want to follow the design pattern for acquired.

        1. Review this pattern before proceeding.
        2. Based on the pattern specifications, add a text definition to this term.
        3. Add the database cross reference to the definition: MONDO:patterns/allergy
        4. Add the equivalence axiom according to the pattern specifications.
        5. Run the reasoner
        6. View the inferred hierarchy.

        "},{"location":"lesson/contributing-to-obo-ontologies/#further-reading","title":"Further reading","text":"
        • Debugging ontologies using OWL reasoning
        • Chris Mungall on how to write great textual definitions
        "},{"location":"lesson/developing-an-obo-ontology/","title":"Developing an OBO Reference Ontology","text":""},{"location":"lesson/developing-an-obo-ontology/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course?","text":"

        Develop skills to lead a new or existing OBO project, or reference ontology develoment.

        "},{"location":"lesson/developing-an-obo-ontology/#learning-objectives","title":"Learning objectives","text":"
        • detailed knowledge of OBO principles and best practises
        • use OBO Dashboard
        • use OBO Registry
        • use PURL system
        "},{"location":"lesson/developing-an-obo-ontology/#prerequisites","title":"Prerequisites","text":"
        • Review tutorial on Ontology Development Automation
        "},{"location":"lesson/developing-an-obo-ontology/#preparation","title":"Preparation","text":"

        Please complete the following and then continue with this tutorial below:

        • ROBOT Mini-Tutorial, part 2
        • Software Carpentry: Automation and Make
        "},{"location":"lesson/developing-an-obo-ontology/#ontology-development","title":"Ontology Development","text":""},{"location":"lesson/developing-an-obo-ontology/#description","title":"Description","text":"

        By the end of this session, you should be able to:

        • Merge ontology modules & imports with robot merge
        • Create a classified version of an ontology with robot reason
        • Add metadata to an ontology with robot annotate
        • Create a simple release workflow using ROBOT commands in a Makefile
        • Create a new ontology with ODK
        "},{"location":"lesson/developing-an-obo-ontology/#what-is-an-ontology-release","title":"What is an ontology release?","text":"

        Like software, official OBO Foundry ontologies have versioned releases. This is important because OBO Foundry ontologies are expected to be shared and reused. Since ontologies are bound to change over time as more terms are added and refined, other developers need stable versions to point to so that there are no surprises. OBO Foundry ontologies use GitHub releases to maintain these stable copies of older versions.

        Generally, OBO Foundry ontologies maintain an \"edit\" version of their file that changes without notice and should not be used by external ontology developers because of this. The edit file is used to create releases on a (hopefully) regular basis. The released version of an OBO Foundry ontology is generally a merged and reasoned version of the edit file. This means that all modules and imports are combined into one file, and that file has the inferred class hierarchy actually asserted. It also often has some extra metadata, including a version IRI. OBO Foundry defines the requirements for version IRIs here.

        "},{"location":"lesson/developing-an-obo-ontology/#the-release-workflow-process-should-be-stable-and-can-be-written-as-a-series-of-steps-for-example","title":"The release workflow process should be stable and can be written as a series of steps. For example:","text":"
        1. Update modules from templates
        2. Merge ontology modules & the main edit file into one
        3. Assert the inferred class hierarchy
        4. Add a version IRI & other important metadata
        "},{"location":"lesson/developing-an-obo-ontology/#this-series-of-steps-can-be-turned-into-robot-commands","title":"This series of steps can be turned into ROBOT commands:","text":"
        1. robot template
        2. robot merge
        3. robot reason
        4. robot annotate

        Since we can turn these steps into a series of commands, we can create a Makefile that stores these as \"recipes\" for our ontology release!

        • Review the ROBOT commands:
        • report and query
        • convert, extract, and template
        • merge, reason, annotate, and diff
        • Chaining ROBOT commands
        • Specifying custom prefixes
        • Review Software Carpentry course content
        • Use the ODK to bootstrap a new ontology
        • Introduction to the OBO Foundry Registry
        "},{"location":"lesson/developing-an-obo-ontology/#contributors","title":"Contributors","text":"
        • Nico Matentzoglu
        "},{"location":"lesson/developing-application-ontologies/","title":"Developing an Application Ontology","text":""},{"location":"lesson/developing-application-ontologies/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/developing-application-ontologies/#prerequisites","title":"Prerequisites","text":"
        • Review tutorial on Ontology Contribution
        "},{"location":"lesson/developing-application-ontologies/#preparation","title":"Preparation","text":"
        • TBD
        "},{"location":"lesson/developing-application-ontologies/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        Description: Combining ontology subsets for use in a project.

        "},{"location":"lesson/developing-application-ontologies/#learning-objectives","title":"Learning objectives","text":"
        • manage GitHub
        • manage ontology imports
        • use ROBOT extract: MIREOT, SLME
        • use ROBOT report
        • pruning trees
        "},{"location":"lesson/developing-application-ontologies/#tutorials","title":"Tutorials","text":"
        • in person or video (link videos here as they become available)
        "},{"location":"lesson/developing-application-ontologies/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/developing-application-ontologies/#contributors","title":"Contributors","text":"
        • Nico Matentzoglu
        "},{"location":"lesson/entity-matching/","title":"Linking across vocabularies: Semantic Entity Matching","text":""},{"location":"lesson/entity-matching/#summary","title":"Summary","text":"

        All across the biomedical domain, we refer to domain entities (such as chemicals or anatomical parts) using identifiers, often from controlled vocabularies.

        The decentralised evolution of scientific domains has led to to the emergence of disparate \"semantic spaces\" with different annotation practices and reference vocabularies and formalisms.

        To bridge between these spaces, entity mappings have emerged, which link, for example, genes from HGNC to ENSEMBL, diseases between OMIM and Mondo and anatomical entities between FMA and Uberon.

        Entity matching is the process of establishing a link between an identifier in one semantic space to an identifier in another. There are many cultures of thought around entity matching, including Ontology Matching, Entity Resolution and Entity Linking.

        "},{"location":"lesson/entity-matching/#table-of-contents","title":"Table of Contents","text":"
        • Fundamentals
        • Basic tutorials
        • Introduction to entity mapping
        • How are mappings collected in practice?
        • A typical workflow for matching
        • Examples
        "},{"location":"lesson/entity-matching/#overview-of-the-terminology","title":"Overview of the terminology","text":"Concept Definition Semantic space A not widely used concept to denote a cluster of related data that can be interpreted using the same ontology. Ontology matching The task of determining corresponding entities across ontologies. Entity mapping Determining and documenting the correspondence of an entity in one semantic space to another. Schema mapping Determining and documenting the translation rules for converting an entity from one semantic space to another. Ontology alignment An ontology alignment is a set of term mappings that links all concepts in a source ontology to their appropriate correspondence in a target ontology, if any. Knowledge graph matching More or less the same as ontology matching - for knowledge graphs Thesaurus building Involves assigning natural language strings (synonym) to a code in a knowledge organisation system (like a taxonomy, terminology, or ontology) Named Entity Recognition and Entity Linking Involve recognising entities (such as diseases) in text and linking them to some identifier. Entity resolution/record linkage Involves determining if records from different data sources represent, in fact, the same entity Schema matching Determines if two objects from different data models (schema elements, schema instances) are semantically related. Value Set Mapping Determines and documents the correspondence of two Value Sets and their respective values (i.e. a 2-level mapping!)."},{"location":"lesson/entity-matching/#fundamentals","title":"Fundamentals","text":"

        The excellent OpenHPI course on Knowledge Engineering with Semantic Web Technologies gives a good overview:

        Another gentle overview on Ontology Matching was taught as part of the Knowledge & Data course at Vrije Universiteit Amsterdam.

        "},{"location":"lesson/entity-matching/#basic-tutorials","title":"Basic tutorials","text":"
        1. Mapping curation with SSSOM
        2. Introduction to processing mappings with SSSOM and sssom-py CLI
        3. Introduction to matching with OAK lexmatch
        "},{"location":"lesson/entity-matching/#introduction-to-entity-mapping","title":"Introduction to Entity Mapping","text":"

        In the following, we consider a entity a symbol that is intended to refer to a real world entity, for example:

        • an ontology id like OMOP:441554 corresponds to the concept of \"Vascular calcification\" in the real world. Note that OMOP:441554 may be annotated with the rdfs:label \"Friedreichs Ataxia\". The label itself is not necessarily a term - it could change, for example to \"Friedreichs Ataxia (disease)\", and still retain the same meaning.
        • \"Friedreich's Ataxia\" (example on the left) may be a term in my controlled vocabulary which I understand to correspond to that respective disease (not all controlled vocabularies have IDs for their terms). This happens for example in clinical data models that do not use formal identifiers to refer to the values of slots in their data model, like \"MARRIED\" in /datamodel/marital_status.
        • Examples of entities:
          • IDs of classes in an ontology
          • elements of a clinical value set
          • elements of clinical terminologies such as Z63.1
          • Elements of a schema
        • TLDR: entities are symbols that correspond to things in the world, and that correspondence is not subject to change. Labels of such entities can change without changing the meaning of the entity.

        In our experience, there are roughly four kinds of mappings:

        • string-string: Relating one string, or label, to another string, or label. Understanding such mappings is fundamental to understanding all the other kinds of mappings.
        • _string-entity: Relating a specific string or \"label\" to their corresponding entity in a terminology or ontology. We usually refer to these as synonyms, but there may be other words used in this case.
        • entity-entity_: Relating an entity, for example a class in an ontology, to another entity. This is what most people in the ontology domain would understand when thy hear \"ontology mappings\".
        • complex mappings: Relating two sets of entities. For example cheese sandwich (wikidata:Q2734068) to sandwich (wikidata:Q111836983) and cheese wikidata:Q10943. These are the rarest and most complicated kinds of mappings and are out of scope for this lesson.

        In some ways, these four kinds of mappings can be very different. We do believe, however, that there are enough important commonalities such as common features, widely overlapping use cases and overlapping toolkits to consider them together. In the following, we will discuss these in more detail, including important features of mappings and useful tools.

        "},{"location":"lesson/entity-matching/#important-features-of-mappings","title":"Important features of mappings","text":"

        Mappings have historically been neglected as second-class citizens in the medical terminology and ontology worlds - the metadata is insufficient to allow for precise analyses and clinical decision support, they are frequently stale and out of date, etc. The question \"Where can I find the canonical mappings between X and Y\"? is often shrugged off and developers are pointed to aggregators such as OxO or UMLS which combine manually curated mappings with automated ones causing \"mapping hairballs\".

        There are many important metadata elements to consider, but the ones that are by far the most important to consider one way or another are:

        • Precision: Is the mapping exact, broad or merely closely related?
        • Confidence: Do I trust the mapping? Was is done manually by an expert in my domain, or by an algorithm?
        • Source version: Which version of the entity (or its corresponding ontology) was mapped? Is there a newer mapping which has a more suitable match for my entity?

        Whenever you handle mappings (either create, or re-use), make sure you are keenly aware of at least these three metrics, and capture them. You may even want to consider using a proper mapping model like the Simple Shared Standard for Ontology Mappings (SSSOM) which will make your mappings FAIR and reusable.

        "},{"location":"lesson/entity-matching/#string-string-mappings","title":"String-string mappings","text":"

        String-string mappings are mappings that relate two strings. The task of matching two strings is ubiquitous for example in database search fields (where a user search string needs to be mapped to some strings in a database). Most, if not all effective ontology matching techniques will employ some form of string-string matching. For example, to match simple variations of labels such as \"abnormal heart\" and \"heart abnormality\", various techniques such as Stemming and bag of words can be employed effectively. Other techniques such as edit-distance or Levenshtein can be used to quantify the similarity of two strings, which can provide useful insights into mapping candidates.

        "},{"location":"lesson/entity-matching/#string-entity-mappings-synonyms","title":"String-entity mappings / synonyms","text":"

        String-entity mappings relate a specific string or \"label\" to their corresponding term in a terminology or ontology. Here, we refer to these as \"synonyms\", but there may be other cases for string-entity mappings beyond synonymy.

        There are a lot of use cases for synonyms so we will name just a few here that are relevant to typical workflows of Semantic Engineers in the life sciences.

        Thesauri are reference tools for finding synonyms of terms. Modern ontologies often include very rich thesauri, with some ontologies like Mondo capturing more than 70,000 exact and 35,000 related synonyms. They can provide a huge boost to traditional NLP pipelines by providing synonyms that can be used for both Named Entity Recognition and Entity Resolution. Some insight on how, for example, Uberon was used to boost text mining can be found here.

        "},{"location":"lesson/entity-matching/#entity-entity-mappings-ontology-mappings","title":"Entity-entity mappings / ontology mappings","text":"

        Entity-entity mappings relate a entity (or identifier), for example a class in an ontology, to another entity, usually from another ontology or database. The entity-entity case of mappings is what most people in the ontology domain would understand when they hear \"ontology mappings\". This is also what most people understand when they here \"Entity Resolution\" in the database world - the task of determining whether, in essence, two rows in a database correspond to the same thing (as an example of a tool doing ER see deepmatcher, or py-entitymatcher). For a list standard entity matching toolkit outside the ontology sphere see here.

        "},{"location":"lesson/entity-matching/#monarch-obo-training-tutorials","title":"Monarch OBO Training Tutorials","text":""},{"location":"lesson/entity-matching/#introduction-to-semantic-entity-matching","title":"Introduction to Semantic Entity Matching","text":""},{"location":"lesson/entity-matching/#how-are-mappings-collected-in-practice","title":"How are mappings collected in practice?","text":"

        Mappings between terms/identifiers are typically collected in four ways:

        1. Automatically, using terminological matchers (of which ontology matchers one the most important category in our domain).
        2. Manually, by dedicated curators.
        3. By re-using existing mappings. Some semantic spaces have been mapped by organisations such as the Monarch Initiative or UMLS, and it is often worth re-viewing existing mappings before building ones own.
        4. Using a mix of automated and manual approaches, where automated approaches typically generate \"mapping candidates\" which are \"double checked\" by humans before used in production systems.

        The main trade-off for mappings is very simple: 1. Automated mappings are very error prone (not only are they hugely incomplete, they are also often faulty). 1. Human curated mappings are very costly.

        --> The key for any given mapping project is to determine the highest acceptable error rate, and then distribute the workload between human and automated matching approaches. We will discuss all three ways of collecting mappings in the following.

        Aside from the main tradeoff above, there are other issues to keep in mind: - Manually curated mappings are far from perfect. Most of the cost of mapping review lies in the decision how thorough a mapping should be reviewed. For example, a human reviewer may be tasked with reviewing 1000 mappings. If the acceptable error rate is quite high, the review may simply involve the comparison of labels (see here), which may take around 20 seconds. A tireless reviewer could possibly accept or dismiss 1000 mappings just based on the label in around 6 hours. Note that this is hardly better than what most automated approaches could do nowadays. - Some use cases involve so much data that manual curation is nearly out of the question.

        "},{"location":"lesson/entity-matching/#manual-curation-of-mappings","title":"Manual curation of mappings","text":"

        It is important to remember that matching in its raw form should not be understood to result in semantic mappings. The process of matching, in particular lexical or fuzzy semantic matching is error prone and usually better treated as resulting in candidates for mappings. This means that when we calculate the effort of a mapping project, we should always factor in the often considerable effort required by a human to verify the correctness of a candidate mapping. There are many tools that can help with this process, for example by filtering out conflicting lower-confidence mappings, but in the end the reality is this: due to the fact that source and target do not share the same semantics, mappings will always be a bit wobbly. There are two important kinds of review which are very different:

        1. False positive review (wrong mappings). The goal here is to identify mappings that do not work for our use case, or do not use the correct semantic mapping relation. For example orange juice [wikidata:Q219059] and orange juice (unpasteurized) [FOODON:00001277] may not be considered as the same thing in the sense of skos:exactMatch.
        2. False negative review (missing mappings). The goal here is to understand if we can do anything to improve the matching process by tuning it. For very simple matchers like oak lexmatch this usually involves hacking labels and synonyms by removing or replacing words. More sophisticated matchers like Agreement Maker Light (AML) have many more tuning options, and it requires patience and expertise to find the right ones. One good approach here is to include semantically or lexically similar matches in the results, and review if generally consistent patterns of lexical variation can be spotted. For example: orange juice (liquid) [FOODON:00001001] seems to be exactly what orange juice [wikidata:Q219059] is supposed to mean. The labels are not the same, but lexically similar: a simple lexical distance metric like Levenshtein could have been used to identify these.

        Tip: always keep a clear visible list of unmapped classes around to sanity check how good your mapping has been so far.

        "},{"location":"lesson/entity-matching/#automated-matching","title":"Automated matching","text":"

        There are many (many) tools out there that have been developed for entity matching. A great overview can be found in Euzenats Ontology Matching. Most of the matchers apply a mix of lexical and semantic approaches.

        As a first pass, we usually rely on a heuristic that an exact match on the label is strong evidence that the two entities correspond to the same thing. Obviously, this cannot always be the case Apple (the fruit) and Apple (the company) are two entirely different things, yet a simple matching tool (like OAK lexmatch) would return these as matching. The reason why this heuristic works in practice is because we usually match between already strongly related semantic spaces, such as two gene databases, two fruit ontologies or two disease terminologies. When the context is narrow, lexical heuristics have a much lower chance to generate excessively noisy mappings.

        After lexical matchings are created, other techniques can be employed, including syntactic similarity (match all entities which have labels that are more than 80% similar and end with disease) and semantic similarity (match all entities whose node(+graph)-embedding have a cosine similarity of more than 80%). Automated matching typically results in a large number of false positives that need to be filtered out using more sophisiticated approaches for mapping reconciliation.

        "},{"location":"lesson/entity-matching/#a-typical-workflow-for-matching","title":"A typical workflow for matching","text":"
        1. Collecting existing mappings from external sources, if they exist.
        2. Generating mapping candidates using automated matchers (seed mappings).
        3. Iteratively refining mappings while keeping track of:
          • Anchor mappings (known correct mappings)
          • Overestimation mappings (mapping candidates)
          • Negative mappings (known false mappings, as deterimed by tools or human review)

        The refinement step may involve automated approaches that are sensitive to the logical content of the sources involved (for example by ensuring that the result does not result in equivalence cliques, or unsatisfiable classes), but more often than not, human curators are employed to curate the mapping candidates generated by the various automated approaches.

        "},{"location":"lesson/entity-matching/#some-examples-of-domain-specific-mapping-of-importance-to-the-biomedical-domain","title":"Some examples of domain-specific mapping of importance to the biomedical domain","text":""},{"location":"lesson/entity-matching/#phenotype-ontology-mappings","title":"Phenotype ontology mappings","text":"

        Mapping phenotypes across species holds great promise for leveraging the knowledge generated by Model Organism Database communities (MODs) for understanding human disease. There is a lot of work happening at the moment (2021) to provide standard mappings between species specific phenotype ontologies to drive translational research (example). Tools such as Exomiser leverage such mappings to perform clinical diagnostic tasks such as variant prioritisation. Another app you can try out that leverages cross-species mappings is the Monarch Initiatives Phenotype Profile Search.

        "},{"location":"lesson/entity-matching/#disease-ontology-mappings","title":"Disease ontology mappings","text":"

        Medical terminology and ontology mapping is a huge deal in medical informatics (example). Mondo is a particularly rich source of well provenanced disease ontology mappings.

        "},{"location":"lesson/entity-matching/#further-reading","title":"Further reading","text":"
        • A great overview can be found in \"Tackling the challenges of matching biomedical ontologies\" (Faria et al 2018)
        • A yearly competition of ontology matching systems is held by the Ontology Alignment Evaluation Initiative (OAEI). The challenge results are a useful guide to identifying systems for matching you may want to try.
        • The most comprehensive work for anyone serious about entity matching is Euzenats Ontology Matching.
        "},{"location":"lesson/getting-hands-on/","title":"Getting Hands on with Ontologies","text":""},{"location":"lesson/getting-hands-on/#prerequisites","title":"Prerequisites","text":"

        Sign up for a free GitHub account

        "},{"location":"lesson/getting-hands-on/#preparation","title":"Preparation","text":"

        No advance preparation is necessary.

        Optional: If you are unfamiliar with ontologies, this introduction to ontologies explanation may be helpful.

        "},{"location":"lesson/getting-hands-on/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        Description: The purpose of this lesson is to train biomedical researchers on how to find a term, what to do if they find too many terms, how to decide on which term to use, and what to do if no term is found.

        "},{"location":"lesson/getting-hands-on/#learning-objectives","title":"Learning objectives","text":"
        • Understand open source ontology community development
        • Identify the best ontology or ontologies for annotation of biomedical data
        • Find ontology terms and chose the best ontology term
        • Make new term requests
        "},{"location":"lesson/getting-hands-on/#lesson","title":"Lesson","text":""},{"location":"lesson/getting-hands-on/#introduction-to-community-based-ontology-development","title":"Introduction to Community Based Ontology Development","text":"

        This how to guide on How to be an Open Science Engineer - maximizing impact for a better world has a lot of details about the philosophy behind open science ontology engineering. Some key points are summarized below.

        • The ontologies that I will promote in this lesson are part of the OBO Foundry, a community of ontology developers that are committed to developing open, freely available, community ontologies under a share set of guiding principles, that ensure the ontologies are interoperable, scientifically accurate, amongst other qualities.
        • A key feature of the success of our ontologies is the community who contributes to them. (I claim they are successful because they are widely used in biomedical curation, databases, bioinformatics and computational analyses.)
        • Principle of Collaboration:
          • These ontologies rely on community contributions and many are not funded. We value your expertise in making new term requests, requesting changes or commenting on existing tickets.
          • The OBO Academy has a lot of self-paced learning material, if you are inclined to learn how to contribute directly to ontologies.
          • Join Slack channels and email lists.
          • Reduce work for others as much as possible by communicating clearly.
          • Be positive and generous with gratitude and attribution.
          • Promote truly open communication: Create public tickets which can be searched and referred to later.
        • Principle of Upstream Fixing
          • Report an bugs or errors to the source ontology.
          • Make term requests for any missing terms.
        • Principle of No Ownership:
          • Ensure that you see your issues through to the end.
          • Feel free to nudge ontology curators.
        "},{"location":"lesson/getting-hands-on/#where-to-find-ontology-terms-and-how-to-chose-the-right-terms","title":"Where to find ontology terms and how to chose the right terms","text":"

        See lesson on Using Ontologies and Ontology Terms

        "},{"location":"lesson/getting-hands-on/#how-to-make-new-term-requests","title":"How to make new term requests","text":"

        See How to guide on Make term requests to existing ontologies

        "},{"location":"lesson/getting-hands-on/#exercise","title":"Exercise","text":"
        1. Sign up for a GitHub account if you do not already have one. (Some of the exercises can be done without being signed into GitHub).
        2. Search for an ontology term in OLS:
          • Search for 'exhaust exposure'. Note how many results you get. Do you have a sense of how to select the appropriate term for your annotations?
        3. Make a new term request for a missing term:
          • Suppose you want a more general term than already exists: exhuast exposure. Using the instructions in How to guide on Make term requests to existing ontologies, make a new term request to an appropriate GitHub repository for an ontology, such as ECTO. (Note, since this is just for practice, please do not submit the ticket.)
        "},{"location":"lesson/getting-hands-on/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        "},{"location":"lesson/hackathon/","title":"OBO Academy Hackathon","text":""},{"location":"lesson/hackathon/#goalslearning-outcomes","title":"Goals/Learning outcomes","text":"
        • Strengthen social workflows in creating Pull Requests (PRs), including:
          • creating a PR
          • writing a description of the PR
          • Reviewing a PR
          • Adding suggestions using suggestion mode
        • Foster a sense of shared efforts in open science
        "},{"location":"lesson/hackathon/#prerequisites","title":"Prerequisites","text":"

        Pull Requests lesson

        "},{"location":"lesson/hackathon/#outline","title":"Outline","text":"
        1. (Nico) Show structure of OBOOK
        2. Naming conventions of How To guides
        3. How to create a new how to guide
        4. (Nicole) Present the issues: OBOOK need volunteer
        5. (Students) Use Slack to find a buddy to review your PRs during this Hackathon
        6. Work through issues together
        "},{"location":"lesson/hackathon/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        • Nico Matentzoglu
        "},{"location":"lesson/modelling-with-object-properties/","title":"Modeling with Object Properties","text":"

        In this lesson, we will give an intuition of how to work with object properties in OBO ontologies, also referred to as \"relations\".

        We will cover, in particular, the following subjects:

        1. What is the role of object properties in OBO ontologies, and how should we model them?
        2. What is the relation ontology (RO), and how do we add object properties to it?

        "},{"location":"lesson/modelling-with-object-properties/#preparation","title":"Preparation","text":"

        We have worked with the University of Manchester to incorporate the Family History Knowledge Base Tutorial fully into OBO Academy.

        This is it: OBOAcademy: Family History - Modelling with Object Properties.

        In contrast to the Pizza tutorial, the Family history tutorial focuses on modelling with individuals. Chapters 4, 5, 8 and 9 are full of object property modelling, and are not only great to get a basic understanding of using them in your ontology, but also give good hints at where OWL and object properties fall short. We refer to the FHKB in the following and expect you to have completed at least chapter 5 before reading on.

        "},{"location":"lesson/modelling-with-object-properties/#the-role-of-object-properties-in-the-obo-sphere","title":"The Role of Object Properties in the OBO-sphere","text":"

        To remind ourselves, there are three different types of relations in OWL:

        1. Data properties (DatatypeProperty) connect your classes and individuals to data values, such as strings or numbers. In OBO, these are the least frequently used kinds of properties, used for example by CIDO and ONS.

        For some example usage, run the following query in the ontobee OLS endpoint:

        http://www.ontobee.org/sparql

        prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nprefix owl: <http://www.w3.org/2002/07/owl#>\nSELECT distinct *\nWHERE {\nGRAPH ?graph_uri\n{ ?dp rdf:type owl:DatatypeProperty .\n  ?sub ?dp ?obj }\n}\n

        Note that many uses of data properties across OBO are a bit questionable, for example, you do never want to attach a modification dates or similar to your classes using data properties, as these fall under OWL semantics. This means that logically, if a superclass has a relation using a DatatypeProperty, then this relation _holds for all subclasses of that class as well.

        1. Annotation properties are similar to data properties, but they are outside of OWL semantics, i.e. OWL reasoners and reasoning do not care, in fact ignore, anything related to annotation properties. This makes them suitable for attaching metadata like labels etc to our classes and properties. We sometimes use annotation properties even to describe relationships between classes if we want reasoners to ignore them. The most typical example is IAO:replaced_by, which connects an obsolete term with its replacement. Widely used annotation properties in the OBO-sphere are standardised in the OBO Metadata Ontology (OMO).

        2. The main type of relation we use in OBO Foundry are object properties. Object properties relate two individuals or classes with each other, for example:

        OWLObjectPropertyAssertion(:part_of, :heart, :cardiovascular_system)\n

        In the same way as annotation properties are maintained in OMO (see above), object properties are maintained in the Relation Ontology (RO).

        Object properties are of central importance to all ontological modelling in the OBO sphere, and understanding their semantics is critical for any put the most trivial ontologies. We assume the reader to have completed the Family History Tutorial mentioned above.

        "},{"location":"lesson/modelling-with-object-properties/#object-property-semantics-in-obo","title":"Object property semantics in OBO","text":"

        In our experience, these are the most widely used characteristics we specify about object properties (OP):

        1. Sub-property: if an OP is a sub-property of another parent OP, it inherits all its semantic characteristics. Most importantly: if OP1 is a sub-property of OP2, then, if (a)--[OP1]-->(b), we infer that (a)--[OP2]-->(b).
        2. Domain: if OP has a domain C, it means that every time (a)--[OP]-->(b), (a) must be a C. For example, ecologically co-occurs with in RO has the domain 'organism or virus or viroid', which means that whenever anything ecologically co-occurs with something else, it will be inferred to be a 'organism or virus or viroid'.
        3. Range: if OP has a range C, it means that every time (a)--[OP]-->(b), (b) must be a C. For example produced by has the domain material entity. Note that in ontologies, ranges are slightly less powerful then domains: If we have a class Moderna Vaccine which is SubClass of 'produced by' some 'Moderna' we get that Moderna Vaccine is a material entity due to the domain constraint, but NOT that Moderna is a material entity due to the range constraint (explanation to this is a bit complicated, sorry).
        4. Transitivity: if an OP is transitive, it means that if (a)--[OP]-->(b)--[OP]-->(c), (a)--[OP]-->(c). For example, if the eye is part of the head, which is part of the body, we can infer that the eye must be part of the body.
        5. Property chains: Similar to transitive properties, property chains allow us to bridge across multiple properties. The FHKB tutorial above is all about amazing property chains so you should have a deep understanding of these if you followed the tutorial.

        Other characteristics like functionality and symmetry are used across OBO ontologies, but not nearly to the same extend as the 5 described above.

        "},{"location":"lesson/modelling-with-object-properties/#the-relation-ontology-ro","title":"The Relation Ontology (RO)","text":"

        The Relation Ontology serves two main purposes in the OBO world:

        1. As a place to standardise object properties. The idea is this: many ontologies are modelling mereological relations, such as partonomies, which requires relationships such as \"part of\" and \"has part\". To ensure that ontologies are interoperable, we need to make sure that all ontologies use the same \"part of\" relationship. Historically this is not always been true, and still is not. At the time of this writing, running:
        prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nprefix owl: <http://www.w3.org/2002/07/owl#>\nSELECT distinct ?graph_uri ?s\nWHERE {\nGRAPH ?graph_uri\n{ ?s rdf:type owl:ObjectProperty ;\n   rdfs:label \"part of\" . }\n}\n

        On the OntoBee SPARQL endpoint still reveals a number of ontologies using non-standard part-of relations. In our experience, most of these are accidental due to past format conversions, but not all. This problem was much worse before RO came along, and our goal is to unify the representation of key properties like \"part of\" across all OBO ontologies. The OBO Dashboard checks for object properties that are not aligned with RO.

        1. As a place to encode and negotiate object property semantics. Object properties (OP) can have domains and ranges, can have characteristics such as functionality and transitivity, see above. Arguing the exact semantics of an OP can be a difficult and lengthy collaborative process, esp. since OP semantics can have a huge impact on ontology reasoning. Detailed RO documentation (modelling patterns and practices) can be found in here. The process of how relationships are added to RO is discussed in the next section.
        "},{"location":"lesson/modelling-with-object-properties/#adding-relationships-to-ro","title":"Adding relationships to RO","text":"

        To add a relationship we usually follow the following process. For details, please refer to the RO documentation.

        1. Check whether the OP is already in RO. Search for synonyms - often the relationship you are looking exist, but under a different name. If you cant find the exact OP, see whether you can find similar OPs - this may help you also identify suitable parent OPs.
        2. Make an RO issue. Take care to not only describe the name of your relationship, but also intended application areas with examples, a good definition, potential parent relationships, domains and ranges. The more detail you provide, the easier it will be for the community to review your request.
        3. Make a pull request. This involves the same steps as usual. If you are unsure what annotations need to be added and how to reflect the intended semantics, it may be useful to look at past pull requests.
        4. Join our quarterly RO calls and check out the RO documentation.
        "},{"location":"lesson/ontology-design/","title":"Ontology Design","text":""},{"location":"lesson/ontology-design/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/ontology-design/#prerequisites","title":"Prerequisites","text":"

        Participants will need to have access to the following resources and tools prior to the training:

        • GitHub account - register for a free GitHub account here
        • Protege - Install Protege 5.5, download it here
        • Install ELK 0.5
        • Install GitHub Desktop Please make sure you have some kind of git client installed on your machine. If you are new to Git, please install GitHub Desktop
        "},{"location":"lesson/ontology-design/#preparation","title":"Preparation","text":"
        • Review tutorial on Ontology Term Use
        • Review tutorial on Contributing to OBO Ontologies
        • Clone Mondo repo: Follow these instructions to clone the Mondo repo
        "},{"location":"lesson/ontology-design/#what-is-delivered-as-part-of-this-course","title":"What is delivered as part of this course","text":"

        Description: This course will cover reasoning with OWL.

        "},{"location":"lesson/ontology-design/#learning-objectives","title":"Learning objectives","text":"

        At the end of this lesson, you should know how to do:

        1. Add existential restrictions
        2. Add defined classes
        3. Add disjoint axioms
        4. Debug unsatisfiable classes
        "},{"location":"lesson/ontology-design/#tutorials","title":"Tutorials","text":"

        OpenHPI Course Content

        1. Ontologies and Logic Videos 3.0-3.10 | Duration: ~3.5 hrs
        2. OWL, Rules, and Reasoning Videos 4.0-4.8 | Duration: ~2.7 hrs
        "},{"location":"lesson/ontology-design/#additional-materials-and-resources","title":"Additional Materials and Resources","text":"
        • Monkeying around with OWL: Musings on building and using ontologies, posts by Chris Mungall
        • Documentation on Cell Ontology relations
        • Guidelines for writing definitions in Ontologies (paper)
        • How to deal with unintentional equivalent classes: Cool post by Chris Mungall on how to deal with an important reasoning issue.
        "},{"location":"lesson/ontology-design/#semantic-engineer-toolbox","title":"Semantic Engineer Toolbox","text":"
        • Protege
        • ELK Protege Plugin
        • GitHub Desktop
        "},{"location":"lesson/ontology-design/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        • Nico Matentzoglu
        "},{"location":"lesson/ontology-design/#acknowledgement","title":"Acknowledgement","text":"
        • Content was adapted from Ontology 101 Tutorial
        "},{"location":"lesson/ontology-design/#owl-class-restrictions","title":"OWL class restrictions","text":"

        In OWL, we use object properties to describe binary relationships between two individuals (or instances). We can also use the properties to describe new classes (or sets of individuals) using restrictions. A restriction describes a class of individuals based on the relationships that members of the class participate in. In other words, a restriction is a kind of class, in the same way that a named class is a kind of class.

        For example, we can use a named class to capture all the individuals that are idiopathic diseases. But we could also describe the class of idiopathic disease as all the instances that are 'has modifier' idiopathic disease.

        In OWL, there are three main types of restrictions that can be placed on classes. These are quantifier restriction, cardinality restrictions, and hasValue restriction. In this tutorial, we will initially focus on quantifier restrictions.

        Quantifier restrictions are further categorized into two types, the existential and the universal restriction.

        • Existential restrictions describe classes of individuals that participate in at least one relationship along a specified property to individuals that are members of a specified class. For example, the class of individuals that have at least one ( some ) 'has modifier' relationship to members of the idiopathic disease class. In Protege, the keyword 'some' is used to denote existential restrictions.
        • Universal restrictions describe classes of individuals that for a given property only have relationships along this property to individuals that are members of a specified class. For example, we can say a cellular component is capable of many functions using the existential quantifier, however, OWL semantics assume that there could be more. We can use the universal quantifier to add closure to the existential. That is, we can assert that a cellular component is capable of these functions, and is only capable of those functions and no other. Another example is that the process of hair growth is found only in instances of the class Mammalia. In Protege the keyword 'only' is used.

        In this tutorial, we will deal exclusively with the existential (some) quantifier.

        "},{"location":"lesson/ontology-design/#superclass-restrictions","title":"Superclass restrictions","text":"

        Strictly speaking in OWL, you don't make relationships between classes, however, using OWL restrictions we essentially achieve the same thing.

        We wanted to capture the knowledge that the named class 'idiopathic achalasia' is an idiopathic disease. In OWL speak, we want to say that every instance of an ' idiopathic achalasia' is also an instance of the class of things that have at least one 'has modifier' relationship to an idiopathic disease. In OWL, we do this by creating an existential restriction on the idiopathic achalasia class.

        1. In the Entities tab, select 'idiopathic achalasia' in the class hierarchy and look at its current class description in the bottom right box.
        2. Note that there are two superclasses (as denoted by the SubClass Of list). ''gastroesophageal disease'' and 'has modifier' some idiopathic.
        3. Run the reasoner.
        4. You should see that this class is now inferred to be an idiopathic disease because of this SubClassOf (superclass) restriction.
        "},{"location":"lesson/ontology-design/#equivalence-axioms-and-automatic-classification","title":"Equivalence Axioms and Automatic classification","text":"

        This example introduces equivalence axioms or defined classes (also called logical definitions) and automatic classification.

        The example involves classification of Mendelian diseases that have a monogenic (single gene) varation. These equivalence axioms are based off the Mondo Design Pattern disease_series_by_gene.

        Constructs:

        • and (intersection)
        • equivalence (logical definitions)
        • existential restrictions (e.g. 'disease has basis in dysfunction of')
        "},{"location":"lesson/ontology-design/#add-an-equivalence-axiom-to-an-existing-mondo-term","title":"Add an equivalence axiom to an existing Mondo term","text":"
        1. Create a new branch and open (or re-open) mondo-edit.obo
        2. Navigate to the class 'cardioacrofacial dysplasia 1'
        3. According to OMIM, this disease is caused by a variation in the gene PRKACA.
        4. We want to add an equivalence axiom that says every instance of this class is a type of 'cardioacrofacial dysplasia' that has dysfunction in the PRKACA gene.
        5. To do this, click the + next to Equivalent To in the lower right Description box.
        6. Add the following equivalence axiom: 'cardioacrofacial dysplasia' and ('disease has basis in dysfunction of' some PRKACA)
        7. Run the reasoner.
        8. You shouldn't see any change, but try deleting the superclass assertion to 'cardioacrofacial dysplasia' and re-running the reasoner.
        9. You should see that 'cardioacrofacial dysplasia' is an inferred superclass.
        10. Undo the last change, save your work, commmit, and create a pull request.
        "},{"location":"lesson/ontology-design/#adding-classes-and-automatically-classifying-them","title":"Adding classes and automatically classifying them","text":"

        For teaching purposes, let's say we need a new class that is 'fungal allergy'.

        1. Create a new branch and re-open mondo-edit.obo
        2. Add a new term under owl:Thing named 'fungal allergy'.
        3. Following the design pattern allergy.yaml, add the text definition, synonym and equivalentTo axiom, using the substance ECTO_0000524 'exposure to mycotoxin'.
        4. Run the reasoner and note where the class is automatically classified.
        5. Create a pull request and note in the PR what the parent class is.
        "},{"location":"lesson/ontology-design/#debugging-automatic-classifications","title":"Debugging automatic classifications","text":"
        1. On the same branch, add a new term under owl:Thing named 'oral cavity neoplasm'.
        2. Following the design pattern neoplasm_by_origin, add the term label and the equivalence axiom.
        3. Run the reasoner and note where the term in automatically classified. You should see it is under owl:Nothing.
        4. Click the ? next to owl:Nothing in the Description box to see the explanation.
        5. Can you determine why this is an unsatisfiable class?
        6. Create a pull request and add a comment explaining why this is unsatisfiable.
        "},{"location":"lesson/ontology-design/#disjointness","title":"Disjointness","text":"

        By default, OWL assumes that these classes can overlap, i.e. there are individuals who can be instances of more than one of these classes. We want to create a restriction on our ontology that states these classes are different and that no individual can be a member of more than one of these classes. We can say this in OWL by creating a disjoint classes axiom.

        1. Create a branch in the Mondo repo (name it: disjoint-[your initials]. For example: disjoint-nv)
        2. Open the mondo-edit.obo file
        3. Per this ticket, we want to assert that infectious disease and syndromic disease are disjoint.
        4. To do this first search for and select the infectious disease class.
        5. In the class 'Description' view, scroll down and select the (+) button next to Disjoint With. You are presented with the now familiar window allowing you to select, or type, to choose a class. In the Expression editor, add 'syndromic disease' as disjoint with 'infectious disease'.
        6. Run the ELK reasoner.
        7. Scroll to the top of your hierarchy and note that owl:Nothing has turned red. This is because there are unsatisfiable classes.
        "},{"location":"lesson/ontology-design/#review-and-fix-one-unsatisfiable-class","title":"Review and fix one unsatisfiable class","text":"

        Below we'll review an example of one class and how to fix it. Next you should review and fix another one on your own and create a pull request for Nicole or Nico to review. Note, fixing these may require a bit of review and subjective decision making and the fix described below may not necessarily apply to each case.

        1. Review Bickerstaff brainstem encephalitis: To understand why this class appeared under owl:Nothing, first click the ? next to owl:Nothing in the Description box. (Note, this can take a few minutes).

        1. The explanation is displayed above - it is because this class is a descedent of Guillain-Barre syndrome, which is a child of syndromic disease.
        2. Next, we have to ask if Bickerstaff brainstem encephalitis is an appropriate child of regional variant of Guillain-Barre syndrome. Note, Mondo integrates several disease terminologies and ontologies, and brought in all the subclass hierarchies from these source ontologies. To see the source of this superclass assertion, click the @ next to the assertion.
        3. This source came from Orphanet, see below.

        1. Based on the text definition, there does not seem to be any suggestion that this disease is a type of Guillain-Barre syndrome.
        2. Assuming that this disease is not a type of Guillain-Barre syndrome, we should exclude the superclass regional variant of Guillain-Barre syndrome (see this paper and this paper. It seems a bit unclear what the relationship of BBE is to Guillain-Barre syndrome. This also brings into the question if a disease can be syndromic and an infectious disease - maybe this disjoint axiom is wrong, but let's not worry about this for the teaching purposes.)
        3. To exclude a superclass, follow the instructions here.
        "},{"location":"lesson/ontology-development/","title":"Ontology Development: Release Management, Quality Control and Collaborative Methods","text":""},{"location":"lesson/ontology-development/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/ontology-development/#prerequisites","title":"Prerequisites","text":"
        • You have a GitHub account
        • You have set up docker and installed the ODK (how to)
        "},{"location":"lesson/ontology-development/#preparation","title":"Preparation","text":"
        • You have prepared your ODK set-up
        • Read ODK reference overview
        "},{"location":"lesson/ontology-development/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":""},{"location":"lesson/ontology-development/#learning-objectives","title":"Learning objectives","text":""},{"location":"lesson/ontology-development/#tutorials","title":"Tutorials","text":""},{"location":"lesson/ontology-development/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/ontology-development/#contributors","title":"Contributors","text":""},{"location":"lesson/ontology-fundamentals/","title":"Ontologies: Fundamentals","text":""},{"location":"lesson/ontology-fundamentals/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/ontology-fundamentals/#prerequisites","title":"Prerequisites","text":"
        • Install Prot\u00e9g\u00e9
        "},{"location":"lesson/ontology-fundamentals/#preparation","title":"Preparation","text":"
        • Complete OpenHPI Week 5: Ontology Engineering videos 5.1, 5.2, and 5.4 - 5.6 (~2.5 hours)
        • We are skipping 5.3: Ontology Learning and both sections on MORE Ontology Evaluation (5.7 and 5.8)
        • Complete part of the Ontologies 101 Tutorial (~2 hours)
        • Clone the Ontologies 101 repository, then open the folder BDK14_exercises from your file system
        • Open basic-subclass/chromosome-parts.owl in Prot\u00e9g\u00e9, then do the following exercises:
          • Basic Subclass Hierarchy (review) - make sure to look at the \"detailed instructions\" for adding annotations here, as it will go over adding annotations on annotation assertions
          • Disjointness
          • Object Properties - note that you will rarely, if ever, be making object properties, as most of the properties you'll ever need are defined in the Relation Ontology
          • OWL Class Restrictions
        • Open basic-restriction/er-sec-complex.owl in Prot\u00e9g\u00e9, then do the following exercise:
          • Basic Restrictions
        • Open basic-dl-query/cc.owl in Prot\u00e9g\u00e9, then do the following exercises:
          • DL Query Tab - note that owl:Nothing is defined as the very bottom node of an ontology, therefore the DL query results will show owl:Nothing as a subclass. This is expected and does not mean there is a problem with your ontology! It's only bad when something is a subclass of owl:Nothing and therefore unsatisfiable (more on that below).
          • Basic DL Queries
        • Open basic-classification/ubiq-ligase-complex.owl in Prot\u00e9g\u00e9, then do the following exercises:
          • Basic Classification
        • Read (I can't get no) satisfiability (~10 minutes)
        • Optional: Open a new ontology in Prot\u00e9g\u00e9. Try creating an inconsistent ontology using the classes and instances in the first Pets example (hint: you'll also need to create the \"eats\" object property)... what happens when you run the reasoner? Don't spend too much time on this if you get stuck, we'll look at an example of an inconsistent ontology in our session.
        "},{"location":"lesson/ontology-fundamentals/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        Description: Learn the fundamentals of ontologies.

        "},{"location":"lesson/ontology-fundamentals/#learning-objectives","title":"Learning objectives","text":"
        • OpenHPI course review: questions? (~15 minutes)
        • OWL ontology serializations (\"formats\") (~15 minutes)
        • Converting between serializations with robot convert (Review; ~15 minutes)
        • Creating modules from existing ontologies (~30 minutes)
        • What is a module?
        • How do we use the modules in our ontologies?
        • Extraction methods: MIREOT vs. SLME
        • Creating a module to import with robot extract (Review; ~15 minutes)
        • Ontology design patterns (~15 minutes)
        • Real world example: Ontology for Biomedical Investigations (OBI)
        • Using design patterns in robot template (Review; ~15 minutes)
        • Including your modules in your ontology as imports
        "},{"location":"lesson/ontology-fundamentals/#tutorials","title":"Tutorials","text":""},{"location":"lesson/ontology-fundamentals/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/ontology-fundamentals/#contributors","title":"Contributors","text":"
        • add name/ORCID here
        "},{"location":"lesson/ontology-pipelines/","title":"Ontology Pipelines with ROBOT and SPARQL","text":""},{"location":"lesson/ontology-pipelines/#warning","title":"Warning","text":"

        These materials are under construction and may be incomplete.

        "},{"location":"lesson/ontology-pipelines/#prerequisites","title":"Prerequisites","text":"
        • Install ROBOT so you can use it outside of Docker (scroll down to the end of the ROBOT page to find the Windows instructions)
        • Optional Install ODK. The ODK includes ROBOT. In the more advanced parts of the course, you will need the ODK installed for some of the other dependencies it includes, and for Windows users it is often easier to follow the tutorials from inside the docker container rather than the Windows CMD.
        • Familiarise yourself with the ROBOT documentation, to the point that you are aware of the various commands that exist.
        "},{"location":"lesson/ontology-pipelines/#tutorials","title":"Tutorials","text":"
        • Complete the ROBOT Mini-Tutorial 1 to learn your first ROBOT commands: convert, extract and template
        • Complete the ROBOT Mini-Tutorial 2 to learn about annotate, merge, reason and diff
        • Complete Running Basic SPARQL Queries tutorial (~45 minutes - 1 hour)
        "},{"location":"lesson/ontology-pipelines/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        There are two basic ways to edit an ontology: 1. Manually, using tools such as Protege, or 2. Using computational tools such as ROBOT.

        Both have their advantages and disadvantages: manual curation is often more practical when the required ontology change follows a non-standard pattern, such as adding a textual definition or a synonym, while automated approaches are usually much more scalable (ensure that all axioms in the ontology are consistent, or that imported terms from external ontologies are up-to-date or that all labels start with a lower-case letter).

        Here, we will do a first dive into the \"computational tools\" side of the edit process. We strongly believe that the modern ontology curator should have a basic set of computational tools in their Semantic Engineering toolbox, and many of the lessons in this course should apply to this role of the modern ontology curator.

        ROBOT is one of the most important tools in the Semantic Engineering Toolbox. For a bit more background on the tool, please refer to the paper ROBOT: A Tool for Automating Ontology Workflows.

        We also recommend to get a basic familiarity with SPARQL, the query language of the semantic web, that can be a powerful combination with ROBOT to perform changes and quality control checks on your ontology.

        "},{"location":"lesson/ontology-pipelines/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/ontology-pipelines/#contributors","title":"Contributors","text":"
        • Becky Jackson
        • Nico Matentzoglu
        "},{"location":"lesson/ontology-term-use/","title":"Using Ontologies and Ontology Terms","text":""},{"location":"lesson/ontology-term-use/#warning","title":"Warning","text":"

        These materials are under construction and may be incomplete.

        "},{"location":"lesson/ontology-term-use/#prerequisites","title":"Prerequisites","text":"
        • Sign up for a free GitHub account
        "},{"location":"lesson/ontology-term-use/#preparation","title":"Preparation","text":"
        • None
        "},{"location":"lesson/ontology-term-use/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        Description: Using ontology terms for annotations and structuring data.

        "},{"location":"lesson/ontology-term-use/#learning-objectives","title":"Learning objectives","text":"
        1. Explain why ontologies are useful
        2. Find good ontologies: ontology repositories, OBO
        3. Find terms using ontology browsers
        4. Assess ontologies for use: license, quality
        5. Map local terminology to ontology terms
        6. Identify missing terms
        7. Make term requests to existing ontologies
        8. Understand the differences between IRIs, CURIEs, and labels
        "},{"location":"lesson/ontology-term-use/#tutorials","title":"Tutorials","text":"
        • None
        "},{"location":"lesson/ontology-term-use/#additional-materials-and-resources","title":"Additional materials and resources","text":"
        • How select and request terms from ontologies - Blog post by Chris Mungall
        • Guidelines for writing definitions in Ontologies (paper)
        • OntoTips - A guide by Chris Mungall covering various aspects of ontology engineering.
        "},{"location":"lesson/ontology-term-use/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        "},{"location":"lesson/ontology-term-use/#1-why-ontologies-are-useful","title":"1. Why ontologies are useful","text":"

        Ontologies provide a logical classification of information in a particular domain or subject area. Ontologies can be used for data annotations, structuring disparate data types, classifying information, inferencing and reasoning across data, and computational analyses.

        "},{"location":"lesson/ontology-term-use/#difference-between-a-terminology-and-an-ontology","title":"Difference between a terminology and an ontology","text":""},{"location":"lesson/ontology-term-use/#terminology","title":"Terminology","text":"

        A terminology is a collection of terms; a term can have a definition and synonyms.

        "},{"location":"lesson/ontology-term-use/#ontology","title":"Ontology","text":"

        An ontology contains a formal classification of terminology in a domain that provides textual and machine readable definitions, and defines the relationships between terms. An ontology is a terminology, but a terminology is not (necessarily) an ontology.

        "},{"location":"lesson/ontology-term-use/#2-finding-good-ontologies","title":"2. Finding good ontologies","text":"

        Numerous ontologies exist. Some recommended sources to find community developed, high quality, and frequently used ontologies are listed below.

        • OBO Foundry. Read more below
        • The Ontology Lookup Service (OLS). The OLS contains over 200 ontologies.
        • BioPortal. BioPortal aggregates almost 900 biomedical ontologies, and provides a search interface to look up terms. It is a popular repository for ontologies, but as only a fraction of the ontologies are reviewed by the OBO Foundry, you should carefully review any ontologies found on BioPortal before committing to use them.
        • Ontobee. Ontobee indexes all 200+ OBO Foundry ontologies and is the default browser for OBO: For example, when you click http://purl.obolibrary.org/obo/IAO_0000112, you will be redirected to the a page in the Ontobee browser that describes the annotation property example of usage.

        "},{"location":"lesson/ontology-term-use/#3-ontology-repositories","title":"3. Ontology repositories","text":""},{"location":"lesson/ontology-term-use/#obo-foundry","title":"OBO Foundry","text":"

        The OBO Foundry is a community of ontology developers that are committed to developing a library of ontologies that are open, interoperable ontologies, logically well-formed and scientifically accurate. OBO Foundry participants follow and contribute to the development of an evolving set of principles including open use, collaborative development, non-overlapping and strictly-scoped content, and common syntax and relations, based on ontology models that work well, such as the Gene Ontology (GO).

        The OBO Foundry is overseen by an Operations Committee with Editorial, Technical and Outreach working groups.

        "},{"location":"lesson/ontology-term-use/#find-terms-using-ontology-browsers","title":"Find terms using ontology browsers","text":"

        Various ontology browsers are available, we recommend using one of the ontology browsers listed below.

        • Find terms:
        • Ontology Lookup Service
        • BioPortal
        • Ontobee

        "},{"location":"lesson/ontology-term-use/#4-assessing-ontologies-for-use","title":"4. Assessing ontologies for use","text":"

        Some considerations for determining which ontologies to use include the license and quality of the ontology.

        "},{"location":"lesson/ontology-term-use/#license","title":"License","text":"

        Licenses define how an ontology can legally be used or reused. One requirement for OBO Foundry Ontologies is that they are open, meaning that the ontologies are openly and freely available for use with acknowledgement and without alteration. OBO ontologies are required to be released under a Creative Commons CC-BY license version 3.0 or later, OR released into the public domain under CC0. The license should be clearly stated in the ontology file.

        "},{"location":"lesson/ontology-term-use/#quality","title":"Quality","text":"

        Some criteria that can be applied to determine the quality of an ontology include:

        • Is there an ontology tracker to report issues? All open ontologies should have some form of an issue tracker to report bugs, make new term requests or request other changes to the ontology. Many ontologies use GitHub to track their issues.
        • Is it currently active? Are there a large number of open tickets on the ontology tracker that have not been commented on or otherwise addressed? Are the tickets very old, have been sitting for years?
        • Commmunity involvement On the issue tracker, is there evidence of community involvement, such as issues and comments from outside community members?
        • Scientifically sound Does the ontology accurately represent the domain in a scientifically sound way?
        "},{"location":"lesson/ontology-term-use/#how-to-determine-which-is-the-right-ontology-to-use","title":"How to determine which is the right ontology to use?","text":"
        • There are multiple ontologies that exist, start by selecting the appropriate ontology, then search and restrict your search to that ontology.
        • Recommend using ontologies that are open and interoperable. Focusing on OBO foundry ontologies are a good place to start
        • Make informed decision about which ontology to use
        • Maybe the ontology you want to use does not have the term you want, so make a term request to that ontology
        "},{"location":"lesson/ontology-term-use/#5-mapping-local-terminology-to-ontology-terms","title":"5. Mapping local terminology to ontology terms","text":"

        Data can be mapped to ontology terms manually, using spreadsheets, or via curation tools such as:

        • Zooma
        • BioPortal Annotator
        • Canto - a web-based literature curation tools
        • Textpresso - designed for C. elegans curation
        • OntoBrowser - an online collaborative curation tool

        "},{"location":"lesson/ontology-term-use/#6-identifying-missing-terms","title":"6. Identifying missing terms","text":"

        The figure below by Chris Mungall on his blog post on How to select and request terms from ontologies describes a workflow on searching for identifying missing terms from an ontology.

        "},{"location":"lesson/ontology-term-use/#7-make-term-requests-to-existing-ontologies","title":"7. Make term requests to existing ontologies","text":"

        See separate lesson on Making term requests to existing ontologies.

        "},{"location":"lesson/ontology-term-use/#8-differences-between-iris-curies-and-labels","title":"8. Differences between IRIs, CURIEs, and labels","text":""},{"location":"lesson/ontology-term-use/#uri","title":"URI","text":"

        A uniform resource identifier (URI) is a string of characters used to identify a name or a resource.

        "},{"location":"lesson/ontology-term-use/#url","title":"URL","text":"

        A URL is a URI that, in addition to identifying a network-homed resource, specifies the means of acting upon or obtaining the representation.

        A URL such as this one:

        https://github.com/obophenotype/uberon/blob/master/uberon_edit.obo

        has three main parts:

        1. Protocol, e.g. https
        2. Host, e.g. github.com
        3. Path, e.g. /obophenotype/uberon/blob/master/uberon_edit.obo

        The protocol tells you how to get the resource. Common protocols for web pages are http (HyperText Transfer Protocol) and https (HTTP Secure). The host is the name of the server to contact (the where), which can be a numeric IP address, but is more often a domain name. The path is the name of the resource on that server (the what), here the Uberon anatomy ontology file.

        "},{"location":"lesson/ontology-term-use/#iri","title":"IRI","text":"

        A Internationalized Resource Identifiers (IRI) is an internet protocol standard that allows permitted characters from a wide range of scripts. While URIs are limited to a subset of the ASCII character set, IRIs may contain characters from the Universal Character Set (Unicode/ISO 10646), including Chinese or Japanese kanji, Korean, Cyrillic characters, and so forth. It is defined by RFC 3987.

        More information is available here.

        "},{"location":"lesson/ontology-term-use/#curies","title":"CURIEs","text":"

        A Compact URI (CURIE) consists of a prefix and a suffix, where the prefix stands in place of a longer base IRI.

        By converting the prefix and appending the suffix we get back to full IRI. For example, if we define the obo prefix to stand in place of the IRI as: http://purl.obolibrary.org/obo/, then the CURIE obo:UBERON_0002280 can be expanded to http://purl.obolibrary.org/obo/UBERON_0002280, which is the UBERON Anatomy term for \u2018otolith\u2019. Any file that contains CURIEs need to define the prefixes in the file header.

        "},{"location":"lesson/ontology-term-use/#label","title":"Label","text":"

        A label is the textual, human readable name that is given to a term, class property or instance in an ontology.

        "},{"location":"lesson/rdf/","title":"Introduction to RDF","text":"

        First Instructor: James Overton Second Instructor: Becky Jackson

        "},{"location":"lesson/rdf/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/rdf/#description","title":"Description","text":"

        Modelling and querying data with RDF triples, and working with RDF using tables

        "},{"location":"lesson/rdf/#topics","title":"Topics","text":"
        • RDF modelling
        • RDFS
        • SPARQL
        "},{"location":"lesson/rdf/#openhpi-course-content","title":"OpenHPI Course Content","text":"

        OpenHPI Linked Data Engineering (2016)

        • Lesson 2 RDF
        • Lesson 4 SPARQL
        "},{"location":"lesson/rdf/#software-carpentry-lessons","title":"Software Carpentry Lessons","text":"

        Using Databases and SQL

        "},{"location":"lesson/rdf/#new-material","title":"New Material","text":"
        • Tables and Triples
        "},{"location":"lesson/rdf/#optional-material","title":"Optional material","text":"
        • Linking data
        "},{"location":"lesson/rdf/#semantic-engineer-toolbox","title":"Semantic Engineer Toolbox","text":""},{"location":"lesson/semantic-database-fundamentals/","title":"Semantic Databases: Fundamentals","text":""},{"location":"lesson/semantic-database-fundamentals/#warning","title":"Warning","text":"

        These materials are under construction and incomplete.

        "},{"location":"lesson/semantic-database-fundamentals/#prerequisites","title":"Prerequisites","text":"
        • Review tutorial on Project Ontology Development
        "},{"location":"lesson/semantic-database-fundamentals/#preparation","title":"Preparation","text":"
        • TBD
        "},{"location":"lesson/semantic-database-fundamentals/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

        Description: Using ontology terms in a database.

        "},{"location":"lesson/semantic-database-fundamentals/#learning-objectives","title":"Learning objectives","text":"
        • advanced term mapping
        • ontology terms in SQL
        • terminology table JOINs, constraints
        • convert tables to triples
        • triplestores
        • knowledge graphs
        "},{"location":"lesson/semantic-database-fundamentals/#tutorials","title":"Tutorials","text":"
        • in person or video (link videos here as they become available)
        "},{"location":"lesson/semantic-database-fundamentals/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/semantic-database-fundamentals/#contributors","title":"Contributors","text":"
        • Nico Matentzoglu
        "},{"location":"lesson/templates-for-obo/","title":"Templating systems for OBO ontologies: a deep dive","text":"

        Ontologies are notoriously hard to edit. This makes it a very high burden to edit ontologies for anyone but a select few. However, many of the contents of ontologies are actually best edited by domain experts with often little or known ontological training - editing labels and synonyms, curating definitions, adding references to publications and many more. Furthermore, if we simply remove the burden of writing OWL axioms, editors with very little ontology training can actually curate even logical content: for example, if we want to describe that a class is restricted to a certain taxon (also known as taxon-restriction), the editor is often capable to select the appropriate taxon for a term (say, a \"mouse heart\" is restricted to the taxon of Mus musculus), but maybe they would not know how to \"add that restriction to the ontology\".

        Tables are great (for a deep dive into tables and triples see here). Scientists in particular love tables, and, even more importantly, can be trained easily to edit data in spreadsheet tools, such as Google Sheets or Microsoft Excel.

        Ontology templating systems, such as DOSDP templates, ROBOT templates and Reasonable Ontology Templates (OTTR) allow separating the raw data in the ontology (labels, synonyms, related ontological entities, descriptions, cross-references and other metadata) from the OWL language patterns that are used to manifest them in the ontology. There are three main ingredients to a templating system:

        1. A way to capture the data. In all the systems we care about, these are tables, usually manifested as spreadsheets in Excel or Google Sheets.
        2. A way to capture the template. In ROBOT templates the templates are captured in a header row of the same table that captures the data, in DOSDP templates the templates are captured in a separate YAML file and in OTTR typically the templates are serialised as and RDF-graph in a format like RDF/XML or Turtle.
        3. A toolkit that can combine the data and the template to generate OWL axioms and annotations. ROBOT templates can be compiled to OWL using ROBOT, DOSDP templates can be compiled using DOSDP tools and OTTR templates using Lutra.

        In OBO we are currently mostly concerned with ROBOT templates and DOSDP templates. Before moving on, we recommend to complete a basic tutorial in both:

        • ROBOT template tutorial
        • DOSDP template tutorial
        "},{"location":"lesson/templates-for-obo/#robot-template-vs-dosdp-template","title":"ROBOT template vs DOSDP template","text":"

        Ontologies, especially in the biomedical domain, are complex and, while growing in size, increasingly hard to manage for their curators. In this section, we will look at some of the key differences of two popular templating systems in the OBO domain: Dead Simple Ontology Design Patterns (DOSDPs) and ROBOT templates. We will not cover the rationale for templates in general in much depth (the interested reader should check ontology design patterns and Reasonable Ontology Templates (OTTR): Motivation and Overview, which pertains to a different system, but applies none-the-less in general), and focus on making it easier for developers to pick the right templating approach for their particular use case. We will first discuss in detail representational differences, before we go through the functional ones and delineate use cases.

        "},{"location":"lesson/templates-for-obo/#structural-differences-formats-and-tools","title":"Structural differences, formats and tools","text":""},{"location":"lesson/templates-for-obo/#dosdp-templates-structure-and-format","title":"DOSDP templates: structure and format","text":"

        DOSDP separates data and templates into two files: a yaml file which defines the template, and a TSV file which holds the data. Lets look at s example.

        The template: abnormalAnatomicalEntity

        pattern_name: abnormalAnatomicalEntity\npattern_iri: http://purl.obolibrary.org/obo/upheno/patterns/abnormalAnatomicalEntity.yaml\ndescription: \"Any unspecified abnormality of an anatomical entity.\"\n\ncontributors:\n  - https://orcid.org/0000-0002-9900-7880\n  - https://orcid.org/0000-0001-9076-6015\n  - https://orcid.org/0000-0003-4148-4606\n  - https://orcid.org/0000-0002-3528-5267\n\nclasses:\n  quality: PATO:0000001\n  abnormal: PATO:0000460\n  anatomical entity: UBERON:0001062\n\nrelations:\n  inheres_in_part_of: RO:0002314\n  has_modifier: RO:0002573\n  has_part: BFO:0000051\n\nannotationProperties:\n  exact_synonym: oio:hasExactSynonym\n\nvars:\n  anatomical_entity: \"'anatomical entity'\"\n\nname:\n  text: \"abnormal %s\"\n  vars:\n   - anatomical_entity\n\nannotations:\n  - annotationProperty: exact_synonym\n    text: \"abnormality of %s\"\n    vars:\n     - anatomical_entity\n\ndef:\n  text: \"Abnormality of %s.\"\n  vars:\n    - anatomical_entity\n\nequivalentTo:\n  text: \"'has_part' some ('quality' and ('inheres_in_part_of' some %s) and ('has_modifier' some 'abnormal'))\"\n  vars:\n    - anatomical_entity\n

        The data: abnormalAnatomicalEntity.tsv

        defined_class defined_class_label anatomical_entity anatomical_entity_label HP:0040286 Abnormal axial muscle morphology UBERON:0003897 axial muscle HP:0011297 Abnormal digit morphology UBERON:0002544 digit"},{"location":"lesson/templates-for-obo/#robot-templates-structure-and-format","title":"ROBOT templates: structure and format","text":"

        ROBOT encodes both the template and the data in the same TSV; after the table header, the second row basically encodes the entire template logic, and the data follows in table row 3.

        ID Label EQ Anatomy Label ID LABEL EC 'has_part' some ('quality' and ('inheres_in_part_of' some %) and ('has_modifier' some 'abnormal')) HP:0040286 Abnormal axial muscle morphology UBERON:0003897 axial muscle HP:0011297 Abnormal digit morphology UBERON:0002544 digit

        Note that for the Anatomy Label we deliberately left the second row empty, which instructs the ROBOT template tool to completely ignore this column.

        "},{"location":"lesson/templates-for-obo/#a-discussion-on-the-main-differences","title":"A discussion on the main differences","text":""},{"location":"lesson/templates-for-obo/#ontology-engineering-perspective","title":"Ontology Engineering perspective","text":"

        From an ontology engineering perspective, the essence of the difference between DOSDP and ROBOT templates could be captured as follows:

        DOSDP templates are more about generating annotations and axioms, while ROBOT templates are more about curating annotations and axioms.\n

        Curating annotations and axioms means that an editor, or ontology curator, manually enters the labels, synonyms, definitions and so forth into the spreadsheet.

        Generating axioms in the sense of this section means that we try to automatically generate labels, synonyms, definitions and so forth based on the related logical entities in the patterns. E.g., using the example template above, the label \"abnormal kidney\" would automatically be generated when the Uberon term for kidney is supplied.

        While both ROBOT and DOSDP can be used for \"curation\" of annotation of axioms, DOSDP seeks to apply generation rules to automatically generate synonyms, labels, definitions and so forth while for ROBOT template seeks to collect manually curated information in an easy-to-use table which is then compiled into OWL. In other words:

        • the average DOSDP user will not write their own labels, definitions and synonyms - they will want those to be generated automatically from a set of simple rules;
        • the average ROBOT template user will not want automatically generated definitions, labels and synonyms - they will want to capture their own.
        "},{"location":"lesson/templates-for-obo/#sharing-and-re-use","title":"Sharing and Re-use","text":"

        However, there is another dimension in which both approaches differ widely: sharing and re-use. DOSDPs by far the most important feature is that it allows a community of developers to rally around a modelling problem, debate and establish consensus; for example, a pattern can be used to say: this is how we model abnormal anatomical entities. Consensus can be made explicit by \"signing off\" on the pattern (e.g. by adding your ORCId to the list of contributors), and due to the template/data separation, the template can be simply imported using its IRI (for example http://purl.obolibrary.org/obo/upheno/patterns/abnormalAnatomicalEntity.yaml) and re-used by everyone. Furthermore, additional metadata fields including textual descriptions, and more recently \"examples\", make DOSDP template files comparatively easy to understand, even by a less technically inclined editor.

        ROBOT templates on the other hand do not lend themselves to community debates in the same way; first of all, they are typically supplied including all data merged in; secondly, they do not provide additional metadata fields that could, for example, conveniently be used to represent a sign off (you could, of course, add the ORCId's into a non-functional column, or as a pipe-separated string into a cell in the first or second row; but its obvious that this would be quite clunky) or a textual description. A yaml file is much easier for a human to read and understand then the header of a TSV file, especially when the template becomes quite large.

        However, there is a flipside to the strict separation of data and templates. One is that DOSDP templates are really hard to change. Once, for example, a particular variable name was chosen, renaming the variable will require an excessive community-wide action to rename columns in all associated spreadsheets - which requires them all to be known beforehand (which is not always the case). You don't have such a problem with ROBOT templates; if you change a column name, or a template string, everything will continue to work without any additional coordination.

        "},{"location":"lesson/templates-for-obo/#summary","title":"Summary","text":"

        Both ROBOT templates and DOSDP templates are widely used. The author of this page uses both in most of the projects he is involved in, because of their different strengths and capabilities. You can use the following rules of thumb to inform your choice:

        Consider ROBOT templates if your emphasis is on

        1. manually curating labels, definitions, synonyms and axioms or other annotations
        2. managing your templates in the spreadsheet itself is a concern for you (this is often the case, for example, when turning an existing data table into a ROBOT template ad hoc)

        Consider DOSDP templates if your emphasis is on

        1. re-use, community-wide implementation of the same templates and community discussion, you should consider DOSDP templates
        2. automatically generating labels, definitions, synonyms from rules in the pattern.
        "},{"location":"lesson/templates-for-obo/#detour-concerns-with-managing-tables","title":"Detour: Concerns with Managing Tables","text":"

        There is a nice debate going on which questions the use of tables in ontology curation altogether. There are many nuances in this debate, but I want to stylise it here as two schools of thoughts (there are probably hundreds in between, but this makes it easier to follow): The one school (let's call them Tablosceptics) claims that using tables introduces a certain degree of fragility into the development process due to a number of factors, including:

        1. losing the immediateness of QC feedback; Table-based development, so the Tablosceptics, encourages lazy editing (adding stuff to a template and then not reviewing the consequence properly, which we will discuss in more depth later).
        2. losing track of the ID space (in a multi-table world, it becomes increasingly hard to manage IDs, making sure they are not double used etc) and 3) encouraging bad design (relying more on assertion than inference).

        They prefer to use tools like Protege that show the curator immediately the consequences of their actions, like reasoning errors (unintended equivalent classes, unsatisfiable classes and other unintended inferences). The Tablophile school of thought responds to these accusations in essence with \"tools\"; they say that tables are essentially a convenient matrix to input the data (which in turns opens ontology curation to a much wider range of people), and it is up to the tools to ensure that QC is run, hierarchies are being presented for review and weird ID space clashes are flagged up. Furthermore, they say, having a controlled input matrix will actually decrease the number of faulty annotations or axioms (which is evidenced by the large number of wrongful annotation assertions across OBO foundry ontologies I see every day as part of my work). At first sight, both template systems are affected equally by the war of the Tablosceptics and the Tablophile. Indeed, in my on practice, the ID space issue is really problematic when we manage 100s and more templates, and so far, I have not seen a nice and clear solution that ensures that no ID used twice unless it is so intended and respects ID spaces which are often semi-formally assigned to individual curators of an ontology.

        Generally in this course we do not want to take a 100% stance. The author of this page believes that the advantage of using tables and involving many more people in the development process outweighs any concerns, but tooling is required that can provide more immediate feedback when such tables such as the ones presented here are curated at scale.

        "},{"location":"lesson/using-disease-and-phenotype-ontologies/","title":"Finding and using Disease and Phenotype Ontologies","text":""},{"location":"lesson/using-disease-and-phenotype-ontologies/#prerequisites","title":"Prerequisites","text":"
        • None
        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#preparation","title":"Preparation","text":"
        • Review tutorial on Ontology Term Use
        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course?","text":"

        Description: An introduction to the landscape of disease and phenotype terminologies and ontologies, and how they can be used to add value to your analysis.

        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#learning-objectives","title":"Learning objectives","text":"
        • Become aware of the major disease and phenotype ontologies that are available
        • Be able to decide which phenotype or disease ontology to use for different use cases
        • Understand how to leverage disease and phenotype ontologies for advanced data analytics
        • Have a basic understanding of how to integrate other data
        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#tutorials","title":"Tutorials","text":"
        • Video from Disease and Phenotypes c-path lesson 2021-06-16
        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#additional-materials-and-resources","title":"Additional materials and resources","text":""},{"location":"lesson/using-disease-and-phenotype-ontologies/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        • Nico Matentzoglu
        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#major-disease-and-phenotype-ontologies-that-are-available","title":"Major disease and phenotype ontologies that are available","text":"

        A landscape analysis of major disease and phenotype ontologies that are currently available is here (also available in Zenodo here).

        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#decide-which-phenotype-or-disease-ontology-to-use-for-different-use-cases","title":"Decide which phenotype or disease ontology to use for different use cases","text":"

        Different ontologies are built for different purposes and were created for various reasons. For example, some ontologies are built for text mining purposes, some are built for annotating data and downstream computational analysis.

        The unified phenotype ontology (uPheno) aggregates species-specific phenotype ontologies into a unified resource. Several species-specific phenotype ontologies exist, such as the Human Phenotype Ontology, Mammalian Phenotype Ontology (http://www.informatics.jax.org/searches/MP_form.shtml), and many more.

        Similarly to the phenotype ontologies, there are many disease ontologies that exist that are specific to certain areas of diseases, such as infectious diseases (e.g. Infectious Disease Ontology), cancer (e.g. National Cancer Institute Thesaurus), rare diseases (e.g. Orphanet), etc.

        In addition, there are several more general disease ontologies, such as the Mondo Disease Ontology, the Human Disease Ontology (DO), SNOMED, etc.

        Different disease ontologies may be built for different purposes; for example, ontologies like Mondo and DO are intended to be used for classifying data, and downstream computational analyses. Some terminologies are used for indexing purposes, such as the International classification of Diseases (ICD). ICD-11 is intended for indexing medical encounters for the purposes of billing and coding. Some of the disease ontologies listed on the landscape contain terms that define diseases, such as Ontology for General Medical Sciences (OGMS) are upper-level ontologies and are intended for integration with other ontologies.

        When deciding on which phenotype or disease ontology to use, some things to consider:

        • Do you need a more specific ontology, such as a species-specific ontology, or do you need a more general ontology that is cross-species or covers more aspects of diseases?
        • Is the ontology open and free to use?
        • Does the description of the ontology describe its intended use? For example, some ontologies are built for text mining purposes, some are built for annotating data and downstream computational analysis.
        • Is the ontology actively maintained?
        • Does the ontology contain the terms you need? If not, is there a mechanism to request changes or add new terms? Are the ontology developers responsive to change requests on their tracker?
        • Is the ontology widely used by the community? You can check things like active contributors on GitHub, usages described on the OBO Foundry page (for example http://obofoundry.org/ontology/mondo.html), published papers, and/or citations.

        "},{"location":"lesson/using-disease-and-phenotype-ontologies/#understand-how-to-leverage-disease-and-phenotype-ontologies-for-advanced-data-analytics","title":"Understand how to leverage disease and phenotype ontologies for advanced data analytics","text":""},{"location":"lesson/using-disease-and-phenotype-ontologies/#how-to-integrate-other-data","title":"How to integrate other data","text":""},{"location":"pathways/early-career-data-scientist/","title":"Early Career Data Scientist","text":"

        Description: A collection of videos, tutorials, training materials, and exercises targeted towards any entry-level, early-career trainee interested in learning basic skills in data science.

        Preparation: no advance preparation is required.

        "},{"location":"pathways/early-career-data-scientist/#1-data-science-ethics","title":"1. Data Science Ethics","text":""},{"location":"pathways/early-career-data-scientist/#videos","title":"Videos","text":"

        6 videos available here

        "},{"location":"pathways/early-career-data-scientist/#2-overview-what-is-data-science","title":"2. Overview: What is Data Science","text":""},{"location":"pathways/early-career-data-scientist/#videos_1","title":"Videos","text":"
        1. IBM OpenDS4All What is Data Science? with Yucen Wang - Part I
        2. IBM OpenDS4All What is Data Science? with Yucen Wang - Part II
        "},{"location":"pathways/early-career-data-scientist/#3-understand-and-appreciate-open-and-fair-data","title":"3. Understand and Appreciate Open and FAIR Data","text":""},{"location":"pathways/early-career-data-scientist/#article-to-read","title":"Article to read","text":"
        1. The FAIR Guiding Principles for scientific data management and stewardship
        "},{"location":"pathways/early-career-data-scientist/#exercises","title":"Exercises","text":"
        1. Create an ORCID
        2. Create wikidata entry about yourself and link to other projects if applicable
        3. Share past work on FigShare/Zenodo, etc
        "},{"location":"pathways/early-career-data-scientist/#4-learn-github","title":"4. Learn GitHub","text":""},{"location":"pathways/early-career-data-scientist/#getting-started","title":"Getting started","text":"
        1. Create a GitHub account, see https://docs.github.com/en/get-started/signing-up-for-github/signing-up-for-a-new-github-account
        2. Download and install GitHub Desktop
        "},{"location":"pathways/early-career-data-scientist/#tutorials","title":"Tutorials","text":""},{"location":"pathways/early-career-data-scientist/#introduction-to-github","title":"Introduction to GitHub","text":"
        1. GitHub getting started guide
        2. Git 101: Git and GitHub for Beginners
        3. GitHub fundamentals
        "},{"location":"pathways/early-career-data-scientist/#github-issues","title":"GitHub Issues","text":"
        1. Learn Markdown syntax
        2. GitHub issues
        3. About issues
        4. Intro to managing and tracking issues in GitHub
        "},{"location":"pathways/early-career-data-scientist/#exercises_1","title":"Exercises","text":"
        1. Help improve this pathway! Make edits to this OBO Academy page and make a pull request. (For example, find typos to fix, add or revise content to this document, etc.)
        2. Create a GitHub website by forking this repository: https://github.com/laderast/academic_site_workshop
        "},{"location":"pathways/early-career-data-scientist/#5-learn-command-line","title":"5. Learn command line","text":""},{"location":"pathways/early-career-data-scientist/#tutorials_1","title":"Tutorials","text":"
        1. Codecademy Learn the Command Line

        Note: for the tutorials below PC users need to install ODK (instructions are linked from the tutorial)

        1. Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 1
        2. Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 2
        "},{"location":"pathways/early-career-data-scientist/#6-introduction-to-ontologies","title":"6. Introduction to Ontologies","text":""},{"location":"pathways/early-career-data-scientist/#articles-to-read","title":"Articles to read","text":"
        1. Ontology 101 by D. McGuiness
        2. Ontological Annotation of Data
        "},{"location":"pathways/early-career-data-scientist/#videos_2","title":"Videos","text":"
        1. An Introduction to Ontologies by Mark Musen, Stanford University (~15 min)
        2. Introduction to Biomedical Ontologies #1: What is an Ontology?, by Jennifer Smith, Rat Genome Database (~15 min)
        3. Using ontologies to standardize rare disease data collection, by Nicole Vasilevsky, C-Path (1 hr)
        "},{"location":"pathways/early-career-data-scientist/#tutorials_2","title":"Tutorials","text":"
        1. Introduction to ontologies
        2. Ontology fundamentals
        3. Contributig to ontologies
        "},{"location":"pathways/early-career-data-scientist/#7-basic-data-management","title":"7. Basic Data Management","text":""},{"location":"pathways/early-career-data-scientist/#videos_3","title":"Videos","text":"
        1. Data Preparation and Planning
        2. https://dmice.ohsu.edu/bd2k/demo/BDK12-2/presentation_html5.html
        3. https://dmice.ohsu.edu/bd2k/demo/BDK12-3/presentation_html5.html
        4. Data sharing snafu: Data Sharing and Management Snafu in 3 Short Acts
        "},{"location":"pathways/early-career-data-scientist/#article-to-read_1","title":"Article to read","text":"
        1. 10 Simple Rules for the Care and Feeding of Scientific Data
        2. Big Data: The Future of Biocuration
        3. A primer on data sharing
        4. Identifiers for the 21st century: How to design, provision, and reuse persistent identifiers to maximize utility and impact of life science data
        5. Reproducible and reusable research: Are journal data sharing policies meeting the mark?
        "},{"location":"pathways/early-career-data-scientist/#exercise","title":"Exercise","text":"

        Data Management 101

        "},{"location":"pathways/early-career-data-scientist/#8-preparing-your-cv-and-tracking-your-contributions","title":"8. Preparing your CV and Tracking Your Contributions","text":""},{"location":"pathways/early-career-data-scientist/#video","title":"Video","text":"

        Workshop from Biocuration: Workshop - Careers In Biocuration

        "},{"location":"pathways/early-career-data-scientist/#articles","title":"Articles","text":"

        Is authorship sufficient for today\u2019s collaborative research? A call for contributor roles

        "},{"location":"pathways/early-career-data-scientist/#9-effective-communication-in-data-science","title":"9. Effective Communication in Data Science","text":""},{"location":"pathways/early-career-data-scientist/#tutorials_3","title":"Tutorials","text":"

        Survival strategies for team communication

        "},{"location":"pathways/ontology-contributor/","title":"Ontology Contributor Pathway","text":"

        Description: These guidelines are developed for anyone interested in contributing to ontologies to guide how to contribute to OBO Foundry ontologies.

        "},{"location":"pathways/ontology-contributor/#why-should-you-contribute-to-ontology-development-efforts","title":"Why should you contribute to ontology development efforts?","text":"

        Ontologies are routinely used for data standardization and in analytical analysis, but the ontologies themselves are under constant revisions and iterative development. Building ontologies is a community effort, and we need expertise from different areas:

        • Technical expertise
        • Domain expertise
        • User experiences

        The OBO foundry ontologies are open, meaning anyone can access them and contribute to them. The types of contributions may include reporting issues, identifying bugs, making requests for new terms or changes, and you can also contribute directly to the ontology itself- if you are familiar with ontology editing workflows, you can download our ontologies and make edits on a branch and make a pull request in GitHub.

        "},{"location":"pathways/ontology-contributor/#providing-feedback-to-an-ontology","title":"Providing Feedback to an Ontology","text":"
        • The preferred mechanism for feedback for almost all OBO Foundry ontologies is via the ontology's GitHub issue tracker.
        • To find the correct GitHub issue tracker, go to the OBO Foundry website website and search for a particular ontology.
        • For example, click on go (Gene Ontology), and you should see a link to the tracker (https://github.com/geneontology/go-ontology/issues/)
        • The OBO Metadata also has a link to a contact but this is generally for OBO administrative purposes and should not be used for general questions, new term requests, or general feedback
        • Some ontologies may have other means of engaging their use community, and these should all be listed in a standard way on the OBO page. This includes mailing lists, slack groups, and Twitter or other social media accounts.
        "},{"location":"pathways/ontology-contributor/#getting-started-with-github","title":"Getting Started with GitHub","text":"
        1. Open a free account at https://github.com/.
        2. GitHub Fundamentals for OBO Engineers. Provides an introduction to GitHub including:
        3. how to get started
        4. an overview of the organization of GitHub
        5. an introduction to Markdown (the simple markup language used in GitHub to format text, like bold or italics)
        6. types of content that can be added to GitHub (e.g., you can attach a screenshot to an issue)
        7. Intro to managing and tracking issues in GitHub. This tutorial walks you through creating issues in GitHub.
        "},{"location":"pathways/ontology-contributor/#using-ontologies-and-ontology-terms","title":"Using Ontologies and Ontology Terms","text":"
        • Why ontologies are useful
        • Finding good ontologies
        • Ontology repositories
        • Assessing ontologies for use
        "},{"location":"pathways/ontology-contributor/#contributing-to-ontologies","title":"Contributing to Ontologies","text":"

        Community feedback is welcome for all open OBO Foundry ontologies. Feedback is often provided in the form of:

        • New terms requests
        • Add/revise synonyms, definitions
        • Reclassify a term
        • Report a bug
        • etc.
        "},{"location":"pathways/ontology-contributor/#ways-to-provide-feedback","title":"Ways to provide feedback","text":"
        • Create a new issue on a GitHub issue tracker
        • See the lesson on Identifying missing terms
        • See the lesson on Making term requests to existing ontologies
        • Join the discussion: Comment on tickets or the discussion board
        • Join the conversation: Attend ontology calls (many ontology developer groups have recurring calls open to the community. Contact the ontology owner to request information about calls.)
        • Edit the ontology file: make changes on a branch and do a pull request (more advanced)
        • See the lesson on Contributing to OBO ontologies
        "},{"location":"pathways/ontology-contributor/#relevant-presentations","title":"Relevant Presentations","text":"
        • Using ontologies to standardize rare disease data collection - By Nicole Vasilevsky, Presentation on June 15, 2022
        • RDCA-DAP: Searchability and Standardized Ontologies- By Ramona Walls, Recording from October 13, 2020
        "},{"location":"pathways/ontology-curator-go-style/","title":"Ontology Curator Pathway: GO-Style","text":"

        Note: There is no one single accepted way of doing ontology curation in the OBO-World, see here. This guide reflects the practice of the GO-style ontology curation, as it is used by GO, Uberon, CL, PATO and others.

        Note: Work on this document is still in progress, items that are not linked are currently being worked on.

        "},{"location":"pathways/ontology-curator-go-style/#getting-set-up","title":"Getting Set-up","text":"
        1. Download and install GitHub Desktop
        2. Download and install Protege. See instructions on how to set up Protege here
        3. Install ELK reasoner in protege
        4. Setting up your ID range
        5. Setting up ODK
        "},{"location":"pathways/ontology-curator-go-style/#learning","title":"Learning","text":""},{"location":"pathways/ontology-curator-go-style/#learning-about-ontologies","title":"Learning about Ontologies","text":"
        1. Fundamentals of Ontologies
        "},{"location":"pathways/ontology-curator-go-style/#learning-git-and-github","title":"Learning Git and GitHub","text":"
        1. Fundamentals of GitHub
        2. Github issues
        3. Cloning a Repo
        4. Creating pull requests
        5. Introduction into the command line
        "},{"location":"pathways/ontology-curator-go-style/#learning-protege","title":"Learning protege","text":"
        1. Protege interface
        2. Browse and Search
        3. DL query
        4. Editing Terms
        5. Creating New Terms
        6. Adding disjointness
        7. Logical axiomatization of classes & use of reasoning
        8. Ontology Relations
        9. Updating Imports with ODK
        10. OBO-style term annotation
        11. Obsoleting terms
        12. Merging terms
        "},{"location":"pathways/ontology-curator-go-style/#general-mindset","title":"General mindset","text":"
        1. How to be a team open science player
        "},{"location":"pathways/ontology-curator-go-style/#ontology-curator-how-to-collection","title":"Ontology Curator How To Collection","text":"

        This section is a non-ordered collection of how to documents that a curator might needs

        • Adding taxon restrictions
        • Changing files in pull requests
        • Cloning a repo
        • Creating new terms
        • Daily Workflow
        • Fixing Conflicts
        • Creating a github fork
        • Creating a github pull request
        • Setting up your ID range
        • Setting up ELK reasoner in protege
        • Obsoleting terms
        • Merging terms
        • Creating slims
        • Setting up ODK
        • Switching ontologies
        • Updating Imports with ODK
        "},{"location":"pathways/ontology-curator-obi-style/","title":"Ontology Curator Pathway: OBI-style","text":"

        Note: There is no one single accepted way of doing ontology curation in the OBO-World, see here. This guide reflects the practice of the OBI-style ontology curation, as it is used by OBI, IAO and others.

        "},{"location":"pathways/ontology-curator-obi-style/#getting-set-up","title":"Getting Set-up","text":""},{"location":"pathways/ontology-curator-obi-style/#learning","title":"Learning","text":""},{"location":"pathways/ontology-curator-obi-style/#learning-git-and-github","title":"Learning Git and GitHub","text":"
        1. Fundamentals of GitHub
        2. Github issues
        3. Cloning a Repo
        4. Creating pull requests
        "},{"location":"pathways/ontology-curator-obi-style/#learning-how-to-edit-ontologies","title":"Learning how to edit ontologies","text":""},{"location":"pathways/ontology-curator-obi-style/#ontology-curator-how-to-collection","title":"Ontology Curator How To Collection","text":""},{"location":"pathways/ontology-curator/","title":"Ontology Curator Pathway","text":"

        There is no one single accepted methodology for building ontologies in the OBO-World. We can distinguish at least two major schools of ontology curation

        • GO-style ontology curation
        • OBI-style ontology curation

        Note that there are many more variants, probably as many as there are ontologies. Both schools differ only in how they curate their ontologies - the final product is always an ontology in accordance with OBO Principles. These are some of the main differences of the two schools:

        GO-style OBI-style Edit format Historically developed in OBO format Developed in an OWL format Annotation properties Many annotation properties from the oboInOwl namespace, for example for synonyms and provenance. Many annotation properties from the IAO namespace. Upper Ontology Hesitant alignment with BFO, often uncommitted. Strong alignment with BFO. Logic Tend do be simple existential restrictions (some), ontologies in OWL 2 EL. No class expression nesting. Simple logical definition patterns geared towards automating classification Tend to use a lot more expressive logic, including only and not. Class expression nesting can be more complex. Examples GO, Uberon, Mondo, HPO, PATO, CL, BSPO OBI, IAO, OGMS

        There are a lot of processes happening that are bringing these schools together, sharing best practices (GitHub, documentation) and reconciling metadata conventions and annotation properties in the OBO Metadata Ontology (OMO). The Upper Level alignment is now done by members of both schools through the Core Ontology for Biology and Biomedicine (COB). While these processes are ongoing, we decided to curate separate pathways for both schools:

        • Pathway for GO-style ontology curation
        • Pathway for OBI-style ontology curation
        "},{"location":"pathways/ontology-engineer/","title":"Ontology Engineer/Developer Pathway","text":""},{"location":"pathways/ontology-engineer/#getting-set-up","title":"Getting Set-up","text":"
        1. Download and install GitHub Desktop
        2. Download and install Protege
        3. Install ELK reasoner in protege
        4. Setting up your ID range
        5. Setting up ODK
        "},{"location":"pathways/ontology-engineer/#learning","title":"Learning","text":"

        As a ontology engineer, it would be useful for you to know how curators work, as such, it would be useful to be familiar with all the concepts in the ontology curator pathways document. This pathways will however be focusing on the engineering side of things.

        "},{"location":"pathways/ontology-engineer/#very-basics","title":"Very basics","text":"
        1. Basic introduction to CLI 1
        2. Basic introduction to CLI 2
        "},{"location":"pathways/ontology-engineer/#learning-git-and-github","title":"Learning Git and GitHub","text":"
        1. Fundamentals of GitHub
        2. Github issues
        3. Cloning a Repo
        4. Creating pull requests
        "},{"location":"pathways/ontology-engineer/#learning-ontology-engineering","title":"Learning ontology engineering","text":"
        1. Setting up a ODK repository
        2. Developing an obo ontology
        3. Understanding product variants
        4. Dealing with large ontologies
        5. ROBOT tutorial pt. 1
        6. ROBOT tutorial pt. 2
        7. Templates
        8. Getting started with DOSDP templates
        9. DOSDP Templates Basic Tutorial
        10. Introduction to Managing DOSDP Templates in ODK
        11. Basics of SPARQL
        12. Setting up slims
        "},{"location":"pathways/ontology-engineer/#ontology-engineer-how-to-collection","title":"Ontology Engineer How To Collection","text":"

        This section is a non-ordered collection of how to documents that an engineer might need (this includes everything from the curators list as they may be pertinent knowledge to an engineer).

        • Adding taxon restrictions
        • Changing files in pull requests
        • Cloning a repo
        • Creating new terms
        • Daily Curator Workflow
        • Fixing Conflicts
        • Creating a github fork
        • Creating a github pull request
        • Setting up your ID range
        • Setting up ELK reasoner in protege
        • Obsoleting terms
        • Merging terms
        • Creating slims
        • Setting up ODK
        • Switching ontologies
        • Dealing with large ontologies
        "},{"location":"pathways/ontology-user/","title":"Ontology User Pathway","text":"

        Description: This pathway includes resources on ontology use, such as how to use ontologies when annotating data, how to use ontologies for search and data analysis, and specific use cases.

        Preparation: A basic understanding of what ontologies are is helpful. Some introductory resources are below:

        • OBO Academy Introduction to Ontologies
        • Introduction to ontology semantics and reasoning by Henriette Harmse
        "},{"location":"pathways/ontology-user/#general-ontology-use-guidelines","title":"General Ontology Use Guidelines","text":"
        • OBO Academy Using Ontologies and Ontology Terms
        • Elixir's Selecting terminologies and ontologies
        • Elixir's Ontology mapping with Ontology Xref Service (OxO)
        • Biological ontology use guidelines by Henriette Harmse
        "},{"location":"pathways/ontology-user/#gene-ontology-curation","title":"Gene Ontology curation","text":"

        Curating and browsing with Gene Ontology (GO)

        "},{"location":"pathways/ontology-user/#disease-ontology-specific-applications","title":"Disease Ontology Specific Applications","text":""},{"location":"pathways/ontology-user/#clinical-applications-of-the-human-disease-ontology-do","title":"Clinical Applications of the Human Disease Ontology (DO)","text":"

        A video library is available that covers: - Clinical applications of the Human Disease Ontology - How is the Human Disease Ontology FAIR? - Searching the Human Disease Ontology website - What is an ontology? - Mining disease information via imports: Connecting disease-related information - How the Human Disease Ontology is used for drug studies - Cancer resources and tools utilizing the Human Disease Ontology - Advanced searches of the DO website using relation axioms

        "},{"location":"pathways/ontology-user/#using-the-mondo-disease-ontology-for-disease-data-curation","title":"Using the Mondo Disease Ontology for Disease Data Curation","text":"
        • Slides on Using the Mondo Disease Ontology for Disease Data Curation
        • User guide for the Mondo Disease ontology
        "},{"location":"pathways/ontology-user/#using-ontologies-to-standardize-rare-disease-data-collection","title":"Using ontologies to standardize rare disease data collection","text":"

        Video of webinar: Using ontologies to standardize rare disease data collection

        "},{"location":"pathways/ontology-user/#project-specific-applications","title":"Project Specific Applications","text":"

        Ontology application and use at the ENCODE DCC

        "},{"location":"pathways/ontology-user/#contributors","title":"Contributors","text":"
        • Nicole Vasilevsky
        • Sue Bello
        • Sierra Moxon
        • Shawn Tan
        • Danielle Welter
        • N\u00faria Queralt Rosinach
        "},{"location":"pathways/pathways/","title":"Introduction to pathways","text":"

        Pathways are materials from OBOOK in a linear fashion for the purpose of helping people in different roles finding the materials relevant to their work more easily. To browse through the pathways, look under the \"Pathways\" menu item.

        "},{"location":"reference/chatgpt-prompts-for-ontology-development/","title":"Leveraging ChatGPT for ontology curation","text":""},{"location":"reference/chatgpt-prompts-for-ontology-development/#effective-chatgpt-prompts-for-ontology-development","title":"Effective ChatGPT prompts for ontology development","text":"

        For a basic tutorial on how to leverage ChatGPT for ontology development see here.

        "},{"location":"reference/chatgpt-prompts-for-ontology-development/#act-as-a-mapping-api","title":"Act as a mapping API","text":"

        I want you to act as a REST API, which takes natural language searches a an input and returns an SSSOM mapping in valid JSON in a codeblock, no comments, no additional text. An example of a valid mapping is

        { \"subject_id\": \"a:something\", \"predicate_id\": \"rdfs:subClassOf\", \"object_id\": \"b:something\", \"mapping_justification\": \"semapv:LexicalMatching\", \"subject_label\": \"XXXXX\", \"subject_category\": \"biolink:AnatomicalEntity\", \"object_label\": \"xxxxxx\", \"object_category\": \"biolink:AnatomicalEntity\", \"subject_source\": \"a:example\", \"object_source\": \"b:example\", \"mapping_tool\": \"rdf_matcher\", \"confidence\": 0.8, \"subject_match_field\": [ \"rdfs:label\" ], \"object_match_field\": [ \"rdfs:label\" ], \"match_string\": [ \"xxxxx\" ], \"comment\": \"mock data\" }

        As a first task, I want you to return a suitable mapping for MONDO:0004975 in ICD 10 CM.

        "},{"location":"reference/formatting-license/","title":"Formatting your ontology annotations correctly","text":"

        The new OBO Foundry guidelines encourage the annotation of ontologies with an appropriately formatted description, title and license. Here are some examples that can be used as a guide to implement those in your ontology.

        Note: these examples purposefully do not include version information, this should not be manually added, instead it should be added by ROBOT as part of a pipeline. An ontology set up with the ODK will take care of all of this for you.

        "},{"location":"reference/formatting-license/#rdfxml-example","title":"RDF/XML Example:","text":"
        <?xml version=\"1.0\"?>\n<rdf:RDF xmlns=\"http://purl.obolibrary.org/obo/license.owl#\"\n     xml:base=\"http://purl.obolibrary.org/obo/license.owl\"\n     xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n     xmlns:owl=\"http://www.w3.org/2002/07/owl#\"\n     xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n     xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"\n     xmlns:xsd=\"http://www.w3.org/2001/XMLSchema#\"\n     xmlns:rdfs=\"http://www.w3.org/2000/01/rdf-schema#\"\n     xmlns:terms=\"http://purl.org/dc/terms/\">\n    <owl:Ontology rdf:about=\"http://purl.obolibrary.org/obo/license.owl\">\n        <dc:description rdf:datatype=\"http://www.w3.org/2001/XMLSchema#string\">An integrated and fictional ontology for the description of abnormal tomato phenotypes.</dc:description>\n        <dc:title rdf:datatype=\"http://www.w3.org/2001/XMLSchema#string\">Tomato Phenotype Ontology (TPO)</dc:title>\n        <terms:license rdf:resource=\"https://creativecommons.org/licenses/by/3.0/\"/>\n    </owl:Ontology>\n    <owl:AnnotationProperty rdf:about=\"http://purl.org/dc/elements/1.1/description\"/>\n    <owl:AnnotationProperty rdf:about=\"http://purl.org/dc/elements/1.1/title\"/>\n    <owl:AnnotationProperty rdf:about=\"http://purl.org/dc/terms/license\"/>\n</rdf:RDF>\n
        "},{"location":"reference/formatting-license/#functional-syntax-example","title":"Functional Syntax Example:","text":"
        Prefix(:=<http://purl.obolibrary.org/obo/license.owl#>)\nPrefix(owl:=<http://www.w3.org/2002/07/owl#>)\nPrefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>)\nPrefix(xml:=<http://www.w3.org/XML/1998/namespace>)\nPrefix(xsd:=<http://www.w3.org/2001/XMLSchema#>)\nPrefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>)\n\n\nOntology(<http://purl.obolibrary.org/obo/license.owl>\nAnnotation(<http://purl.org/dc/elements/1.1/description> \"An integrated and fictional ontology for the description of abnormal tomato phenotypes.\"^^xsd:string)\nAnnotation(<http://purl.org/dc/elements/1.1/title> \"Tomato Phenotype Ontology (TPO)\"^^xsd:string)\nAnnotation(<http://purl.org/dc/terms/license> <https://creativecommons.org/licenses/by/3.0/>)\n\n)\n
        "},{"location":"reference/formatting-license/#owlxml-example","title":"OWL/XML Example:","text":"
        <?xml version=\"1.0\"?>\n<Ontology xmlns=\"http://www.w3.org/2002/07/owl#\"\n     xml:base=\"http://purl.obolibrary.org/obo/license.owl\"\n     xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n     xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"\n     xmlns:xsd=\"http://www.w3.org/2001/XMLSchema#\"\n     xmlns:rdfs=\"http://www.w3.org/2000/01/rdf-schema#\"\n     ontologyIRI=\"http://purl.obolibrary.org/obo/license.owl\">\n    <Prefix name=\"\" IRI=\"http://purl.obolibrary.org/obo/license.owl#\"/>\n    <Prefix name=\"owl\" IRI=\"http://www.w3.org/2002/07/owl#\"/>\n    <Prefix name=\"rdf\" IRI=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"/>\n    <Prefix name=\"xml\" IRI=\"http://www.w3.org/XML/1998/namespace\"/>\n    <Prefix name=\"xsd\" IRI=\"http://www.w3.org/2001/XMLSchema#\"/>\n    <Prefix name=\"rdfs\" IRI=\"http://www.w3.org/2000/01/rdf-schema#\"/>\n    <Annotation>\n        <AnnotationProperty IRI=\"http://purl.org/dc/elements/1.1/description\"/>\n        <Literal>An integrated and fictional ontology for the description of abnormal tomato phenotypes.</Literal>\n    </Annotation>\n    <Annotation>\n        <AnnotationProperty IRI=\"http://purl.org/dc/elements/1.1/title\"/>\n        <Literal>Tomato Phenotype Ontology (TPO)</Literal>\n    </Annotation>\n    <Annotation>\n        <AnnotationProperty abbreviatedIRI=\"terms:license\"/>\n        <IRI>https://creativecommons.org/licenses/by/3.0/</IRI>\n    </Annotation>\n    <Declaration>\n        <AnnotationProperty IRI=\"http://purl.org/dc/elements/1.1/title\"/>\n    </Declaration>\n    <Declaration>\n        <AnnotationProperty IRI=\"http://purl.org/dc/elements/1.1/description\"/>\n    </Declaration>\n    <Declaration>\n        <AnnotationProperty IRI=\"http://purl.org/dc/terms/license\"/>\n    </Declaration>\n</Ontology>\n
        "},{"location":"reference/formatting-license/#obo-example","title":"OBO Example:","text":"
        format-version: 1.2\nontology: license\nproperty_value: http://purl.org/dc/elements/1.1/description \"An integrated and fictional ontology for the description of abnormal tomato phenotypes.\" xsd:string\nproperty_value: http://purl.org/dc/elements/1.1/title \"Tomato Phenotype Ontology (TPO)\" xsd:string\nproperty_value: http://purl.org/dc/terms/license https://creativecommons.org/licenses/by/3.0/\n
        "},{"location":"reference/frequently-used-odk-commands/","title":"Frequently used ODK commands","text":""},{"location":"reference/frequently-used-odk-commands/#updates-the-makefile-to-the-latest-odk","title":"Updates the Makefile to the latest ODK","text":"
        sh run.sh make update_repo\n
        "},{"location":"reference/frequently-used-odk-commands/#recreates-and-deploys-the-automated-documentation","title":"Recreates and deploys the automated documentation","text":"
        sh run.sh make update_docs\n
        "},{"location":"reference/frequently-used-odk-commands/#preparing-a-new-release","title":"Preparing a new release","text":"
        sh run.sh make prepare_release\n
        "},{"location":"reference/frequently-used-odk-commands/#refreshing-a-single-import","title":"Refreshing a single import","text":"
        sh run.sh make refresh-%\n

        Example:

        sh run.sh make refresh-chebi\n
        "},{"location":"reference/frequently-used-odk-commands/#refresh-all-imports","title":"Refresh all imports","text":"
        sh run.sh make refresh-imports\n
        "},{"location":"reference/frequently-used-odk-commands/#refresh-all-imports-excluding-large-ones","title":"Refresh all imports excluding large ones","text":"
        sh run.sh make refresh-imports-excluding-large\n
        "},{"location":"reference/frequently-used-odk-commands/#run-all-the-qc-checks","title":"Run all the QC checks","text":"
        sh run.sh make test\n
        "},{"location":"reference/frequently-used-odk-commands/#print-the-version-of-the-currently-installed-odk","title":"Print the version of the currently installed ODK","text":"
        sh run.sh make odkversion\n
        "},{"location":"reference/frequently-used-odk-commands/#checks-the-owl2-dl-profile-validity","title":"Checks the OWL2 DL profile validity","text":"

        (of a specific file)

        sh run.sh make validate_profile_%\n

        Example:

        sh run.sh make validate_profile_hp-edit.owl\n
        "},{"location":"reference/gh-actions-errors/","title":"Common Errors in GitHub actions","text":""},{"location":"reference/gh-actions-errors/#killed-running-out-of-memory","title":"Killed: Running out of memory","text":"

        Running the same workflow several times simultaneously (e.g. if two PRs are submitted in a short time, and the second PR triggers the CI workflow while the CI workflow triggered by the first PR is still running) could lead to lack-of-memory situations because all concurrent workflows have to share a single memory limit.

        (Note: it isn't really clear with documentation of GitHub Actions on whether concurrent workflow runs share a single memory limit.)

        What could possibly be done is to forbid a given workflow from ever running as long as there is already a run of the same workflow ongoing, using the concurrency property.

        "},{"location":"reference/git-faq/","title":"Git FAQs","text":"

        This page aims to consolidate some tips and tricks that ontology editors have found useful in using git. It is not meant to be a tutorial of git, but rather as a page with tips that could help in certain specialised situations.

        "},{"location":"reference/git-faq/#reverting-commits","title":"Reverting Commits","text":""},{"location":"reference/git-faq/#reverting-particular-files-back-to-master-version","title":"Reverting particular files back to master version","text":"
        1. If you want to revert only certain files (eg import files), you can do it using Terminal. For this example, we will use uberon_import.owl as the file we want reverted back to the version in master branch, however, this can be done on any file.
        2. Assuming your directory is set to src/ontology, in terminal use: git checkout master -- imports/uberon_import.owl.
        3. Commit the change to the branch as normal.
        "},{"location":"reference/git-faq/#reverting-particular-files-back-to-a-previous-version","title":"Reverting particular files back to a previous version","text":"
        1. If you want to revert a file back to a previous version instead of master, you can use the commit ID.
        2. To do this, in Terminal use: git log to list out the previous commits and copy the commit code of the commit you would like to revert to (example: see yellow string of text in screenshot below).
        1. Press q on your keyboard to quit git log (or down arrow to scroll down to continue to find the commit ID you want to revert if it is further down).
        2. In terminal use: git checkout ff18c9482035062bbbbb27aaeb50e658298fb635 -- imports/uberon_import.owl using whichever commit code you want instead of the commit code in this example.
        3. commit the change to the branch as normal.
        "},{"location":"reference/github-desktop/","title":"GitHub Desktop","text":"

        For most of our training activities, we recommend using GitHub Desktop. It provides a very convenient way to push and pull changes, and inspect the \"diff\". It is, however, not mandatory if you are already familiar with other git workflows (such as command line, or Sourcetree).

        "},{"location":"reference/github-intro/","title":"Git, GitHub and GitHub Desktop (version control)","text":"

        A repository can consist of many files with several users simultaneously editing those files at any moment in time. In order to ensure conflicting edits between the users are not made and a history of the edits are tracked, software classified as a \"distributed version control system\" is used.

        All OBO repositories are managed by the Git version control system. This allows users to make their own local branch of the repository, i.e., making a mirror copy of the repository directories and files on their own computers, and make edits as desired. The edits can then be reviewed by other users before the changes are incorporated in the 'main' or 'master' branch of the repository. This process can be executed by running Git line commands and/or by using a web interface (Github.com) along with a desktop application (GitHub Desktop).

        Documentation, including an introduction to GitHub, can be found here: Hello World.

        "},{"location":"reference/glossary-of-terms/","title":"Glossary of Terms","text":"

        This document is a list of terms that you might encounter in the ontology world. It is not an exhaustive list and will continue to evolve. Please create a ticket if there is a term you find missing or a term you encounter that you do not understand, and we will do our best to add them. This list is not arranged in any particular order. Please use the search function to find terms.

        Acknowledgement: Many terms are taken directly from OAK documentation with the permission of Chris Mungall. Many descriptions are also taken from https://www.w3.org/TR/owl2-syntax/.

        "},{"location":"reference/glossary-of-terms/#annotation","title":"Annotation","text":"

        This term is frequently ambiguous. It can refer to Text Annotation, OWL Annotation, or Association.

        "},{"location":"reference/glossary-of-terms/#annotationproperty","title":"AnnotationProperty","text":"

        Annotation properties are OWL axioms that are used to place annotations on individuals, class names, property names, and ontology names. They do not affect the logical definition unless they are used as a \"shortcut\" that a pipeline expands to a logical axiom.

        "},{"location":"reference/glossary-of-terms/#anonymous-ancestor","title":"Anonymous Ancestor","text":"

        An accumulation of all of the superclasses from ancestors of a class.

        "},{"location":"reference/glossary-of-terms/#anonymous-individual","title":"Anonymous Individual","text":"

        If an individual is not expected to be used outside an ontology, one can use an anonymous individual, which is identified by a local node ID rather than a global IRI. Anonymous individuals are analogous to blank nodes in RDF.

        "},{"location":"reference/glossary-of-terms/#api","title":"API","text":"

        Application Programming Interface. An intermediary that allows two or more computer programs to communicate with each other. In ontologies, this usually means an Endpoint in which the ontology can be programmatically accessed.

        "},{"location":"reference/glossary-of-terms/#application-ontology","title":"Application Ontology","text":"

        Usually refers to a Project Ontology.

        "},{"location":"reference/glossary-of-terms/#axiom","title":"Axiom","text":"

        Axioms are statements that are asserted to be true in the domain being described. For example, using a subclass axiom, one can state that the class a:Student is a subclass of the class a:Person. (Note: in OWL, there are also annotation axioms which does not apply any logical descriptions)

        "},{"location":"reference/glossary-of-terms/#bioportal","title":"Bioportal","text":"

        An Ontology Repository that is a comprehensive collection of multiple biologically relevant ontologies.

        "},{"location":"reference/glossary-of-terms/#controlled-vocabulary","title":"Controlled Vocabulary","text":"

        Standardized and organized arrangements of words and phrases that provide a consistent way to describe data. A controlled vocabulary may or may not include definitions. Ontologies can be seen as a controlled vocabulary expressed in an ontological language which includes relations.

        "},{"location":"reference/glossary-of-terms/#class","title":"Class","text":"

        An OWL entity that formally represents something that can be instantiated. For example, the class \"heart\".

        "},{"location":"reference/glossary-of-terms/#curie","title":"CURIE","text":"

        A CURIE is a compact URI. For example, CL:0000001 expands to http:purl.obolibrary.org/obo/CL_0000001. For more information, please see https://www.w3.org/TR/curie/.

        "},{"location":"reference/glossary-of-terms/#data-model","title":"Data Model","text":"

        An abstract model that organizes elements of data and standardizes how they relate to one another.

        "},{"location":"reference/glossary-of-terms/#dataproperty","title":"dataProperty","text":"

        dataProperty relate OWL entities to literal data (e.g., strings, numbers, datetimes, etc.) as opposed to ObjectProperty which relate individuals to other OWL entities. Unlike AnnotationProperty, dataProperty axioms fall on the logical side of OWL and are hence useable by reasoners.

        "},{"location":"reference/glossary-of-terms/#datatype","title":"Datatype","text":"

        Datatypes are OWL entities that refer to sets of data values. Thus, datatypes are analogous to classes, the main difference being that the former contain data values such as strings and numbers, rather than individuals. Datatypes are a kind of data range, which allows them to be used in restrictions. For example, the datatype xsd:integer denotes the set of all integers, and can be used with the range of a dataProperty to state that the range of said dataProperty must be an integer.

        "},{"location":"reference/glossary-of-terms/#description-logic","title":"Description Logic","text":"

        Description Logics (DL) are a family of formal knowledge representation languages. It provides a logical formalism for ontologies and is what OWL is based on. DL querying can be used to query ontologies in Protege.

        "},{"location":"reference/glossary-of-terms/#domain","title":"Domain","text":"

        Domain, in reference to a dataProperty or ObjectProperty, refers to the restriction on the subject of a triple - if a given property has a given class in its domain this means that any individual that has a value for the property, will be inferred to be an instance of that domain class. For example, if John hasParent Mary and Person is listed in the domain of hasParent, then John will be inferred to be an instance of Person.

        "},{"location":"reference/glossary-of-terms/#dosdp","title":"DOSDP","text":"

        Dead Simple Ontology Design Patterns. A templating system for ontologies with well-documented patterns and templates.

        "},{"location":"reference/glossary-of-terms/#edge","title":"Edge","text":"

        A typed, directed link between Nodes in a knowledge graph. Translations of OWL into Knowledge graphs vary, but typically edges are generated for simple triples, relating two individuals or two classes via an AnnotationProperty or ObjectProperty and simple existential restrictions (A SubClassOf R some B), with the edge type corresponding to the property.

        "},{"location":"reference/glossary-of-terms/#endpoint","title":"Endpoint","text":"

        Where an API interfaces with the ontology.

        "},{"location":"reference/glossary-of-terms/#existential-restriction","title":"Existential Restriction","text":"

        A relationship between two classes, A R (some) B, that states that all individuals of class A stand in relation R to at least one individual of class B. For example, neuron has_part some dendrite states that all instances of neuron have at least one individual of type dentrite as a part. In Manchester syntax, the keyword 'some' is used to denote existential restrictions and is interpreted as \"there exists\", \"there is at least one\", or \"some\". See documentation on classifications for more details.

        "},{"location":"reference/glossary-of-terms/#functional-syntax","title":"Functional Syntax","text":"

        An official syntax of OWL (others are RDF-XML and OWL-XML) in which each line represents and axiom (although things get a little more complex with axiom annotations, and axioms use prefix syntax (order = relation (subject, object)). This is in contrast to in-fix syntax (e.g. Manchester syntax) (order = subject relation object). Functional syntax is the preferred syntax for editor files maintained on GitHub, because it can be safely diff'd and (somewhat) human readable.

        "},{"location":"reference/glossary-of-terms/#graph","title":"Graph","text":"

        Formally a graph is a data structure consisting of Nodes and Edges. There are different forms of graphs, but for our purposes an ontology graph has all Terms as nodes, and relationships connecting terms (is-a, part-of) as edges. Note the concept of an ontology graph and an RDF graph do not necessarily fully align - RDF graphs of OWL ontologies employ numerous blank nodes that obscure the ontology structure.

        "},{"location":"reference/glossary-of-terms/#individual","title":"Individual","text":"

        An OWL entity that represents an instance of a class. For example, the instance \"John\" or \"John's heart\". Note that instances are not commonly represented in ontologies. For instance, \"John\" (an instance of person) or \"John's heart\" (an instance of heart).

        "},{"location":"reference/glossary-of-terms/#information-content","title":"Information Content","text":"

        A measure of how informative an ontology concept is; broader concepts are less informative as they encompass many things, whereas more specific concepts are more unique. This is usually measured as -log2(Pr(term)). The method of calculating the probability varies, depending on which predicates are taken into account (for many ontologies, it makes sense to use part-of as well as is-a), and whether the probability is the probability of observing a descendant term, or of an entity annotated using that term.

        "},{"location":"reference/glossary-of-terms/#interface","title":"Interface","text":"

        A programmatic abstraction that allows us to focus on what something should do rather than how it is done.

        "},{"location":"reference/glossary-of-terms/#jaccard-similarity","title":"Jaccard Similarity","text":"

        A measures of the similarity between two sets of data to see which members are shared and distinct.

        "},{"location":"reference/glossary-of-terms/#kgcl","title":"KGCL","text":"

        Knowledge Graph Change Language (KGCL) is a data model for communicating desired changes to an ontology. It can also be used to communicate differences between two ontologies. See KGCL docs.

        "},{"location":"reference/glossary-of-terms/#knowledge-graph","title":"Knowledge Graph","text":"

        A network of real-world entities (i.e., objects, events, situations, and concepts) that illustrates the relationships between them. Knowledge graphs (in relation to ontologies) are thought of as real data built using an ontology as a framework.

        "},{"location":"reference/glossary-of-terms/#label","title":"Label","text":"

        Usually refers to a human-readable text string corresponding to the rdfs:label predicate. Labels are typically unique per ontology. In OBO Format and in the bio-ontology literature, labels are sometimes called Names. Sometimes in the machine learning literature, and in databases such as Neo4J, \"label\" actually refers to a Category.

        "},{"location":"reference/glossary-of-terms/#lutra","title":"Lutra","text":"

        Lutra is the open source reference implementation of the OTTR templating language.

        "},{"location":"reference/glossary-of-terms/#mapping","title":"Mapping","text":"

        A means of linking two resources (e.g. two ontologies, or an ontology and a database) together. Also see SSSOM

        "},{"location":"reference/glossary-of-terms/#materialised","title":"Materialised","text":"

        The process of making inferred axioms explicit by asserting them.

        "},{"location":"reference/glossary-of-terms/#name","title":"Name","text":"

        Usually synonymous with Label, but in the formal logic and OWL community, \"Name\" sometimes denotes an Identifier

        "},{"location":"reference/glossary-of-terms/#named-individual","title":"Named Individual","text":"

        An Individual that is given an explicit name that can be used in any ontology to refer to the same object; named individuals get IRIs whereas anonymous individuals do not.

        "},{"location":"reference/glossary-of-terms/#nodes","title":"Nodes","text":"

        Terms represented in a graph

        "},{"location":"reference/glossary-of-terms/#object","title":"Object","text":"

        The \"right\" side of a Triple.

        "},{"location":"reference/glossary-of-terms/#objectproperty","title":"ObjectProperty","text":"

        An owl entity that is used to related 2 individuals ('my left foot' part_of 'my left leg') or two classes ('foot' part_of some leg) or an individual and a class ('the neuron depicted in this image' (is) has_soma_location some 'primary motor cortex. More rarely it is used to define a class in terms of some individual (the class 'relatives of Shawn' related_to Value Shawn.

        "},{"location":"reference/glossary-of-terms/#obo","title":"OBO","text":"

        Open Biological and Biomedical Ontology. This could refer to the OBO Foundry (e.g. OBO ontologies = ontologies that follow the standards of the OBO Foundry) or OBO Format

        "},{"location":"reference/glossary-of-terms/#obo-format","title":"OBO Format","text":"

        A serialization format for ontologies designed for easy viewing, direct editing, and readable diffs. It is popular in bioinformatics, but not widely used or known outside the genomics sphere. OBO is mapped to OWL, but only expresses a subset, and provides some OWL abstractions in a more easy to understand fashion.

        "},{"location":"reference/glossary-of-terms/#ols","title":"OLS","text":"

        Ontology Lookup Service. An Ontology Repository that is a curated collection of multiple biologically relevant ontologies, many from OBO. OLS can be accessed with this link

        "},{"location":"reference/glossary-of-terms/#ontology","title":"Ontology","text":"

        A flexible concept loosely encompassing any collection of OWL entities and statements or relationships connecting them.

        "},{"location":"reference/glossary-of-terms/#odk","title":"ODK","text":"

        Ontology Development Kit. A toolkit and docker image for managing ontologies.

        "},{"location":"reference/glossary-of-terms/#ontology-library","title":"Ontology Library","text":"

        The systems or platform where various types of ontologies are stored from different sources and provide the ability to data providers and application developers to share and reuse the ontologies.

        "},{"location":"reference/glossary-of-terms/#ontology-repository","title":"Ontology Repository","text":"

        A curated collection of ontologies.

        "},{"location":"reference/glossary-of-terms/#ottr","title":"OTTR","text":"

        Reasonable Ontology Templates. A system for composable ontology templates and documentation.

        "},{"location":"reference/glossary-of-terms/#owl","title":"OWL","text":"

        Web Ontology Language. An ontology language that uses constructs from Description Logic. OWL is not itself an ontology format, it can be serialized through different formats such as Functional Syntax, and it can be mapped to :RDF and serialized via an RDF format.

        "},{"location":"reference/glossary-of-terms/#owl-annotation","title":"OWL Annotation","text":"

        In the context of OWL, the term Annotation means a piece of metadata that does not have a strict logical interpretation. Annotations can be on entities, for example, Label annotations, or annotations can be on Axioms.

        "},{"location":"reference/glossary-of-terms/#owl-api","title":"OWL API","text":"

        A java-based API to interact with OWL ontologies. Full documentation can be found at http://owlcs.github.io/owlapi/apidocs_5/index.html

        "},{"location":"reference/glossary-of-terms/#owl-entity","title":"OWL Entity","text":"

        OWL Entities, such as classes, properties, and individuals, are identified by IRIs. They form the primitive terms of an ontology and constitute the basic elements of an ontology. For example, a class a:Person can be used to represent the set of all people. Similarly, the object property a:parentOf can be used to represent the parent-child relationship. Finally, the individual a:Peter can be used to represent a particular person called \"Peter\". The following is a complete list of types of OWL Entities:

        • Class
        • Individual
        • ObjectProperty
        • AnnotationProperty
        • dataProperty
        • Datatype
        "},{"location":"reference/glossary-of-terms/#predicate","title":"Predicate","text":"

        An OWL entity that represents the type of a Relationship. Typically corresponds to an ObjectProperty in OWL, but this is not always true; in particular, the is-a relationship type is a builtin construct SubClassOf in OWL Examples:

        • is-a
        • part-of (BFO:0000050)
        "},{"location":"reference/glossary-of-terms/#project-ontology","title":"Project Ontology","text":"

        An ontology that is specific to a project and does not necessarily have interoperability with other ontologies in mind.

        "},{"location":"reference/glossary-of-terms/#pronto","title":"Pronto","text":"

        An Ontology Library for parsing obo and owl files.

        "},{"location":"reference/glossary-of-terms/#property","title":"Property","text":"

        An OWL entity that represents an attribute or a characteristic of an element. In OWL, properties are divided into disjoint categories:

        • ObjectProperty
        • AnnotationProperty
        • dataProperty
        "},{"location":"reference/glossary-of-terms/#protege","title":"Protege","text":"

        A typical ontology development tool used by ontology developers in the OBO-sphere. Full documentation can be found at https://protege.stanford.edu/.

        "},{"location":"reference/glossary-of-terms/#range","title":"Range","text":"

        Range, in reference to a dataProperty or ObjectProperty, refers to the restriction on the object of a triple - if a given property has a given class in its domain this means that any individual that has a value for the property (i.e. is the subject of a relation along the property), will be inferred to be an instance of that domain class. For example, if John hasParent Mary and Person is listed in the domain of hasParent, then John will be inferred to be an instance of Person.

        "},{"location":"reference/glossary-of-terms/#rdf","title":"RDF","text":"

        A datamodel consisting of simple Subject predicate Object Triples organized into an RDF Graph.

        "},{"location":"reference/glossary-of-terms/#rdflib","title":"rdflib","text":"

        A python library to interact with RDF data. Full documentation can be found at https://rdflib.readthedocs.io/en/stable/.

        "},{"location":"reference/glossary-of-terms/#reasoner","title":"Reasoner","text":"

        An ontology tool that will perform inference over an ontology to yield new axioms (e.g. new Edges) or to determine if an ontology is logically coherent.

        "},{"location":"reference/glossary-of-terms/#relationship","title":"Relationship","text":"

        A Relationship is a type connection between two OWL entities. The first element is called the subject, and the second one the Object, with the type of connection being the Relationship Type. Sometimes Relationships are equated with Triples in RDF but this can be confusing, because some relationships map to multiple triples when following the OWL RDF serialization. An example is the relationship \"finger part-of hand\", which in OWL is represented using a Existential Restriction that maps to 4 triples.

        "},{"location":"reference/glossary-of-terms/#relationship-type","title":"Relationship Type","text":"

        See predicate

        "},{"location":"reference/glossary-of-terms/#robot","title":"ROBOT","text":"

        A toolkit for transforming and interacting with ontologies. Full documentation can be found at http://robot.obolibrary.org/

        "},{"location":"reference/glossary-of-terms/#semantic-similarity","title":"Semantic Similarity","text":"

        A means of measuring similarity between either pairs of ontology concepts, or between entities annotated using ontology concepts. There is a wide variety of different methods for calculating semantic similarity, for example Jaccard Similarity and Information Content based measures.

        "},{"location":"reference/glossary-of-terms/#semantic-sql","title":"Semantic SQL","text":"

        Semantic SQL is a proposed standardized schema for representing any RDF/OWL ontology, plus a set of tools for building a database conforming to this schema from RDF/OWL files. See Semantic-SQL

        "},{"location":"reference/glossary-of-terms/#sparql","title":"SPARQL","text":"

        The standard query language and protocol for Linked Open Data on the web or for RDF triplestores - used to query ontologies.

        "},{"location":"reference/glossary-of-terms/#sssom","title":"SSSOM","text":"

        Simple Standard for Sharing Ontological Mappings (https://github.com/mapping-commons/sssom).

        "},{"location":"reference/glossary-of-terms/#subject","title":"Subject","text":"

        The \"left\" side of a Triple.

        "},{"location":"reference/glossary-of-terms/#subset","title":"Subset","text":"

        A named collection of elements, typically grouped for some purpose. In the ODK/OBO world, there is a standard annotation property and pattern for this, for more information, see the subset documentation.

        "},{"location":"reference/glossary-of-terms/#term","title":"Term","text":"

        Usually used to mean Class and Individuals, however sometimes used to refer to wider OWL entities.

        "},{"location":"reference/glossary-of-terms/#text-annotation","title":"Text Annotation","text":"

        The process of annotating spans of texts within a text document with references to ontology terms, or the result of this process. This is frequently done automatically. The Bioportal implementation provides text annotation services.

        "},{"location":"reference/glossary-of-terms/#triple","title":"Triple","text":"

        A set of three entities that codifies a statement about semantic data in the form of Subject-predicate-Object expressions (e.g., \"Bob is 35\", or \"Bob knows John\"). Also see Relationship.

        "},{"location":"reference/glossary-of-terms/#triplestore","title":"Triplestore","text":"

        A purpose-built database for the storage and retrieval of triples through semantic queries. A triple is a data entity composed of subject\u2013predicate\u2013object, like \"Bob is 35\" or \"Bob knows Fred\".

        "},{"location":"reference/glossary-of-terms/#ubergraph","title":"Ubergraph","text":"

        An integrated OBO ontology Triplestore and a Ontology Repository, with merged set of mutually referential OBO ontologies (see the ubergraph github for list of ontologies included), that allows for SPARQL querying of integrated OBO ontologies.

        "},{"location":"reference/glossary-of-terms/#uri","title":"URI","text":"

        A Uniform Resource Indicator, a generalization of URL. Most people think of URLs as being solely for addresses for web pages (or APIs) but in semantic web technologies, URLs can serve as actual identifiers for entities like OWL entities. Data models like OWL and RDF use URIs as identifiers. In OAK, URIs are mapped to CURIE

        "},{"location":"reference/glossary/","title":"Glossary for concepts in and around OBO","text":"
        IMPORTANT NOTE TO EDITORS, MERGE THIS WITH glossary.md.\n

        New OBOOK Glossary

        "},{"location":"reference/glossary/#tools","title":"Tools","text":"Term Definition Type Docs Ontology Development Kit (ODK) A toolkit and docker image for managing ontology releases. Tool docs ROBOT A toolkit for transforming and interacting with ontologies. Tool docs rdflib A python library to interact with RDF data Library docs OWL API A java-based API to interact with OWL ontologies Library docs Protege A typical ontology development tool used by ontology developers in the OBO-sphere Tool docs ROBOT templates A templating system based on tables, where the templates are integrated in the same table as the data Standard docs Dead Simple Ontology Design Patterns (DOSDP) A templating system for ontologies with well-documented patterns and templates. Standard docs DOSDP tools DOSDP is the open source reference implementation of the DOSDP templating language. Tool docs Reasonable Ontology Templates (OTTR) A system for composable ontology templates and documentation Standard docs Lutra Lutra is the open source reference implementation of the OTTR templating language. Tool docs"},{"location":"reference/go-style-annotation-property-practice/","title":"Recommended metadata properties to use in curating OBO ontologies (GO-style)","text":"

        Note that while most of the practices documented here apply to all OBO ontologies this recommendation applies only to ontologies that are developed using GO-style curation workflows.

        Type Property to use Required Number/Limit Description Format Annotation Reference/Comments Label rdfs:label Y Max 1 * Full name of the term, must be unique. Free text None * some ontologies have multiple labels for different languages, in which case, there should maximum be one label per language Definition IAO:0000115 Y Max 1 A textual definition of ther term. In most ontologies, must be unique. Free text database_cross_reference: reference materials used and contributors (in ORCID ID link format) See this document for guide on writing definitions Contributor dcterms:contributor N (though highly reccomended) No limit The ORCID ID of people who contributed to the creation of the term. ORCID ID (using full link) None Synonyms http://www.geneontology.org/formats/oboInOwl#hasExactSynonym, http://www.geneontology.org/formats/oboInOwl#hasBroadSynonym, http://www.geneontology.org/formats/oboInOwl#hasNarrowSynonym, http://www.geneontology.org/formats/oboInOwl#hasRelatedSynonym N No limit Synonyms of the term. Free text database_cross_reference: reference material in which the synonymn is used See synonyms documentation for guide on using synonyms Comments rdfs:comment N Max 1 Comments about the term, extended descriptions that might be useful, notes on modelling choices, other misc notes. Free text database_cross_reference: reference material relating to the comment See documentation on comments for more information about comments Editor note IAO:0000116 N Max 1 A note that is not relevant to front users, but might be to editors Free text database_cross_reference: reference material relating to the note Subset http://www.geneontology.org/formats/oboInOwl#inSubset N No limit A tag that marks a term as being part of a subset annotation property that is a subproperty of subset_property (see guide on how to select this) None See Slim documentation for more information on subsets Database Cross Reference http://www.geneontology.org/formats/oboInOwl#hasDbXref N No limit Links out to external references. string and should* take the form {prefix}:{accession}; see db-xrefs yaml for prefixes None *Some ontologies allow full URLS in specific cases, but this is controversial Date created dcterms:created N Max 1 Date in which the term was created ISO-8601 format None Date last updated dcterms:date N Max 1 Date in which the term was last updated ISO-8601 format None Deprecation http://www.w3.org/2002/07/owl#deprecated N Max 1 A tag that marks a term as being obsolete/deprecated xsd:boolean (true/false) None See obsoletion guide for more details Replaced by IAO:0100001 N Max 1 Term that has replaced an obsoleted term IRI/ID (e.g. CL:0000001) None See obsoletion guide and merging terms guide for more details Consider oboInOwl:consider N No limit Term that can be considered from manual replacement of an obsoleted term IRI/ID (e.g. CL:0000001) None See obsoletion guide and merging terms guide for more details"},{"location":"reference/managing-issues/","title":"Tools for Managing Issues","text":"

        Based on Intro to GitHub (GO-Centric) with credit to Nomi Harris and Chris Mungall

        "},{"location":"reference/managing-issues/#labels","title":"Labels","text":"

        Labels are a useful tool to help group and organize issues, allowing people to filter issues by grouping. Note: Only project contributors can add/change labels

        "},{"location":"reference/managing-issues/#best-practices-for-labels","title":"Best Practices for Labels","text":"
        • Make use of use GitHub's default labels: bug, question, enhancement, good first issue, etc.
        • Define new labels as needed for project management
        • Lightly coordinate labels across repos in an organization
        • Labels are not ontologies; don\u2019t overload them. A small simple set consistently applied is better than overly specific inconsistently applied labels
        "},{"location":"reference/managing-issues/#superissues","title":"Superissues","text":"

        Superissues are issues that have checklists (added using -[] on items). These are useful as they show progress towards completion. These can be used for issues that require multiple steps to solve.

        "},{"location":"reference/managing-issues/#milestones","title":"Milestones","text":"

        Milestones are used for issues with a specific date/deadline. Milestones contain issues and issues can be filtered by milestones. They are also useful for visualizing how many issues in it is completed.

        "},{"location":"reference/managing-issues/#project-boards","title":"Project Boards","text":"

        Project boards are a useful tool to organise, as the name implies, projects. They can span multiple repos (though the repos need to be in the same organisation). Notes can also be added.

        "},{"location":"reference/medical-ontology-landscape/","title":"Medical Ontology landscape","text":""},{"location":"reference/medical-ontology-landscape/#the-landscape-of-disease-and-phenotype-ontologies","title":"The Landscape of Disease and Phenotype Ontologies","text":"

        Compiled by Nicole Vasilevsky. Feel free to make pull requests to suggest edits. Note: This currently just provides an overview of disease and phenotype ontologies. Contributors are welcome to add more descriptions of other medical ontologies. This was last updated in 2021.

        "},{"location":"reference/medical-ontology-landscape/#disease-ontologies-terminologies","title":"Disease Ontologies & Terminologies","text":""},{"location":"reference/medical-ontology-landscape/#disease-summary-table","title":"Disease Summary Table","text":"Name Disease Area Artificial Intelligence Rheumatology Consultant System Ontology (AI-RHEUM) Rheumatic diseases Autism DSM-ADI-R Ontology (ADAR) Autism Autism Spectrum Disorder Phenotype Ontology (ASDPTO) Autism Brucellosis Ontology (IDOBRU) brucellosis Cardiovascular Disease Ontology (CVDO) Cardiovascular Chronic Kidney Disease Ontology (CKDO) Chronic kidney disease Chronic Obstructive Pulmonary Disease Ontology (COPDO) Chronic obstructive pulmonary disease (COPD) Coronavirus Infectious Disease Ontology (CIDO) Coronavirus infectious diseases Diagnostic and Statistical Manual of Mental Disorders (DSM) Mental disorders Dispedia Core Ontology (DCO) Rare diseases Experimental Factor Ontology (EFO) Broad disease coverage Fibrotic Interstitial Lung Disease Ontology (FILDO) Fibrotic interstitial lung disease Genetic and Rare Diseases Information Center (GARD) Rare diseases Holistic Ontology of Rare Diseases (HORD) Rare disease Human Dermatological Disease Ontology (DERMO) Dermatology (skin) Human Disease Ontology (DO) Human disease Infectious Disease Ontology (IDO) Infectious disease International Classification of Functioning, Disability and Health (ICF) Cross-discipline, focuses disabilities International Statistical Classification of Diseases and Related Health Problems (ICD-11) Broad coverage International Classification of Diseases for Oncology (ICD-O) Cancer Logical Observation Identifier Names and Codes (LOINC) Broad coverage Medical Subject Headings (MeSH) Broad coverage MedGen Human medical genetics Medical Dictionary for Regulatory Activities (MedDRA) Broad coverage Mental Disease Ontology (MDO) Mental functioning Mondo Disease Ontology (Mondo) Broad coverage, Cross species National Cancer Institute Thesaurus (NCIT) Humam cancer and neoplasms Neurological Disease Ontology (ND) Neurology Online Mendelian Inheritance in Man (OMIM) Mendelian, genetic diseases. Ontology of Cardiovascular Drug Adverse Events (OCVDAE) Cardiovascular Ontology for General Medical Science (OGMS) Broad coverage Ontology for Genetic Susceptibility Factor (OGSF) Genetic disease Ontology of Glucose Metabolism Disorder (OGMD) Metabolic disorders Ontology of Language Disorder in Autism (LDA) Austism The Oral Health and Disease Ontology (OHD) Oral health and disease Orphanet (ORDO) Rare diseases Parkinson Disease Ontology (PDO) Parkinson disease Pathogenic Disease Ontology (PDO) Pathogenic diseases PolyCystic Ovary Syndrome Knowledgebase (PCOSKB) Polycystic ovary syndrome Rat Disease Ontology (RDO) Broad coverage Removable Partial Denture Ontology (RPDO) Oral health Resource of Asian Primary Immunodeficiency Diseases (RPO) Immunodeficiencies Sickle Cell Disease Ontology (SCDO) Sickle Cell Disease SNOMED Clinical Terminology (SNOMED CT) Broad disease representation for human diseases. Symptom Ontology Human diseases Unified Medical Language System Broad coverage"},{"location":"reference/medical-ontology-landscape/#artificial-intelligence-rheumatology-consultant-system-ontology-ai-rheum","title":"Artificial Intelligence Rheumatology Consultant System ontology (AI-RHEUM)","text":"

        Description: Contains findings, such as clinical signs, symptoms, laboratory test results, radiologic observations, tissue biopsy results, and intermediate diagnosis hypotheses, for the diagnosis of rheumatic diseases. Disease area: Rheumatic diseases Use Cases: Used by clinicians and informatics researchers. Website: https://bioportal.bioontology.org/ontologies/AI-RHEUM Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#autism-dsm-adi-r-ontology-adar","title":"Autism DSM-ADI-R Ontology (ADAR)","text":"

        Description: An ontology of autism spectrum disorder (ASD) and related neurodevelopmental disorders. Disease area: Autism Use Cases: It extends an existing autism ontology to allow automatic inference of ASD phenotypes and Diagnostic and Statistical Manual of Mental Disorders (DSM) criteria based on subjects\u2019 Autism Diagnostic Interview\u2013Revised (ADI-R) assessment data. Website: https://bioportal.bioontology.org/ontologies/ADAR Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#autism-spectrum-disorder-phenotype-ontology-asdpto","title":"Autism Spectrum Disorder Phenotype Ontology (ASDPTO)","text":"

        Description: Encapsulates the ASD behavioral phenotype, informed by the standard ASD assessment instruments and the currently known characteristics of this disorder. Disease area: Autism Use Cases: Intended for use in research settings where extensive phenotypic data have been collected, allowing a concept-based approach to identifying behavioral features of importance and for correlating these with genotypic data. Website: https://bioportal.bioontology.org/ontologies/ASDPTO Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#brucellosis-ontology-idobru","title":"Brucellosis Ontology (IDOBRU)","text":"

        Description: Describes the most common zoonotic disease, brucellosis, which is caused by Brucella, a type of facultative intracellular bacteria. Disease area: brucellosis bacteria Use Cases: An extension ontology of the core Infectious Disease Ontology (IDO-core). This project appears to be inactive. Website: https://github.com/biomedontology/idobru Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#cardiovascular-disease-ontology-cvdo","title":"Cardiovascular Disease Ontology (CVDO)","text":"

        Description: An ontology to describe entities related to cardiovascular diseases. Disease area: Cardiovascular Use Cases: Describes entities related to cardiovascular diseases including the diseases themselves, the underlying disorders, and the related pathological processes. Imports upper level terms from OGMS and imports some terms from Disease Ontology (DO). GitHub repo: https://github.com/OpenLHS/CVDO/ Website: https://github.com/OpenLHS/CVDO OBO Foundry webpage: http://obofoundry.org/ontology/cvdo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#chronic-kidney-disease-ontology-ckdo","title":"Chronic Kidney Disease Ontology (CKDO)","text":"

        Description: An ontology of chronic kidney disease in primary care. Disease area: Chronic kidney disease Use Cases: CKDDO was developed to assist routine data studies and case identification of CKD in primary care. Website: http://purl.bioontology.org/ontology/CKDO Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#chronic-obstructive-pulmonary-disease-ontology-copdo","title":"Chronic Obstructive Pulmonary Disease Ontology (COPDO)","text":"

        Description: Models concepts associated with chronic obstructive pulmonary disease in routine clinical databases. Disease area: Chronic obstructive pulmonary disease (COPD) Use Cases: Clinical use. Website: https://bioportal.bioontology.org/ontologies/COPDO Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#coronavirus-infectious-disease-ontology-cido","title":"Coronavirus Infectious Disease Ontology (CIDO)","text":"

        Description: Aims to ontologically represent and standardize various aspects of coronavirus infectious diseases, including their etiology, transmission, epidemiology, pathogenesis, diagnosis, prevention, and treatment. Disease area: Coronavirus infectious diseases, including COVID-19, SARS, MERS; covers etiology, transmission, epidemiology, pathogenesis, diagnosis, prevention, and treatment. Use Cases: Used for disease annotations related to coronavirus infections. GitHub repo: https://github.com/cido-ontology/cido OBO Foundry webpage: http://obofoundry.org/ontology/cido.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#diagnostic-and-statistical-manual-of-mental-disorders-dsm","title":"Diagnostic and Statistical Manual of Mental Disorders (DSM)","text":"

        Description: Authoritative source to define and classify mental disorders to improve diagnoses, treatment, and research. Disease area: Mental disorders Use Cases: Used in clinical healthcare and research by pyschiatrists and psychologists. Website: https://www.psychiatry.org/psychiatrists/practice/dsm Open: No, must be purchased

        "},{"location":"reference/medical-ontology-landscape/#dispedia-core-ontology-dco","title":"Dispedia Core Ontology (DCO)","text":"

        Description: A schema for information brokering and knowledge management in the complex field of rare diseases. DCO describes patients affected by rare diseases and records expertise about diseases in machine-readable form. Disease area: Rare disease Use Cases: DCO was initially created with amyotrophic lateral sclerosis as a use case. Website: http://purl.bioontology.org/ontology/DCO Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#experimental-factor-ontology-efo","title":"Experimental Factor Ontology (EFO)","text":"

        Description: Provides a systematic description of many experimental variables available in EBI databases, and for projects such as the GWAS catalog. Disease area: Broad disease coverage, integrates the Mondo disease ontology. Use Cases: Application ontology build for European Bioinformatics (EBI) tools and databases and Open Targets Genetics Portal. Website: https://www.ebi.ac.uk/efo/ Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#fibrotic-interstitial-lung-disease-ontology-fildo","title":"Fibrotic Interstitial Lung Disease Ontology (FILDO)","text":"

        Description: An in-progress, four-tiered ontology proposed to standardize the diagnostic classification of patients with fibrotic interstitial lung disease. Disease area: Fibrotic interstitial lung disease Use Cases: Goal is to standardize the diagnostic classification of patients with fibrotic ILD. A paper was published in 2017 and an ontology is not publicly available. Publication: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5803648/ Open: No

        "},{"location":"reference/medical-ontology-landscape/#genetic-and-rare-diseases-information-center-gard","title":"Genetic and Rare Diseases Information Center (GARD)","text":"

        Description: NIH resource that provides the public with access to current, reliable, and easy-to-understand information about rare or genetic diseases in English or Spanish. Disease area: Rare diseases Use Cases: Patient portal. Integrates defintions and synonyms from Orphanet, maps to HPO phenotypes, and is integrated by Mondo. Website: https://rarediseases.info.nih.gov/ Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#holistic-ontology-of-rare-diseases-hord","title":"Holistic Ontology of Rare Diseases (HORD)","text":"

        Description: Describes the biopsychosocial state (i.e., disease, psychological, social, and environmental state) of persons with rare diseases in a holistic way. Disease area: Rare disease Use Cases: Rehabilita, Disruptive Technologies for the Rehabilitation of the Future, a project that aims to enhance rehabilitation transforming it to a more personalized, ubiquitous and evidence-based rehabilitation. Website: http://purl.bioontology.org/ontology/HORD Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#human-dermatological-disease-ontology-dermo","title":"Human Dermatological Disease Ontology (DERMO)","text":"

        Description: The most comprehensive dermatological disease ontology available, with over 3,500 classes available. There are 20 upper-level disease entities, with features such as anatomical location, heritability, and affected cell or tissue type. Disease area: Dermatology (skin) Use Cases: DermO can be used to extract data from patient electronic health records using text mining, or to translate existing variable-granularity coding such as ICD-10 to allow capture and standardization of patient/disease annotations. Website: https://bioportal.bioontology.org/ontologies/DERMO Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#human-disease-ontology-do","title":"Human Disease Ontology (DO)","text":"

        Description: An ontology for describing the classification of human diseases organized by etiology. Disease area: Human disease terms, phenotype characteristics and related medical vocabulary disease concepts. Use Cases: Used by Model Organism Databases (MOD), such as Mouse Genome Informatics disease model for diseae annotations, and Alliance for Genome Resources for disease annotations. In 2018, DO tracked over 300 DO project citations suggesting wide adoption and usage for disease annotations. GitHub repo: https://github.com/DiseaseOntology/HumanDiseaseOntology/ Website: http://www.disease-ontology.org/ OBO Foundry webpage: http://obofoundry.org/ontology/doid.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#infectious-disease-ontology-ido","title":"Infectious Disease Ontology (IDO)","text":"

        Description: A set of interoperable ontologies that will together provide coverage of the infectious disease domain. IDO core is the upper-level ontology that hosts terms of general relevance across the domain, while extension ontologies host terms to specific to a particular part of the domain. Disease area: Infectious disease features, such as acute, primary, secondary infection, and chronic, hospital acquired and local infection. Use Cases: Does not seem active, has not been released since 2017. GitHub repo: https://github.com/infectious-disease-ontology/infectious-disease-ontology/ Website: http://www.bioontology.org/wiki/index.php/Infectious_Disease_Ontology OBO Foundry webpage: http://obofoundry.org/ontology/ido.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#international-classification-of-functioning-disability-and-health-icf","title":"International Classification of Functioning, Disability and Health (ICF)","text":"

        Description: Represents diseases and provides a conceptual basis for the definition and measurement of health and disability as organized by patient-oriented outcomes of function and disability. ICF considers environmental factors as well as the relevance of associated health conditions in recognizing major models of disability. Disease area: Cross-discipline, focuses on health and disability Use Cases: ICF is the World Health Organization (WHO) framework for measuring health and disability at both individual and population levels. ICF was officially endorsed by the WHO as the international standard to describe and measure health and disability. Website: https://www.who.int/standards/classifications/international-classification-of-functioning-disability-and-health Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#international-statistical-classification-of-diseases-and-related-health-problems-icd-11","title":"International Statistical Classification of Diseases and Related Health Problems (ICD-11)","text":"

        Description: A medical classification list by the World Health Organization (WHO) that contains codes for diseases, signs and symptoms, abnormal findings, complaints, social circumstances, and external causes of injury or diseases. Disease area: Broad coverage of human disease features, such as disease of anatomical systems, infectious diseases, injuries, external causes of morbidity and mortality. Use Cases: The main purpose of ICD-11 is for clinical care, billing and coding for insurance companies. Website: https://www.who.int/standards/classifications/classification-of-diseases Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#international-classification-of-diseases-for-oncology-icd-o","title":"International Classification of Diseases for Oncology (ICD-O)","text":"

        Description: A domain-specific extension of the International Statistical Classification of Diseases and Related Health Problems for tumor diseases. Disease area: A multi-axial classification of the site, morphology, behaviour, and grading of neoplasms. Use Cases: Used principally in tumour or cancer registries for coding the site (topography) and the histology (morphology) of neoplasms, usually obtained from a pathology report. Website: https://www.who.int/standards/classifications/other-classifications/international-classification-of-diseases-for-oncology Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#logical-observation-identifier-names-and-codes-loinc","title":"Logical Observation Identifier Names and Codes (LOINC)","text":"

        Description: Identifies medical laboratory observations. Disease area: Broad coverage Use Cases: The Regenstrief Institute first developed LOINC in 1994 in response to the demand for an electronic database for clinical care and management. LOINC is publicly available at no cost and is endorsed by the American Clinical Laboratory Association and the College of American Pathologists. Since its inception, LOINC has expanded to include not just medical laboratory code names but also nursing diagnoses, nursing interventions, outcome classifications, and patient care data sets. Website: https://loinc.org/ Open: Yes, registration is required.

        "},{"location":"reference/medical-ontology-landscape/#medical-subject-headings-mesh","title":"Medical Subject Headings (MeSH)","text":"

        Description: Medical Subject Headings (MeSH) thesaurus is a controlled and hierarchically-organized vocabulary produced by the National Library of Medicine. Disease area: Broad coverage Use Cases: It is used for indexing, cataloging, and searching of biomedical and health-related information. Integrated into Mondo. Website: https://meshb.nlm.nih.gov/search Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#medgen","title":"MedGen","text":"

        Description: Organizes information related to human medical genetics, such as attributes of conditions and phenotypes of genetic contributions. Disease area: Human medical genetics Use Cases: MedGen is NCBI's portal to information about conditions and phenotypes related to Medical Genetics. Terms from the NIH Genetic Testing Registry (GTR), UMLS, HPO, Orphanet, ClinVar and other sources are aggregated into concepts, each of which is assigned a unique identifier and a preferred name and symbol. The core content of the record may include names, identifiers used by other databases, mode of inheritance, clinical features, and map location of the loci affecting the disorder. The concept identifier (CUI) is used to aggregate information about that concept, similar to the way NCBI Gene serves as a gateway to gene-related information. Website: https://www.ncbi.nlm.nih.gov/medgen/ Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#medical-dictionary-for-regulatory-activities-meddra","title":"Medical Dictionary for Regulatory Activities (MedDRA)","text":"

        Description: Provides a standardized international medical terminology to be used for regulatory communication and evaluation of data about medicinal products for human use. Disease area: Broad coverage Use Cases: Mainly targeted towards industry and regulatory users. Website: https://www.meddra.org/ Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#mental-disease-ontology-mdo","title":"Mental Disease Ontology (MDO)","text":"

        Description: An ontology to describe and classify mental diseases such as schizophrenia, annotated with DSM-IV and ICD codes where applicable. Disease area: Mental functioning, including mental processes such as cognition and traits such as intelligence. Use Cases: The ontology has been partially aligned with the related projects Cognitive Atlas, knowledge base on cognitive science and the Cognitive Paradigm Ontology, which is used in the Brainmap, a database of neuroimaging experiments. GitHub repo: https://github.com/jannahastings/mental-functioning-ontology OBO Foundry webpage: http://obofoundry.org/ontology/mfomd.html Open: yes

        "},{"location":"reference/medical-ontology-landscape/#mondo-disease-ontology-mondo","title":"Mondo Disease Ontology (Mondo)","text":"

        Description: An integrated disease ontology that provides precise mappings between source ontologies that comprehensively covers cross-species diseases, from common to rare diseases. Disease area: Cross species, intended to cover all areas of diseases, integrating source ontologies that cover Mendelian diseases (OMIM), rare diseases (Orphanet), neoplasms (NCIt), human diseases (DO), and others. See all sources here. Use Cases: Mondo was developed for usage in the Monarch Initiative, a discovery system that allows navigation of similarities between phenotypes, organisms, and human diseases across many data sources and organisms. Mondo is also used by ClinGen for disease curations, the Kids First Data Resource Portal for disease annotations and others, see an extensive list here. GitHub repo: https://github.com/monarch-initiative/mondo Website: https://mondo.monarchinitiative.org/ OBO Foundry webpage: http://obofoundry.org/ontology/mondo.html Open: yes

        "},{"location":"reference/medical-ontology-landscape/#national-cancer-institute-thesaurus-ncit","title":"National Cancer Institute Thesaurus (NCIT)","text":"

        Description: NCI Thesaurus (NCIt)is a reference terminology that includes broad coverage of the cancer domain, including cancer related diseases, findings and abnormalities. The NCIt OBO Edition aims to increase integration of the NCIt with OBO Library ontologies. NCIt OBO Edition releases should be considered experimental. Disease area: Cancer and neoplasms Use Cases: NCI Thesaurus (NCIt) provides reference terminology for many National Cancer Institute and other systems. It is used by the Clinical Data Interchange Standards Consortium Terminology (CDISC), the U.S. Food and Drug Administration (FDA), the Federal Medication Terminologies (FMT), and the National Council for Prescription Drug Programs (NCPDP). It provides extensive coverage of neoplasms and cancers. GitHub repo: https://github.com/NCI-Thesaurus/thesaurus-obo-edition/issues Website: https://ncithesaurus.nci.nih.gov/ncitbrowser/pages/home.jsf?version=20.11e OBO Foundry webpage: http://obofoundry.org/ontology/ncit.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#neurological-disease-ontology-nd","title":"Neurological Disease Ontology (ND)","text":"

        Description: A framework for the representation of key aspects of neurological disease. Disease area: Neurology Use Cases: Goal is to provide a framework to enable representation of aspects of neurological diseases that are relevant to their treatment and study. This project may be inactive, the last commit to GitHub was in 2016. GitHub repo: https://github.com/addiehl/neurological-disease-ontology Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#online-mendelian-inheritance-in-man-omim","title":"Online Mendelian Inheritance in Man (OMIM)","text":"

        Description: a comprehensive, authoritative compendium of human genes and genetic phenotypes that is freely available and updated daily. Disease area: Mendelian, genetic diseases. Use Cases: Integrated into the disease ontology, used by the Human Phenotype Ontology for disease annotations, patients and researchers. Website: https://omim.org/ Open: yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-of-cardiovascular-drug-adverse-events-ocvdae","title":"Ontology of Cardiovascular Drug Adverse Events (OCVDAE)","text":"

        Description: A biomedical ontology of cardiovascular drug\u2013associated adverse events. Disease area: Cardiovascular Use Cases: One novel study of the OCVDAE project is the development of the PCR method. Specifically, an AE-specific drug class effect is defined to exist when all the drugs (drug chemical ingredients or drug products) in a drug class are associated with an AE, which is formulated as a proportional class level ratio (\u201cPCR\u201d)\u2009=\u20091. See more information in the paper: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5653862/. This project may be inactive, the last GitHub commit was in 2019. GitHub repo: https://github.com/OCVDAE/OCVDAE Website: https://bioportal.bioontology.org/ontologies/OCVDAE Open: yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-for-general-medical-science-ogms","title":"Ontology for General Medical Science (OGMS)","text":"

        Description: An ontology of entities involved in a clinical encounter. Use Cases: Provides a formal theory of disease that can be further elaborated by specific disease ontologies. It is intended to be used as a upper level ontology for other disease ontologies. Used by Cardiovascular Disease Ontology. GitHub repo: https://github.com/OGMS/ogms OBO Foundry webpage: http://obofoundry.org/ontology/ogms.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-for-genetic-susceptibility-factor-ogsf","title":"Ontology for Genetic Susceptibility Factor (OGSF)","text":"

        Description: An application ontology to represent genetic susceptibility to a specific disease, adverse event, or a pathological process. Use Cases: Modeling genetic susceptibility to vaccine adverse events. GitHub repo: https://github.com/linikujp/OGSF OBO Foundry webpage: http://obofoundry.org/ontology/ogsf.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-of-glucose-metabolism-disorder-ogmd","title":"Ontology of Glucose Metabolism Disorder (OGMD)","text":"

        Description: Represents glucose metabolism disorder and diabetes disease names, phenotypes, and their classifications. Disease area: Metabolic disorders Use Cases: Still under development (last verssion released in BioPortal was in 2021) but there is little information about its usage online. Website: https://bioportal.bioontology.org/ontologies/OGMD Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-of-language-disorder-in-autism-lda","title":"Ontology of Language Disorder in Autism (LDA)","text":"

        Description: An ontology assembled from a set of language terms mined from the autism literature. Disease area: Austism Use Cases: This has not been released since 2008 and looks like it is inactive. Website: https://bioportal.bioontology.org/ontologies/LDA Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#the-oral-health-and-disease-ontology-ohd","title":"The Oral Health and Disease Ontology (OHD)","text":"

        Description: Represents the content of dental practice health records and is intended to be further developed for use in translational medicine. OHD is structured using BFO (Basic Formal Ontology) and uses terms from many ontologies, NCBITaxon, and a subset of terms from the CDT (Current Dental Terminology). Disease area: Oral health and disease Use Cases: Used to represent the content of dental practice health records and is intended to be further developed for use in translation medicine. Appears to be inactive. OBO Foundry webpage: http://www.obofoundry.org/ontology/ohd.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#orphanet-ordo","title":"Orphanet (ORDO)","text":"

        Description: The portal for rare diseases and orphan drugs. Contains a structured vocabulary for rare diseases capturing relationships between diseases, genes, and other relevant features, jointly developed by Orphanet and the EBI. It contains information on nearly 10,000 cancers and related diseases, 8,000 single agents and combination therapies, and a wide range of other topics related to cancer and biomedical research. Disease area: Rare diseases Use Cases: Used by rare disease research and clinical community. Integrated into the Mondo disease ontology, aligned with OMIM. Website: https://www.orpha.net/consor/cgi-bin/index.php Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#parkinson-disease-ontology-pdo","title":"Parkinson Disease ontology (PDO)","text":"

        Description: A comprehensive semantic framework with a subclass-based taxonomic hierarchy, covering the whole breadth of the Parkinson disease knowledge domain from major biomedical concepts to different views on disease features held by molecular biologists, clinicians, and drug developers. Disease area: Parkinson disease Use Cases: This resource has been created for use in the IMI-funded AETIONOMY project. Last release was in 2015, may be inactive. Website: https://bioportal.bioontology.org/ontologies/PDON Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#pathogenic-disease-ontology-pdo","title":"Pathogenic Disease Ontology (PDO)","text":"

        Description: Provides information on infectious diseases, disease synonyms, transmission pathways, disease agents, affected populations, and disease properties. Diseases are grouped into syndromic disease categories, organisms are structured hierarchically, and both disease transmission and relevant disease properties are searchable. Disease area: human infectious diseases caused by microbes and the diseases that is related to microbial infection. Use Cases: Has not been released since 2016 and may be inactive. Website: https://bioportal.bioontology.org/ontologies/PDO Open: Yes.

        "},{"location":"reference/medical-ontology-landscape/#polycystic-ovary-syndrome-knowledgebase-pcoskb","title":"PolyCystic Ovary Syndrome Knowledgebase (PCOSKB)","text":"

        Description: Comprises genes, single nucleotide polymorphisms, diseases, gene ontology terms, and biochemical pathways associated with polycystic ovary syndrome, a major cause of female subfertility worldwide. Disease area: polycystic ovary syndrome Use Cases: Ontology underlying the Polycystic Ovary Syndrome Knowledgebase, a manually curated knowledgebase on PCOS. Website: http://pcoskb.bicnirrh.res.in/go_d.php Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#rat-disease-ontology-rdo","title":"Rat Disease Ontology (RDO)","text":"

        Description: Provides the foundation for ten comprehensive disease area\u2013related data sets at the Rat Genome Database Disease Portals. Disease area: Broad coverage including animal diseases, infectious diseases, chemically-induced disorders, occupational diseases, wounds and injuries and more. Use Cases: Developed for use with the Rat Genome Database Disease Portals. Website: https://rgd.mcw.edu/rgdweb/ontology/view.html?acc_id=DOID:4 Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#removable-partial-denture-ontology-rpdo","title":"Removable Partial Denture Ontology (RPDO)","text":"

        Description: Represents knowledge of a patient\u2019s oral conditions and denture component parts, originally developed to create a clinician decision support model. Disease area: Oral health and dentures Use Cases: A paper was published on this in 2016 but it does not appear any other information is available about this ontology on the website, presumably it is an inactive project. Publication: https://www.nature.com/articles/srep27855 Open: No

        "},{"location":"reference/medical-ontology-landscape/#resource-of-asian-primary-immunodeficiency-diseases-rpo","title":"Resource of Asian Primary Immunodeficiency Diseases (RPO)","text":"

        Description: Represents observed phenotypic terms, sequence variations, and messenger RNA and protein expression levels of all genes involved in primary immunodeficiency diseases. Disease area: Primary immunodeficiency diseases Use Cases: This terminology is used in a freely accessible, dynamic and integrated database for primary immunodeficiency diseases (PID) called Resource of Asian Primary Immunodeficiency Diseases (RAPID), which is available here. Publication: https://academic.oup.com/nar/article/37/suppl_1/D863/1004993 Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#sickle-cell-disease-ontology-scdo","title":"Sickle Cell Disease Ontology (SCDO)","text":"

        Description: SCDO establishes (a) community-standardized sickle cell disease terms and descriptions, (b) canonical and hierarchical representation of knowledge on sickle cell disease, and (c) links to other ontologies and bodies of work. Disease area: Sickle Cell Disease (SCD). Use Cases: SCDO is intended to be a comprehensive collection of knowledge on SCD, facilitate exploration of new scientific questions and ideas, facilitate seamless data sharing and collaborations including meta-analysis within the SCD community, support the building of databasing and clinical informatics in SCD. GitHub repo: https://github.com/scdodev/scdo-ontology/issues Website: https://scdontology.h3abionet.org/ OBO Foundry webpage: http://obofoundry.org/ontology/scdo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#snomed-clinical-terminology-snomed-ct","title":"SNOMED Clinical Terminology (SNOMED CT)","text":"

        Description: A comprehensive clinical terminology/ontology used in healthcare settings. Disease area: Broad disease representation for human diseases. Use Cases: Main coding system used in Electronic Health Records (EHRs). Website: https://browser.ihtsdotools.org/? Open: No, requires a license for usage.

        "},{"location":"reference/medical-ontology-landscape/#symptom-ontology","title":"Symptom Ontology","text":"

        Description: An ontology of disease symptoms, with symptoms encompasing perceived changes in function, sensations or appearance reported by a patient indicative of a disease. Disease area: Human diseases Use Cases: Developed by the Disease Ontology (DO) team and used for describing symptoms of human diseases in the DO. Website: http://symptomontologywiki.igs.umaryland.edu/mediawiki/index.php/Main_Page OBO Foundry webpage: http://obofoundry.org/ontology/symp.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#unified-medical-language-system","title":"Unified Medical Language System","text":"

        Description: The UMLS integrates and distributes key terminology, classification and coding standards, and associated resources to promote creation of more effective and interoperable biomedical information systems and services. Disease area: Broad coverage Use Cases: Healthcare settings including electronic health records and HL7. Website: https://www.nlm.nih.gov/research/umls/index.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#phenotype-ontologies","title":"Phenotype ontologies","text":""},{"location":"reference/medical-ontology-landscape/#phenotype-summary-table","title":"Phenotype Summary Table","text":"Name Species Area Ascomycete phenotype ontology (APO) Ascomycota C. elegans phenotype (wbphenotype) C elegans Dictyostelium discoideum phenotype ontology (ddpheno) Dictyostelium discoideum Drosophila Phenotype Ontology (DPO) Drosophila Flora Phenotype Ontology (FLOPO) Viridiplantae Fission Yeast Phenotype Ontology (FYPO) S. pombe Human Phenotype Ontology (HPO) Human HPO - ORDO Ontological Module (HOOM) Human Mammalian Phenotype Ontology (MP) Mammals Ontology of Microbial Phenotypes (OMP) Microbe Ontology of Prokaryotic Phenotypic and Metabolic Characters Prokaryotes Pathogen Host Interaction Phenotype Ontology pathogens Planarian Phenotype Ontology (PLANP) Schmidtea mediterranea Plant Trait Ontology (TO) Viridiplantae Plant Phenology Ontology Plants Unified Phenotype Ontology (uPheno) Cross-species coverage Xenopus Phenotype Ontology (XPO) Xenopus Zebrafish Phenotype Ontology (ZP) Zebrafish"},{"location":"reference/medical-ontology-landscape/#ascomycete-phenotype-ontology-apo","title":"Ascomycete phenotype ontology (APO)","text":"

        Description: A structured controlled vocabulary for the phenotypes of Ascomycete fungi. Species: Ascomycota GitHub repo: https://github.com/obophenotype/ascomycete-phenotype-ontology/ Webpage: http://www.yeastgenome.org/ OBO Foundry webpage: http://obofoundry.org/ontology/wbphenotype.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#c-elegans-phenotype-wbphenotype","title":"C. elegans phenotype (wbphenotype)","text":"

        Description: A structured controlled vocabulary of Caenorhabditis elegans phenotypes. Species: C elegans GitHub repo: https://github.com/obophenotype/c-elegans-phenotype-ontology OBO Foundry webpage: http://obofoundry.org/ontology/wbphenotype.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#dictyostelium-discoideum-phenotype-ontology-ddpheno","title":"Dictyostelium discoideum phenotype ontology (ddpheno)","text":"

        Description: A structured controlled vocabulary of phenotypes of the slime-mould Dictyostelium discoideum. Species: Dictyostelium discoideum GitHub repo: https://github.com/obophenotype/dicty-phenotype-ontology/issues Webpage: http://dictybase.org/ OBO Foundry webpage: http://obofoundry.org/ontology/ddpheno.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#drosophila-phenotype-ontology-dpo","title":"Drosophila Phenotype Ontology (DPO)","text":"

        Description: An ontology of commonly encountered and/or high level Drosophila phenotypes. Species: Drosophila GitHub repo: https://github.com/obophenotype/c-elegans-phenotype-ontology Webpage: http://purl.obolibrary.org/obo/fbcv OBO Foundry webpage: http://obofoundry.org/ontology/dpo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#flora-phenotype-ontology-flopo","title":"Flora Phenotype Ontology (FLOPO)","text":"

        Description: Traits and phenotypes of flowering plants occurring in digitized Floras. Species: Viridiplantae GitHub repo: https://github.com/flora-phenotype-ontology/flopoontology/ OBO Foundry webpage: http://obofoundry.org/ontology/flopo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#fission-yeast-phenotype-ontology-fypo","title":"Fission Yeast Phenotype Ontology (FYPO)","text":"

        Description: FYPO is a formal ontology of phenotypes observed in fission yeast. Species: S. pombe GitHub repo: https://github.com/pombase/fypo OBO Foundry webpage: http://obofoundry.org/ontology/fypo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#human-phenotype-ontology-hpo","title":"Human Phenotype Ontology (HPO)","text":"

        Description: HPO provides a standardized vocabulary of phenotypic abnormalities encountered in human disease. Each term in the HPO describes a phenotypic abnormality. Species: Human GitHub repo: https://github.com/obophenotype/human-phenotype-ontology Website: https://hpo.jax.org/app/ OBO Foundry webpage: http://obofoundry.org/ontology/hp.html Open: yes

        "},{"location":"reference/medical-ontology-landscape/#hpo-ordo-ontological-module-hoom","title":"HPO - ORDO Ontological Module (HOOM)","text":"

        Description: Orphanet provides phenotypic annotations of the rare diseases in the Orphanet nomenclature using the Human Phenotype Ontology (HPO). HOOM is a module that qualifies the annotation between a clinical entity and phenotypic abnormalities according to a frequency and by integrating the notion of diagnostic criterion. In ORDO a clinical entity is either a group of rare disorders, a rare disorder or a subtype of disorder. The phenomes branch of ORDO has been refactored as a logical import of HPO, and the HPO-ORDO phenotype disease-annotations have been provided in a series of triples in OBAN format in which associations, frequency and provenance are modeled. HOOM is provided as an OWL (Ontologies Web Languages) file, using OBAN, the Orphanet Rare Disease Ontology (ORDO), and HPO ontological models. HOOM provides extra possibilities for researchers, pharmaceutical companies and others wishing to co-analyse rare and common disease phenotype associations, or re-use the integrated ontologies in genomic variants repositories or match-making tools. Species: Human Website: http://www.orphadata.org/cgi-bin/img/PDF/WhatIsHOOM.pdf BioPortal: https://bioportal.bioontology.org/ontologies/HOOM Open: yes

        "},{"location":"reference/medical-ontology-landscape/#mammalian-phenotype-ontology-mp","title":"Mammalian Phenotype Ontology (MP)","text":"

        Description: Standard terms for annotating mammalian phenotypic data. Species: Mammals (main focus is on mouse and rodents) GitHub repo: https://github.com/obophenotype/mammalian-phenotype-ontology Website: http://www.informatics.jax.org/searches/MP_form.shtml OBO Foundry webpage: http://obofoundry.org/ontology/mp.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-of-microbial-phenotypes-omp","title":"Ontology of Microbial Phenotypes (OMP)","text":"

        Description: An ontology of phenotypes covering microbes. Species: microbes GitHub repo: https://github.com/microbialphenotypes/OMP-ontology Website: http://microbialphenotypes.org OBO Foundry webpage: http://obofoundry.org/ontology/omp.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#ontology-of-prokaryotic-phenotypic-and-metabolic-characters","title":"Ontology of Prokaryotic Phenotypic and Metabolic Characters","text":"

        Description: An ontology of phenotypes covering microbes. Species: Prokaryotes GitHub repo: https://github.com/microbialphenotypes/OMP-ontology/issues Website: http://microbialphenotypes.org/ OBO Foundry webpage: http://obofoundry.org/ontology/omp.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#pathogen-host-interaction-phenotype-ontology","title":"Pathogen Host Interaction Phenotype Ontology","text":"

        Description: PHIPO is a formal ontology of species-neutral phenotypes observed in pathogen-host interactions. Species: pathogens GitHub repo: https://github.com/PHI-base/phipo Website: http://www.phi-base.org OBO Foundry webpage: http://obofoundry.org/ontology/phipo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#planarian-phenotype-ontology-planp","title":"Planarian Phenotype Ontology (PLANP)","text":"

        Description: Planarian Phenotype Ontology is an ontology of phenotypes observed in the planarian Schmidtea mediterranea. Species: Schmidtea mediterranea GitHub repo: https://github.com/obophenotype/planarian-phenotype-ontology OBO Foundry webpage: http://obofoundry.org/ontology/planp.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#plant-trait-ontology-to","title":"Plant Trait Ontology (TO)","text":"

        Description: A controlled vocabulary of describe phenotypic traits in plants. Species: Viridiplantae GitHub repo: https://github.com/Planteome/plant-trait-ontology/ OBO Foundry webpage: http://obofoundry.org/ontology/to.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#plant-phenology-ontology","title":"Plant Phenology Ontology","text":"

        Description: An ontology for describing the phenology of individual plants and populations of plants, and for integrating plant phenological data across sources and scales. Species: Plants GitHub repo: https://github.com/PlantPhenoOntology/PPO OBO Foundry webpage: http://obofoundry.org/ontology/ppo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#unified-phenotype-ontology-upheno","title":"Unified Phenotype Ontology (uPheno)","text":"

        Description: The uPheno ontology integrates multiple phenotype ontologies into a unified cross-species phenotype ontology. Species: Cross-species coverage GitHub repo: https://github.com/obophenotype/upheno OBO Foundry webpage: http://obofoundry.org/ontology/upheno.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#xenopus-phenotype-ontology-xpo","title":"Xenopus Phenotype Ontology (XPO)","text":"

        Description: XPO represents anatomical, cellular, and gene function phenotypes occurring throughout the development of the African frogs Xenopus laevis and tropicalis. Species: Xenopus GitHub repo: https://github.com/obophenotype/xenopus-phenotype-ontology OBO Foundry webpage: http://obofoundry.org/ontology/xpo.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#zebrafish-phenotype-ontology-zp","title":"Zebrafish Phenotype Ontology (ZP)","text":"

        Description: The Zebrafish Phenotype Ontology formally defines all phenotypes of the Zebrafish model organism. Species: Zebrafish GitHub repo: https://github.com/obophenotype/zebrafish-phenotype-ontology OBO Foundry webpage: http://obofoundry.org/ontology/zp.html Open: Yes

        "},{"location":"reference/medical-ontology-landscape/#references","title":"References","text":"
        • A Census of Disease Ontologies Melissa A. Haendel, Julie A. McMurry, Rose Relevo, Christopher J. Mungall, Peter N. Robinson, Christopher G. Chute Annual Review of Biomedical Data Science 2018 1:1, 305-331
        • OMOP2OBO repository
        "},{"location":"reference/mungall-blog-radar/","title":"Monkeying around with OWL","text":"

        An index page to find some of our favourite articles on Chris' blog. These are not all articles, but I selection we found useful during our every work.

        "},{"location":"reference/mungall-blog-radar/#ontology-development-and-modelling","title":"Ontology development and modelling","text":"
        • OntoTips Series. Must read series for the beginning ontology developer.

        • Warning about complex modelling. Chris is generally big on Occam's Razor solutions: given two solutions that solve a use case, the simpler is better.

        • OntoTip: Don\u2019t over-specify OWL definitions. From the above OntoTip series.

        • How to deal with unintentional equivalent classes

        "},{"location":"reference/mungall-blog-radar/#ontology-curation","title":"Ontology curation","text":"
        • OntoTip: Write simple, concise, clear, operational textual definitions. One of our favourite blog posts of Chris. Must read!
        "},{"location":"reference/obook-maturity-indicator/","title":"OBOOK Maturity Indicator","text":"

        Some resources on OBOOK are less well developed than others. We use the OBOOK Maturity Indicator to document this (discussion).

        • : This page is under development and not yet suitable for self-study or teaching.
        • : This page is still under development (may be rough around the edges) but complete and suitable for self-study or teaching.
        • : This page is developed to an extent it can be considered stable (although nothing is ever really stable) and therefore suitable for self-study or teaching.

        To add a status badge onto a site, simply paste a badge like this right under the title:

        <a href=\"https://oboacademy.github.io/obook/reference/obook-maturity-indicator/\"><img src=\"https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2FOBOAcademy%2Fobook%2Fmaster%2Fdocs%2Fresources%2Fobook-badge-final.json\" /></a>\n
        "},{"location":"reference/odk/","title":"Ontology Development Kit (ODK) Reference","text":"

        The ODK is essentially two things:

        1. A toolbox. All frequently used tools for managing the ontology life cycle are bundled together into a Docker image: ROBOT, owltools, fastobo-validator, dosdp-tools, riot and many, many more.
        2. A system, you could have say \"methodology\" for managing the ontology life cycle from continious integration and quality control to imports and release management.
        "},{"location":"reference/odk/#the-toolbox","title":"The Toolbox","text":"

        The ODK bundles a lot of tools together, such as ROBOT, owltools, fastobo-validator and dosdp-tools. To get a better idea, its best to simply read the Dockerfile specifications of the ODK image:

        • ODK Lite Image. This contains the most essentials tools related to ODK development. Most of the day to day activities of ontology developers with ROBOT are well covered by odklite.
        • ODK Full Image. Extends the ODK Lite image with a further round of powerful tools. It contains for example Apache Jena, the OBO Dashboard, the Konclude reasoner and a large array of command line tools.
        "},{"location":"reference/odk/#the-system-for-ontology-life-cycle-management","title":"The system for ontology life cycle management","text":"

        One of the tools in the toolbox, the \"seed my repo\" function, allows us to generate a complete GitHub repository with everything needed to manage an OBO ontology according to OBO best practices. The two central components are

        1. A Makefile that encodes the rules by which ontology release files should be derived from the source of truth (the edit file).
        2. A support for CI such as GitHub actions or Travis for running continuous integration checks.
        "},{"location":"reference/odk/#odk-project-configuration-schema","title":"ODK Project Configuration Schema","text":"

        Schema can be found in ODK documentation here

        "},{"location":"reference/ontology-curator/","title":"A Day in the Life of an Ontology Curator","text":"
        1. Review issues on the issue tracker.
        2. Tickets by organized by assigning labels (such as new term requests) and milestones
        3. Can also sort tickets on Project boards
          • Can search on labels, milestones, assignee, etc.
        4. In Mondo, we set priorities based on user requests, size of the ticket (ie amount of work required), if it is blocking something else, etc.
        5. Edits to the Mondo ontology are made on Branches and via Pull Requests on the mondo-edit.obo file.
        6. Example: work on an open ticket to add a new term using Protege.
        7. Detailed instructions on how to add a new term are here.
        8. Example: User request to add 50+ subtyps of acute myeloid leukemia. We used a ROBOT template.
        9. Do you want to contribute? See tickets labeled good first issue.
        10. Documentation and more instructions are available in the Mondo editors guide.
        "},{"location":"reference/other-resources/","title":"Other Resources","text":"

        Here's a collection of links about the Open Biological and Biomedical Ontologies (OBO), and related topics.

        If you're completely new to OBO, I suggest starting with Ontologies 101:

        • Unit 1: Controlled Vocabularies, Ontologies, and Data Linking (PowerPoint Slides)
        • Unit 2: An Introduction to OWL (Powerpoint Slides)
        • Unit 3: Ontology Community (Powerpoint Slides)
        • BDK14 Ontologies 101 repository

        If you're new to scientific computing more generally, then I strongly recommend Software Carpentry, which provides a set of very pragmatic introductions to the Unix command line, git, Python, Make, and other tools widely used by OBO developers.

        "},{"location":"reference/other-resources/#open-biological-and-biomedical-ontologies","title":"Open Biological and Biomedical Ontologies","text":"

        OBO is a community of people collaborating on open source ontologies for science. We have a set of shared principles and best practises to help people and data work together effectively.

        • OBO Foundry Homepage
        • The OBO Foundry: coordinated evolution of ontologies to support biomedical data integration (journal article)
        • OBO Discuss mailing list
        "},{"location":"reference/other-resources/#services","title":"Services","text":"

        Here is a very incomplete list of some excellent services to help you find an use OBO terms and ontologies.

        • EMBL-EBI
        • OLS: Ontology Lookup Service is an excellent ontology browser and search service
        • OxO shows mappings between ontologies and terms
        • Zooma for mapping free text to ontology terms
        • Onto-Animals
        • Ontobee is an ontology browser
        • Ontofox is an ontology extraction tool
        • Bioportal provides ontology browsing, search, mapping, etc.
        "},{"location":"reference/other-resources/#tools","title":"Tools","text":"

        This is the suite of open source software that most OBO developers use.

        • OBO Tools mailing list
        • GitHub is where most OBO projects are hosted and what we use to manage code, issues, etc.
        • GitHub tutorial
        • Prot\u00e9g\u00e9 is a graphical user interface for editing OWL ontologies. (Java)
        • ROBOT is a command-line tool for automating ontology tasks. (Java)
        • ROBOT tutorial
        • ROBOT: A Tool for Automating Ontology Workflows (journal article)
        • ENVO ROBOT Template and Merge Workflow
        • DOS-DP is a command-line tool for working with ontology design patterns. (Python)
        • ODK: Ontology Development Kit is a collection of tools for building and maintaining an OBO project. (Docker)
        • OBO Tools and Workflows (Google Slides) A good overview of technical and advanced topics of OBO practises, including the Ontology Development Kit.
        • OWLAPI is a Java library for working with ontologies, and is the foundation for Prot\u00e9g\u00e9 and ROBOT.
        • OBO PURL System is used to redirect OBO terms from their IRIs to the right resource
        • String of PURLs \u2013 frugal migration and maintenance of persistent identifiers (journal article)
        "},{"location":"reference/other-resources/#technical","title":"Technical","text":"

        This section is for technical reference, not beginners.

        OBO projects use Semantic Web and Linked Data technologies:

        • W3C Semantic Web overview
        • Search for W3C data standards
        • W3C Data on the Web Best Practices

        These standards form layers:

        1. IRI: Internationalized Resource Identifiers are a superset of the familiar URLs used to locate resources on the web. Every ontology term has a globally unique IRI.
        2. RDF: Resource Description Format is a standard for combining IRIs into subject-predicate-object \"triples\" that make a statement about some thing. Sets of triples form a graph (i.e. network), and graphs can easily be merged to form larger graphs. SPARQL is the language for querying RDF graphs.
        3. RDF 1.1 Primer
        4. SPARQL 1.1 Overview
        5. RDFS: RDF Schema 1.1 extends RDF with classes, hierarchies, and other features.
        6. XSD: W3C XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes is the common standard for datatypes in RDF
        7. OWL: Web Ontology Language extends RDF and RDFS to provide more powerful logic
        8. OWL 2 Web Ontology Language Primer (Second Edition)

        Other useful resources on technical topics:

        • Monkeying around with OWL Chris Mungall's blog, mostly on technical topics for ontologies.
        "},{"location":"reference/outreach/","title":"OBO Academy Outreach","text":""},{"location":"reference/outreach/#cite-us","title":"Cite us","text":"

        Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, & Nicolas Matentzoglu. (2022, August 3). OBO Academy: Training materials for bio-ontologists. 2022 ISMB Bio-Ontologies Community, Madison, WI. https://doi.org/10.5281/zenodo.6955490

        "},{"location":"reference/outreach/#generic-obo-academy-slide-deck","title":"Generic OBO Academy slide deck","text":"

        Available here. Please feel free to use this slide deck to promote the OBO Academy.

        "},{"location":"reference/outreach/#presentations","title":"Presentations","text":"
        • Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, David Osumi-Sutherland, Nicolas Matentzoglu. \"OBO Academy: Training materials for Bio-ontologists\". Presentation at OntoCommons, Virtual. June 14, 2023.
        • Nicole Vasilevsky and Nico Matentzoglu. Panel discussion at Knowledge Graph Conference 2023. May 08, 2023.
        • Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, Nicolas Matentzoglu. \"OBO Academy: Training materials for Bio-ontologists.\" [Poster presentation] Biocuration 2022, Virtual. October 04, 2022.
        • James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, Nicolas Matentzoglu, Nicole Vasilevsky. \"OBO Academy: Training materials for Bio-ontologists.\" [Lightning talk and Poster presentation] ICBO, Ann Arbor, MI. September 27, 2022. https://zenodo.org/record/7116623
        • Nicole Vasilevsky, James Overton, Rebecca Jackson, Sabrina Toro, Shawn Tan, Bradley Varner, David Osumi-Sutherland, & Nicolas Matentzoglu. (2022, August 3). \"OBO Academy: Training materials for bio-ontologists.\" Presentation at 2022 ISMB Bio-Ontologies Community, Madison, WI, July 2022
        "},{"location":"reference/protege-faq/","title":"Proteg\u00e9 FAQs","text":""},{"location":"reference/protege-faq/#how-to-escape-characters-in-the-class-expression-editor","title":"How to escape characters in the class expression editor","text":"

        To add an ontology term (such as a GO term) that contains ' in its name (e.g. RNA-directed 5'-3' RNA polymerase activity) in the class expression editor, you need to escape the ' characters. In Proteg\u00e9 5.5 this is not automatically handled when you auto-complete with tab. To escape the character append \\ before the ' -> RNA-directed 5\\'-3\\' RNA polymerase activity. You won't be able to add the annotation otherwise.

        As in Proteg\u00e9 5.5, the \\ characters will show up in the description window, and when hovering over the term, you won't be able to click on it with a link. However, when you save the file, the relationship is saved correctly. You can double-check by going to the ontology text file and see that the term is correctly mentioned in the relationship.

        "},{"location":"reference/protege-interface/","title":"Reference document for protege interface","text":"

        For this reference, we will use the cell ontology to highlight the key information on the user interface in Protege

        "},{"location":"reference/protege-interface/#general-interface-buttons","title":"General interface buttons","text":"

        '+' button (not shown above) = add '?' button = explain axiom '@' button = annotate 'x' button = remove 'o' button = edit

        "},{"location":"reference/protege-interface/#active-ontology-tab","title":"Active Ontology tab","text":""},{"location":"reference/protege-interface/#overview","title":"Overview","text":"

        When you open the ontology on protege, you should land on the Active ontology tab, alternatively, it is available on the top as one of your tabs.

        "},{"location":"reference/protege-interface/#ontology-level-annotations","title":"Ontology Level Annotations","text":"

        Annotations on the active ontology tab are ontology level annotations and contain metadata about the ontology. This includes:

        1. title (name of the ontology)
        2. description
        3. license
        4. contributors (ideally this should be in ORCID but many ontologies use names instead)
        5. references (under rdfs:comment)
        6. preferred_root (this allows certain browsers to know which root to display the ontology from)
        "},{"location":"reference/protege-interface/#entities-tab","title":"Entities tab","text":"

        Entities are where your \"entries\" in the ontology live and where you can add terms etc.

        "},{"location":"reference/reasoning/","title":"Why do we need reasoning?","text":"

        A quick personal perspective up-front. When I was finishing my undergrad, I barely had heard the term Semantic Web. What I had heard vaguely intrigued me, so I decided that for my final project, I would try to combine something Semantic Web related with my other major, Law and build a tool that could automatically infer the applicability of a law (written in OWL) given a legal case. Super naively, I just went went ahead, read a few papers about legal ontologies, build a simple one, loaded it into my application and somehow got it to work, with reasoning and all, without even having heard of Description Logic.

        In my PhD, I worked on actual reasoning algorithms, which meant, no more avoiding logic. But - I did not get it. Up until this point in my life, I could just study harder and harder, and in the end I was confident with what I learned, but First Order Logic, in particular model theory and proofs, caused me anxiety until the date of my viva. In the end, a very basic understanding of model theory and Tableau did help me with charactering the algorithms I was working with (I was studying the effect of modularity, cutting out logically connected subsets of an ontology, on reasoning performance) but I can confidently say today: I never really, like deeply, understood logical proofs. I still cant read them - and I have a PhD in Reasoning (albeit from an empirical angle).

        If you followed the Open HPI courses on logic, and you are anything like me, your head will hurt and you will want to hide under your blankets. Most students feel like that. For a complete education in Semantic Web technologies, going through this part once is essential: it tells you something about how difficult some stuff is under the hood, and how much work has been done to make something like OWL work for knowledge representation. You should have gained some appreciation of the domain, which is no less complex than Machine Learning or Stochastic Processes. But, in my experience, some of the most effective ontology engineers barely understand reasoning - definitely have no idea how it works - and still do amazing work. In that spirit, I would like to invite you at this stage to put logic and reasoning behind you (unless it made you curious of course) - you won't need to know much of that for being an effective Semantic Engineer. In the following, I will summarise some of the key take-aways that I find useful to keep in mind.

        • Semantics define how to interpret an ontology. For example, in OWL, the statement Human SubClassOf: Mammal means that all instances of the Human class, like me, are also instances of the Mammal class. Or, in other words, from the statements:
        Human SubClassOf: Mammal\nNico type: Human\n

        Semantics allow as to deduce that Nico:Mammal. What are semantics practically? Show me your semantics? Look at something like the OWL semantics. In there, you will find language statements (syntax) like X SubClassOf: Y and a bunch of formulae from model theory that describe how to interpret it - no easy read, and not really important for you now.

        • OWL has a number of profiles, basically sub-languages where you can say less things. Why would we want to restrict our \"expressivity\"? Because their is a trade-off. An important slide I remember from when I learned about ontology languages was the triangle of complexity (here only paraphrased from memory):

        1. When expressivity goes up, cognitive complexity and computational complexity go up.
        2. When we want to decrease cognitive complexity (make it easier to build ontologies), expressivity goes down.
        3. When we want reasoners to be faster at making inferences (computational complexity), we need to decrease expressivity. So we need to find a way to balance.

        4. What are the most important practical applications of reasoning? There are many, and there will be many opinions, but in the OBO world, by far (95%) of all uses of reasoners pertain to the following:

        5. Classification. Most, if not all, of our ontologies are conceptually hierarchies of classes we use reasoners to automatically infer hierarchies. Look for example at the Xenopus Phenotype Ontology - the class hierarchy is entirely build with a reasoner - no Human intervention!
        6. Debugging. There are two major threats to ontologies. In the worst case, they can be inconsistent - which means, totally broken. A slightly less bad, but still undesirable situation is that some of the classes in your ontologies break (in parlance, become unsatisfiable). This happens when you say some contradictory things about them. Reasoners help you find these unsatisfiable classes, and there is a special reasoning algorithm that can generate an explanation for you - to help fixing your problem.
        7. So in general, what is reasoning? There are probably a dozen or more official characterisations in the scientific literature, but from the perspective of biomedical ontologies, the question can be roughly split like this:

        8. How can we capture what we know? This is the (research-) area of knowledge representation, logical formalisms, such as First Order Logic, Description Logic, etc. It is concerned with how we write down what we now:

        All cars have four wheels\nIf you are a human, you are also a mammal\nIf you are a bird, you can fly (unless you are a penguin)\n
        1. How can we uncover implicit knowledge efficiently? This is the area of reasoning, and while being closely related to the formalisms above, it makes sense to think of them in a distinct manner, as the problems are very different in practice. It can typically be grouped into the following two categories:
        2. deductive reasoning infers by

        Lets think about a naive approach: using a fact-, or data-, base.

        "},{"location":"reference/release-artefacts/","title":"Release artefacts","text":"

        For explanation of different release artefacts, please see discussion documentation on owl format variants

        We made a first stab add defining release artefacts that should cover all use cases community-wide. We need to (1) agree they are all that is needed and (2) they are defined correctly in terms of ROBOT commands. This functionality replaces what was previously done using OORT.

        "},{"location":"reference/release-artefacts/#terminology","title":"Terminology:","text":"

        The source ontology is the ontology we are talking about. A release artefact is a version of the ontology modified in some specific way, intended for public use. An import is a module of an external ontology which contains all the axioms necessary for the source ontology. A component is a file containing axioms that belong to the source ontology (but are for one reason or another, like definitions.owl, managed in a separate file). An axiom is said to be foreign if it 'belongs' to a different ontology, and native if it belongs to the source ontology. For example, the source ontology might have, for one reason or another, been physically asserted (rather than imported) the axiom TransitiveObjectProperty(BFO:000005). If the source ontology does not 'own' the BFO namespace, this axiom will be considered foreign.

        There are currently 6 release defined in the ODK:

        • base (required)
        • full (required)
        • non-classified (optional)
        • simple (optional)
        • basic (optional)
        • simple-non-classified (optional, transient)

        We discuss all of them here in detail.

        "},{"location":"reference/release-artefacts/#release-artefact-1-base-required","title":"Release artefact 1: base (required)","text":"

        The base file contains all and only native axioms. No further manipulation is performed, in particular no reasoning, redundancy stripping or relaxation. This release artefact is going to be the new backbone of the OBO strategy to combat incompatible imports and consequent lack of interoperability. (Detailed discussions elsewhere, @balhoff has documentation). Every OBO ontology will contain a mandatory base release (should be in the official OBO recommendations as well).

        The ROBOT command generating the base artefact: $(SRC): source ontology $(OTHER_SRC): set of component ontologies

        $(ONT)-base.owl: $(SRC) $(OTHER_SRC)\n    $(ROBOT) remove --input $< --select imports  --trim false \\\n        merge $(patsubst %, -i %, $(OTHER_SRC)) \\\n        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@\n
        "},{"location":"reference/release-artefacts/#release-artefact-2-full-required","title":"Release artefact 2: full (required)","text":"

        The full release artefact contains all logical axioms, including inferred subsumptions. Redundancy stripping (i.e. redundant subclass of axioms) and typical relaxation operations are performed. All imports and components are merged into the full release artefact to ensure easy version management. The full release represents most closely the actual ontology as it was intended at the time of release, including all its logical implications. Every OBO ontology will contain a mandatory full release.

        The ROBOT command generating the full artefact: $(SRC): source ontology $(OTHER_SRC): set of component ontologies

        $(ONT)-full.owl: $(SRC) $(OTHER_SRC)\n    $(ROBOT) merge --input $< \\\n        reason --reasoner ELK \\\n        relax \\\n        reduce -r ELK \\\n        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@\n
        "},{"location":"reference/release-artefacts/#release-artefact-3-non-classified-optional","title":"Release artefact 3: non-classified (optional)","text":"

        The non-classified release artefact reflects the 'unmodified state' of the editors file at release time. No operations are performed that modify the axioms in any way, in particular no redundancy stripping. As opposed to the base artefact, both component and imported ontologies are merged into the non-classified release.

        The ROBOT command generating the full artefact: $(SRC): source ontology $(OTHER_SRC): set of component ontologies

        $(ONT)-non-classified.owl: $(SRC) $(OTHER_SRC)\n    $(ROBOT) merge --input $< \\\n        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@\n
        "},{"location":"reference/release-artefacts/#release-artefact-4-simple-optional","title":"Release artefact 4: simple (optional)","text":"

        Many users want a release that can be treated as a simple existential graph of the terms defined in an ontology. This corresponds to the state of OBO ontologies before logical definitions and imports. For example, the only logical axioms in -simple release of CL will contain be of the form CL1 subClassOf CL2 or CL1 subClassOf R some CL3 where R is any objectProperty and CLn is a CL class. This role has be fulfilled by the -simple artefact, which up to now has been supported by OORT.

        To construct this, we first need to assert inferred classifications, relax equivalentClass axioms to sets of subClassOf axioms and then strip all axioms referencing foreign (imported) classes. As ontologies occasionally end up with forieign classes and axioms merged into the editors file, we achieve this will a filter based on obo-namespace. (e.g. finding all terms with iri matching http://purl.obolibrary.org/obo/CL_{\\d}7).

        The ROBOT command generating the full artefact: $(SRC): source ontology $(OTHER_SRC): set of component ontologies $(SIMPLESEED): all terms that 'belong' to the ontology

        $(ROBOT) merge --input $< $(patsubst %, -i %, $(OTHER_SRC)) \\\n    reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} \\\n    relax \\\n    remove --axioms equivalent \\\n    relax \\\n    filter --term-file $(SIMPLESEED) --select \"annotations ontology anonymous self\" --trim true --signature true \\\n    reduce -r {{ project.reasoner }} \\\n    annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@.tmp.owl && mv $@.tmp.owl $@\n

        NOTES: This requires $(ONTOLOGYTERMS) to include all ObjectProperties usesd. --select parents is required for logical axioms to be retained, but results in a few upper-level classes bleeding through. We hope this will be fixed by further improvments to Monarch.

        "},{"location":"reference/release-artefacts/#release-artefact-5-basic","title":"Release artefact 5: basic","text":"

        Some legacy users (e.g. MGI) require an OBO DAG version of -simple. OBO files derived from OWL are not guarenteed to be acyclic, but acyclic graphs can be achieved using judicious filtering of relationships (simple existential restrictions) by objectProperty. The -basic release artefact has historically fulfilled this function as part of OORT driven ontology releases. The default -basic version corresponds to the -simple artefact with only 'part of' relationships (BFO:0000050), but others may be added where ontology editors judge these to be useful and safe to add without adding cycles. We generate by taking the simple release and filtering it

        The ROBOT command generating the full artefact: $(SRC): source ontology $(OTHER_SRC): set of component ontologies $(KEEPRELATIONS): all relations that should be preserved. $(SIMPLESEED): all terms that 'belong' to the ontology

        $(ROBOT) merge --input $< $(patsubst %, -i %, $(OTHER_SRC)) \\\n    reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} \\\n    relax \\\n    remove --axioms equivalent \\\n    remove --axioms disjoint \\\n    remove --term-file $(KEEPRELATIONS) --select complement --select object-properties --trim true \\\n    relax \\\n    filter --term-file $(SIMPLESEED) --select \"annotations ontology anonymous self\" --trim true --signature true \\\n    reduce -r {{ project.reasoner }} \\\n    annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@ --output $@.tmp.owl && mv $@.tmp.owl $@\n
        "},{"location":"reference/release-artefacts/#release-artefact-6-simple-non-classified-optional","title":"Release artefact 6: simple-non-classified (optional)","text":"

        This artefact caters to the very special and hopefully transient case of some ontologies that do not yet trust reasoning (MP, HP). The simple-non-classified artefact corresponds to the simple artefact, just without the reasoning step.

        $(SRC): source ontology $(OTHER_SRC): set of component ontologies $(ONTOLOGYTERMS): all terms that 'belong' to the ontology

        $(ONT)-simple-non-classified.owl: $(SRC) $(OTHER_SRC) $(ONTOLOGYTERMS)\n    $(ROBOT) remove --input $< --select imports \\\n        merge  $(patsubst %, -i %, $(OTHER_SRC))  \\\n        relax \\\n        reduce -r ELK \\\n        filter --term-file $(ONTOLOGYTERMS) --trim true \\\n        annotate --ontology-iri $(ONTBASE)/$@ --version-iri $(ONTBASE)/releases/$(TODAY)/$@\n
        "},{"location":"reference/semantic-engineering-toolbox/","title":"The Semantic OBO Engineer's Toolbox","text":"

        Essentials

        • Prot\u00e9g\u00e9
        • DL Query Tab
        • ROBOT
        • OBO Dashboard: OBO-wide quality control monitor for OBO ontologies.

        Automation

        • GNU Make
        • Ontology Development Kit (ODK)
        • DROID: DROID is a web-based interface for working with make, managed by git.

        Text editors:

        • Kakoune text/code editor
        • Sublime
        • Atom

        SPARQL query tool:

        • Yasgui
        • ROBOT query

        SPARQL endpoints

        • Ontobee SPARQL endpoint: Useful to run queries across all OBO Foundry ontologies
        • Ubergraph SPARQL endpoint: Many key OBO ontologies are loaded here with lots of materialised inferences (docs).

        Templating systems

        • DOSDP with DOSDP Tools
        • ROBOT template

        Ontology Mappings

        • SSSOM and sssom-py: Toolkit and framework for managing mappings across and beyond ontologies.
        • AgreementMakerLight (AML): Matching tool for ontologies
        • RDF Matcher: Experimental SSSOM based matching tool
        • LogMap: Matching tool for ontologies

        Where to find ontologies and terms: Term browsers and ontology repositories

        • OLS: The boss of the current term browsers out there. While the code base is a bit dated, it still gives access to a wide range of relevant open biomedical ontology terms. Note, while being a bit painful, it is possible to set up your own OLS (for your organisation) which only contains those terms/ontologies that are relevant for your work.
        • Ontobee: The default term browser for OBO term purls. For example, click on http://purl.obolibrary.org/obo/OBI_0000070. This will redirect you directly to Ontobee, to show you the terms location in the hierarchy. In practice, there is no particular reason why you would favour Ontobee over OLS for example - I just sometimes prefer the way Ontobee presents annotations and \"uses\" by other ontologies, so I use both.
        • AberOWL: Another ontology repository and semantic search engine. Some ontologies such as PhenomeNet can only be found on AberOWL, however, I personally prefer OLS.
        • identifiers.org: A centralised registry for identifiers used in the life sciences. This is one of the tools that bridge the gap between CURIEs and URLs, but it does not cover (OBO) ontologies very well, and if so, is not aware of the proper URI prefixes (see for example here, and HP term resolution that does not list the proper persistent URL of the HP identifier (http://purl.obolibrary.org/obo/HP_0000001)). Identifiers.org has mainly good coverage for databases/resources that use CURIE type identifiers. But: you can enter any ID you find in your data and it will tell you what it is associated with.
        • OBO Foundry Ontology Library. The OBO Foundry works with other repositories and term browsers such as OLS, Ontobee and BioPortal. For example, OLS directly reads the OBO Foundry registry metadata, and automatically loads new ontologies added to the OBO Foundry Ontology Library.
        • BioPortal
        • CPT Story. The Current Procedural Terminology was the by far most highly accessed Terminology on Bioportal - for many years. Due to license concerns, it had to be withdrawn from the repository. This story serves a cautionary tale of using terminologies with non-open or non-transparent licensing schemes.
        • AgroPortal: Like BioPortal, but focussed on the Agronomy domain.
        • Linked Open Data Vocabularies (LOV): Lists the most important vocabularies in the Linked Data space, such as Dublin Core, SKOS and Friend-of-a-Friend (FOAF).

        Ontology visualisation

        • OBO Graphviz: Library to visualise ontologies in beautifully readable graphics based on Dot.
        "},{"location":"reference/semantic-engineering-toolbox/#nicos-top-10-tools-for-the-semantic-obo-engineers-toolbox","title":"Nico's top 10 tools for the Semantic OBO Engineer's Toolbox","text":"
        1. ROBOT
        2. Prot\u00e9g\u00e9
        3. Term browsers (OLS, Ontobee)
        4. Ontology Development Kit (ODK)
        5. SPARQL (e.g. ROBOT query and Yasgui)
        6. GNU Make
        7. Text editor workflows (i.e. Atom, Sublime, VIM): a bit of regex
        8. Basic Shell scripting and pipelining
        9. From tables to ontologies: DOSDP templates and ROBOT templates
        10. GitHub Actions

        Other tools in my toolbox

        These are a bit less essential than the above, but I consider them still tremendously useful.

        • Cogs (experimental) for automatically synchronising your spreadsheets with Google Sheets.
        • Basic Dockerfile development: This can help you automate processes that go beyond usual ODK day-to-day business, such as automated mapping tools, graph machine learning, NLP etc.
        • GitHub community management and git version control: Learn how to effectively manage your contributors, issue requests and code reviews. Also get your git commands straight - these can be life savers!
        • Basics in python scripting: This is always useful, and python is our go-to language for most of automation nowadays - this used to be Java. Most of the Java heavy lifting is done in ROBOT now!
        • SSSOM and sssom-py: Toolkit and framework for managing mappings between ontologies.
        • DROID: DROID is a web-based interface for working with make, managed by git.
        • OBO Dashboard: OBO-wide quality control monitor for OBO ontologies.
        "},{"location":"reference/semantic-etl/","title":"The 3 phases of Semantic Data Engineering / ETL","text":"

        Semantic Data Engineering or Semantic Extract-Transform-Load (ETL) is an engineering discipline that is concerned with extracting information from a variety of sources, linking it together into a knowledge graph and enabling a range of semantic analyses for downstream users such as data scientists or researchers.

        1. Getting Data
        2. Information Extraction from text
        3. Obtaining data from external sources
        4. In-house biocuration
        5. Integrating data
        6. Entity Resolution: Make sure that if your sources talk about the same things, they use the same ontologies to reference those things.
        7. Knowledge merging: Combine the resolved sources into a coherent whole, for example a knowledge graph.
        8. Analysis: Query the integrated data and run advanced analyses using Semantic Technologies (next week).
        "},{"location":"reference/semantic-etl/#glossary","title":"Glossary:","text":"

        The following glossary only says how we use the terms we are defining, not how they are defined by some higher authority.

        Term Definition Example Entity An entity is a thing in the world, like a molecule, or something more complex, like a disease. Entities do not have to be material, they can be processes as well, like cell proliferation. Marfan syndrome, H2O molecule, Ring finger, Phone Term A term is a sequence of characters (string) that refers to an entity in a precise way. SMOKER (referring to the role of being a smoker), HP:0004934 (see explanations below) Relation A link between two (or more) entities that signifies some kind of interaction. :A :loves :B, :smoking :causes :cancer Property A type of relation. The :causes in :smoking :causes :cancer"},{"location":"reference/semantic-etl/#getting-the-data","title":"Getting the data","text":"

        As a Semantic Engineer, you typically coordinate the data collection from three largely separate sources: 1. Unstructured text, for example a corpus of scientific literature 2. External biological databases, such as STRING, a database of Protein-Protein Interaction Networks. 3. Manual in-house bio-curation efforts, i.e. the manual translation and integration of information relevant to biology (or medicine) into a database.

        Here, we are mostly concerned with the automated approaches of Semantic ETL, so we briefly touch on these and provide pointers to the others.

        "},{"location":"reference/semantic-etl/#information-extraction-from-text","title":"Information Extraction from text","text":"

        The task of information extraction is concerned with extracting information from unstructured textual sources to enable identifying entities, like diseases, phenotypes and chemicals, as well as classifying them and storing them in a structured format.

        The discipline that is concerned with techniques for extracting information from text is called Natural Language Processing (NLP).

        NLP is a super exciting and vast engineering discipline which goes beyond the scope of this course. NLP is concerned with many problems such as document classification, speech recognition and language translation. In the context of information extraction, we are particularly interested in Named Entity Recognition (NER), and Relationship Extraction (ER).

        "},{"location":"reference/semantic-etl/#named-entity-recognition","title":"Named Entity Recognition","text":"

        Named Entity Recognition (NER) is the task of identifying and categorising entities in text. NER tooling provides functionality to first isolate parts of sentence that correspond to things in the world, and then assigning them to categories (e.g. Drug, Disease, Publication).

        For example, consider this sentence:

        As in the X-linked Nettleship-Falls form of ocular albinism (300500), the patients showed reduced visual acuity, photophobia, nystagmus, translucent irides, strabismus, hypermetropic refractive errors, and albinotic fundus with foveal hypoplasia.\n

        An NER tool would first identify the relevant sentence parts that belong together:

        As in the [X-linked] [Nettleship-Falls] form of [ocular albinism] (300500), the patients showed [reduced visual acuity], [photophobia], [nystagmus], [translucent irides], [strabismus], [hypermetropic refractive errors], and [albinotic fundus] with [foveal hypoplasia].\n

        And then categorise them according to some predefined categories:

        As in the Phenotype[X-linked] [Nettleship-Falls] form of Disease[ocular albinism] (300500), the patients showed Phenotype[reduced visual acuity], Phenotype[photophobia], Phenotype[nystagmus], Phenotype[translucent irides], Phenotype[strabismus], Phenotype[hypermetropic refractive errors], and Phenotype[albinotic fundus] with Phenotype[foveal hypoplasia].\n

        Interesting sources for further reading:

        • Using Uberon for text mining
        • Named Entity Recognition with NLTK and SpaCy
        • NLP Sandbox
        "},{"location":"reference/semantic-etl/#relationship-extraction","title":"Relationship extraction","text":"

        Relationship extraction (RE) is the task of extracting semantic relationships from text. RE is an important component for the construction of Knowledge Graphs from the Scientific Literature, a task that many Semantic Data Engineering projects pursue to augment or inform their manual curation processes.

        Interesting sources for further reading:

        • http://nlpprogress.com/english/relationship_extraction.html
        • https://github.com/roomylee/awesome-relation-extraction
        "},{"location":"reference/semantic-etl/#other-data-sources-and-in-house-curation-efforts","title":"Other data sources and in-house curation efforts","text":"
        • Scientific data sources relevant to work around genes, phenotypes and diseases are plentiful. See here for an overview of the data sources used by the Monarch Initiative. All of the sources listed are part of a Semantic ETL pipeline involving the extraction of the data from data dumps (like published spreadsheets) or Web APIs, the transformation into a common format (including mapping to ontologies) and its subsequent load into the Monarch Knowledge Graph. More comprehensive lists are being produced in the academic literature, for example here.
        • In-house biocuration. Biocuration is the task of manual translation and integration of information relevant to biology (or medicine) into some kind of database form. Biocuration can take many forms:
        • The curation of scientific literature, i.e. extracting structured metadata from scientific papers to increase discoverability of relevant knowledge. The object of the curation is usually a particular publication, which goes through a triage process (Is the paper relevant to my problem? Is it good enough?), an initial metadata extraction phase (titles, authors, etc), and eventually to extracting the scientific knowledge (not unlike what the Named Entity Recongnition and Relation Extraction procedures described above) do.
        • The focussed curation of specific scientific entities, such as diseases. For example, you may be interested in discovering all therapeutic interventions / drugs used for treating a specific disease.
        "},{"location":"reference/semantic-etl/#integrating-data","title":"Integrating data","text":"

        There is a huge amount of literature and tutorials on the topic of integrating data, the practice of consolidating data from disparate sources into a single dataset. We want to emphasise here two aspects of data integration, which are of particular importance to the Semantic Data engineer.

        1. Entity Resolution: Make sure that if your sources talk about the same things, they use the same ontologies to reference those things.
        2. Knowledge merging: Combine the resolved sources into a coherent whole, for example a knowledge graph.
        "},{"location":"reference/semantic-etl/#entity-resolution-er","title":"Entity Resolution (ER):","text":"

        Entity resolution (ER), sometimes called \"record linking\", is the task of disambiguating records that correspond to real world entities across and within datasets. This task as many dimensions, but for us, the most important one is mapping a string, for example the one that was matched by our Named Entity Recognition pipeline, to ontology terms.

        Given our example:

        As in the Phenotype[X-linked] Nettleship-Falls form of Phenotype[ocular albinism] (300500), the patients showed Phenotype[reduced visual acuity], Phenotype[photophobia], Phenotype[nystagmus], Phenotype[translucent irides], Phenotype[strabismus], Phenotype[hypermetropic refractive errors], and Phenotype[albinotic fundus] with Phenotype[foveal hypoplasia].\n

        We could end up, for example, resolving ocular albinism to HP:0001107.

        There are a lot of materials about Entity Resolution in general: - https://www.districtdatalabs.com/basics-of-entity-resolution - https://www.sciencedirect.com/topics/computer-science/entity-resolution

        In effect the term Ontology Mapping, which is the focus of this lesson, is Entity Resolution for ontologies - usually we don't have problem to use the two terms synonymously, although you may find that the literature typically favours one or the other.

        "},{"location":"reference/semantic-etl/#knowledge-graph-ontology-merging","title":"Knowledge Graph / Ontology merging","text":"

        Knowledge, Knowledge Graph or Ontology Merging are the disciplines concerned with combining all your data sources into a semantically coherent whole. This is a very complex research area, in particular to do this in a way that is semantically consistent. There are essentially two separate problems to be solved to achieve semantic merging: 1. The entities aligned during the entity resolution process must be aligned in the semantically correct way: if you you use logical equivalence to align them (owl:equivalentClasses) the classes must mean absolutely the same thing, or else you may run into the hairball problem, in essence faulty equivalence cliques. In cases of close, narrow or broadly matching classes, the respective specialised semantically correct relationships need to be used in the merging process. 2. The axioms of the merged ontologies must be logically consistent. For example, one ontology may say: a disease is a material entity. Another: a disease is a process. A background, or upper, ontology such as the ubiquitous Basic Formal Ontology (BFO) furthermore says that a process is not a material entity and vice versa. Merging this two ontologies would cause logical inconsistency.

        Unfortunately, the literature on ontology and knowledge graph merging is still sparse and very technical. You are probably best off checking out the OpenHPI course on Ontology Alignment, which is closely related.

        "},{"location":"reference/sparql-basics/","title":"Basic SPARQL commands useful for OBO Engineers","text":""},{"location":"reference/sparql-basics/#basic-select-query","title":"Basic SELECT query","text":"

        A basic SELECT query contains a set of prefixes, a SELECT clause and a WHERE clause.

        PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\nSELECT ?term ?value\nWHERE {\n  ?term rdfs:label ?value .\n}\n
        "},{"location":"reference/sparql-basics/#prefixes","title":"Prefixes","text":"

        Prefixes allow you to specify shortcuts. For example, instead of using the prefixes above, you could have simply said:

        SELECT ?term ?value\nWHERE {\n  ?term <http://www.w3.org/2000/01/rdf-schema#label> ?value .\n}\n

        Without the prefix. It means the exact same thing. But it looks nicer. Some people even go as far as adding entire entities into the prefix header:

        PREFIX label: <http://www.w3.org/2000/01/rdf-schema#label>\n\nSELECT ?term ?value\nWHERE {\n  ?term label: ?value .\n}\n

        This query is, again, the same as the ones above, but even more concise.

        "},{"location":"reference/sparql-basics/#select-clause","title":"SELECT clause","text":"

        The SELECT clause defines what you part of you query you want to show, for example, as a table.

        SELECT ?term ?value\n

        means: \"return\" or \"show\" whatever you find for the variable ?term and the variable ?value.

        There are other cool things you can do in the SELECT clause:

        • Maths. You can count.
        "},{"location":"reference/sparql-reference/","title":"Reference templates for SPARQL queries","text":"

        This document contains template SPARQL queries that can be adapted. Comments are added in-code with # above each step to explain them so that queries can be spliced together

        "},{"location":"reference/sparql-reference/#checksreport-generation","title":"Checks/Report generation","text":""},{"location":"reference/sparql-reference/#all-terms-native-to-ontology","title":"All terms native to ontology","text":"

        note: we assume that all native terms here have the same namespace - that of the ontology

        # select unique instances of the variable\nSELECT DISTINCT ?term\nWHERE {\n  # selecting where the variable term is either used as a subject or object\n  { ?s1 ?p1 ?term . }\n  UNION\n  { ?term ?p2 ?o2 . }\n  # filtering out only terms that have the MONDO namespace (assumed to be native terms)\n  FILTER(isIRI(?term) && (STRSTARTS(str(?term), \"http://purl.obolibrary.org/obo/MONDO_\")))\n}\n
        "},{"location":"reference/sparql-reference/#report-of-terms-with-labels-containing-certain-strings-in-ubergraph","title":"Report of terms with labels containing certain strings in ubergraph","text":"
        # adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\nprefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nprefix BFO: <http://purl.obolibrary.org/obo/BFO_>\n\n# selecting only unique instances of the three variables\nSELECT DISTINCT ?entity ?label WHERE\n{\n  # the variable label is a rdfs:label\n  VALUES ?property {\n    rdfs:label\n  }\n\n  # only look for uberon terms. note: this is only used in ubergraph, use filter for local ontology instead.\n  ?entity rdfs:isDefinedBy <http://purl.obolibrary.org/obo/uberon.owl> .\n\n  # defining the order of variables in the triple\n  ?entity ?property ?label .\n  # entity must be material\n  ?entity rdfs:subClassOf BFO:0000040\n  # filtering out triples where the variable label has sulcus or incisure, or fissure in it\n  FILTER(contains(STR(?label), \"sulcus\")||contains(STR(?label), \"incisure\")||contains(STR(?label), \"fissure\"))\n\n}\n# arrange report by entity variable\nORDER BY ?entity\n
        "},{"location":"reference/sparql-reference/#report-of-labels-and-definitions-of-terms-with-certain-namespace","title":"Report of labels and definitions of terms with certain namespace","text":"
        prefix label: <http://www.w3.org/2000/01/rdf-schema#label>\nprefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nprefix definition: <http://purl.obolibrary.org/obo/IAO_0000115>\nprefix owl: <http://www.w3.org/2002/07/owl#>\n\n# select a report with 3 variables\nSELECT DISTINCT ?term ?label ?def\n\n# defining the properties to be used\n    WHERE {\n        VALUES ?defproperty {\n        definition:\n        }\n        VALUES ?labelproperty {\n        label:\n        }\n\n# defining the order of the triples\n      ?term ?defproperty ?def .\n      ?term ?labelproperty ?label .\n\n# selects entities that are in a certain namespace\n  FILTER(isIRI(?term) && (STRSTARTS(str(?term), \"http://purl.obolibrary.org/obo/CP_\")))\n}\n\n# arrange report by term variable\nORDER BY ?term\n
        "},{"location":"reference/sparql-reference/#definition-lacks-xref","title":"Definition lacks xref","text":"

        adaptable for lacking particular annotation

        # adding prefixes used\nprefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nprefix definition: <http://purl.obolibrary.org/obo/IAO_0000115>\nprefix owl: <http://www.w3.org/2002/07/owl#>\n\nSELECT ?entity ?property ?value WHERE\n{\n  # the variable property has to be defintion (IAO:0000115)\n  VALUES ?property {\n    definition:\n  }\n  # defining the order of variables in the triple\n  ?entity ?property ?value .\n\n  # selecting annotation on definition\n  ?def_anno a owl:Axiom ;\n  owl:annotatedSource ?entity ;\n  owl:annotatedProperty definition: ;\n  owl:annotatedTarget ?value .\n\n  # filters out definitions which do not have a dbxref annotiton\n  FILTER NOT EXISTS {\n    ?def_anno oboInOwl:hasDbXref ?x .\n  }\n\n  # removes triples where entity is blank\n  FILTER (!isBlank(?entity))\n  # selects entities that are native to ontology (in this case MONDO)\n  FILTER (isIRI(?entity) && STRSTARTS(str(?entity), \"http://purl.obolibrary.org/obo/MONDO_\"))\n\n}\n# arrange report by entity variable\nORDER BY ?entity\n
        "},{"location":"reference/sparql-reference/#checks-wether-definitions-contain-underscore-characters","title":"Checks wether definitions contain underscore characters","text":"

        adaptable for checking if there is particular character in annotation

        # adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\nprefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nprefix IAO: <http://purl.obolibrary.org/obo/IAO_>\nprefix definition: <http://purl.obolibrary.org/obo/IAO_0000115>\n\n# selecting only unique instances of the three variables\nSELECT DISTINCT ?entity ?property ?value WHERE\n{\n  # the variable property has to be definition (IAO:0000115)\n  VALUES ?property {\n    definition:\n  }\n  # defining the order of variables in the triple\n  ?entity ?property ?value .\n  # filtering out triples where the variable value has _ in it\n  FILTER( regex(STR(?value), \"_\"))\n  # removes triples where entity is blank\n  FILTER (!isBlank(?entity))\n}\n# arrange report by entity variable\nORDER BY ?entity\n
        "},{"location":"reference/sparql-reference/#only-allowing-a-fix-set-of-annotation-properties","title":"Only allowing a fix set of annotation properties","text":"
        # adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\nprefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nprefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nprefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nprefix IAO: <http://purl.obolibrary.org/obo/IAO_>\nprefix RO: <http://purl.obolibrary.org/obo/RO_>\nprefix mondo: <http://purl.obolibrary.org/obo/mondo#>\nprefix skos: <http://www.w3.org/2004/02/skos/core#>\nprefix dce: <http://purl.org/dc/elements/1.1/>\nprefix dcterms: <http://purl.org/dc/terms/>\n\n# selecting only unique instances of the three variables\nSELECT DISTINCT ?term ?property ?value WHERE\n{\n  # order of the variables in the triple\n    ?term ?property ?value .\n    # the variable property is an annotation property\n    ?property a owl:AnnotationProperty .\n  # selects entities that are native to ontology (in this case MONDO)\n    FILTER (isIRI(?term) && regex(str(?term), \"^http://purl.obolibrary.org/obo/MONDO_\"))\n    # removes triples where the variable value is blank\n    FILTER(!isBlank(?value))\n  # listing the allowed annotation properties\n  FILTER (?property NOT IN (dce:creator, dce:date, IAO:0000115, IAO:0000231, IAO:0100001, mondo:excluded_subClassOf, mondo:excluded_from_qc_check, mondo:excluded_synonym, mondo:pathogenesis, mondo:related, mondo:confidence, dcterms:conformsTo, mondo:should_conform_to, oboInOwl:consider, oboInOwl:created_by, oboInOwl:creation_date, oboInOwl:hasAlternativeId, oboInOwl:hasBroadSynonym, oboInOwl:hasDbXref, oboInOwl:hasExactSynonym, oboInOwl:hasNarrowSynonym, oboInOwl:hasRelatedSynonym, oboInOwl:id, oboInOwl:inSubset, owl:deprecated, rdfs:comment, rdfs:isDefinedBy, rdfs:label, rdfs:seeAlso, RO:0002161, skos:broadMatch, skos:closeMatch, skos:exactMatch, skos:narrowMatch))\n}\n
        "},{"location":"reference/sparql-reference/#checking-for-misused-replaced_by","title":"Checking for misused replaced_by","text":"

        adaptable for checking that a property is used in a certain way

        # adding prefixes used\nPREFIX owl: <http://www.w3.org/2002/07/owl#>\nPREFIX oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nPREFIX replacedBy: <http://purl.obolibrary.org/obo/IAO_0100001>\n\n# selecting only unique instances of the three variables\nSELECT DISTINCT ?entity ?property ?value WHERE {\n # the variable property is IAO_0100001 (item replaced by)\n VALUES ?property { replacedBy: }\n\n # order of the variables in the triple\n ?entity ?property ?value .\n # removing entities that have either owl:deprecated true or oboInOwl:ObsoleteClass (these entities are the only ones that should have replaced_by)\n FILTER NOT EXISTS { ?entity owl:deprecated true }\n FILTER (?entity != oboInOwl:ObsoleteClass)\n}\n# arrange report by entity variable\nORDER BY ?entity\n
        "},{"location":"reference/sparql-reference/#count","title":"Count","text":""},{"location":"reference/sparql-reference/#count-class-by-prefixes","title":"Count class by prefixes","text":"
        # this query counts the number of classes you have with each prefix (eg number of MONDO terms, CL terms, etc.)\n\n# adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\nprefix obo: <http://purl.obolibrary.org/obo/>\n\n# selecting 2 variables, prefix and numberOfClasses, where number of classes is a count of distinct cls\nSELECT ?prefix (COUNT(DISTINCT ?cls) AS ?numberOfClasses) WHERE\n{\n  # the variable cls is a class\n  ?cls a owl:Class .\n  # removes any cases where the variable cls is blank\n  FILTER (!isBlank(?cls))\n  # Binds the variable prefix as the prefix of the class (eg. MONDO, CL, etc.). classes that do not have obo purls will come out as blank in the report.\n  BIND( STRBEFORE(STRAFTER(str(?cls),\"http://purl.obolibrary.org/obo/\"), \"_\") AS ?prefix)\n}\n# grouping the count by prefix\nGROUP BY ?prefix\n
        "},{"location":"reference/sparql-reference/#counting-subclasses-in-a-namespace","title":"Counting subclasses in a namespace","text":"
        # this query counts the number of classes that are subclass of CL:0000003 (native cell) that are in the pcl namespace\n\n# adding prefixes used\nPREFIX owl: <http://www.w3.org/2002/07/owl#>\nPREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nPREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nPREFIX CL: <http://purl.obolibrary.org/obo/CL_>\nPREFIX PCL: <http://purl.obolibrary.org/obo/PCL_>\n\n# count the number of unique term\nSELECT (COUNT (DISTINCT ?term) as ?pclcells)\nWHERE {\n    # the variable term is a class\n    ?term a owl:Class .\n    # the variable term has to be a subclass of CL:0000003, including those that are subclassof by property path\n    ?term rdfs:subClassOf* CL:0000003\n  # only count the term if it is in the pcl namespace\n  FILTER(isIRI(?term) && (STRSTARTS(str(?term), \"http://purl.obolibrary.org/obo/PCL_\")))\n}\n
        "},{"location":"reference/sparql-reference/#removing","title":"Removing","text":""},{"location":"reference/sparql-reference/#removes-all-ro-terms","title":"Removes all RO terms","text":"

        adaptable for removing all terms of a particular namespace

        # adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\nprefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\n# removing triples\nDELETE {\n  ?s ?p ?o\n}\nWHERE\n{\n  {\n    # the variable p must be a rdfs:label\n    VALUES ?p {\n      rdfs:label\n    }\n  # the variable s is an object property\n  ?s a owl:ObjectProperty ;\n  # the other variables can be anything else (note the above value restriction of p)\n  ?p ?o\n    # filter out triples where ?s starts with \"http://purl.obolibrary.org/obo/RO_\"\n    FILTER (isIRI(?s) && STRSTARTS(str(?s), \"http://purl.obolibrary.org/obo/RO_\"))\n  }\n}\n
        "},{"location":"reference/sparql-reference/#deleting-axiom-annotations-by-prefix","title":"Deleting axiom annotations by prefix","text":"
        # adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\n\n# delete triples\nDELETE {\n  ?anno ?property ?value .\n}\nWHERE {\n  # the variable property is either synonym_type: or source:\n  VALUES ?property { synonym_type: source: }\n  # structure of variable value and variable anno\n  ?anno a owl:Axiom ;\n         owl:annotatedSource ?s ;\n         owl:annotatedProperty ?p ;\n         owl:annotatedTarget ?o ;\n         ?property ?value .\n  # filter out the variable value which start with \"ICD10EXP:\"\n  FILTER(STRSTARTS(STR(?value),\"ICD10EXP:\"))\n}\n
        "},{"location":"reference/sparql-reference/#replacing","title":"Replacing","text":""},{"location":"reference/sparql-reference/#replace-oboinowlsource-with-oboinowlhasdbxref-in-synonyms-annotations","title":"Replace oboInOwl:source with oboInOwl:hasDbXref in synonyms annotations","text":"

        adaptable for replacing annotations properties on particular axioms

        # adding prefixes used\nprefix owl: <http://www.w3.org/2002/07/owl#>\nprefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nprefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n\n# delete triples where the relation is oboInOwl:source\nDELETE {\n    ?ax oboInOwl:source ?source .\n}\n# insert triples where the variables ax and source defined above are used, but using oboInOwl:hasDbXref instead\nINSERT {\n    ?ax oboInOwl:hasDbXref ?source .\n}\nWHERE\n{\n  # restricting to triples where the property variable is in this list\n  VALUES ?property { oboInOwl:hasExactSynonym oboInOwl:hasNarrowSynonym  oboInOwl:hasBroadSynonym oboInOwl:hasCloseSynonym oboInOwl:hasRelatedSynonym } .\n  # order of the variables in the triple\n  ?entity ?property ?value .\n  # structure on which the variable ax and source applies\n  ?ax rdf:type owl:Axiom ;\n    owl:annotatedSource ?entity ;\n    owl:annotatedTarget ?value ;\n    owl:annotatedProperty ?property ;\n    oboInOwl:source ?source .\n  # filtering out triples where entity is an IRI\n  FILTER (isIRI(?entity))\n}\n
        "},{"location":"reference/synonyms-obo/","title":"Synonyms in OBO","text":"

        A synonym indicates an alternative name for a term. Terms can have multiple synonyms.

        "},{"location":"reference/synonyms-obo/#the-scope-of-a-synonym-may-fall-into-one-of-four-categories","title":"The scope of a synonym may fall into one of four categories:","text":""},{"location":"reference/synonyms-obo/#exact","title":"Exact","text":"

        The definition of the synonym is exactly the same as primary term definition. This is used when the same class can have more than one name.

        For example, hereditary Wilms' tumor has the exact synonoym familial Wilms' tumor.

        Additionally, translations into other languages are listed as exact synonyms. For example, the Plant Ontology list both Spanish and Japanese translations as exact synonyms; e.g. anther wall has exact synonym \u2018pared de la antera\u2019 (Spanish) and \u2018\u846f\u58c1 \u2018(Japanese).

        "},{"location":"reference/synonyms-obo/#narrow","title":"Narrow","text":"

        The definition of the synonym is the same as the primary definition, but has additional qualifiers.

        For example, pod is a narrow synonym of fruit.

        Note - when adding a narrow synonym, please first consider whether a new subclass should be added instead of a narrow synonym. If there is any uncertainty, start a discussion on the GitHub issue tracker.

        "},{"location":"reference/synonyms-obo/#broad","title":"Broad","text":"

        The primary definition accurately describes the synonym, but the definition of the synonym may encompass other structures as well. In some cases where a broad synonym is given, it will be a broad synonym for more than one ontology term.

        For example, Cyst of eyelid has the broad synonym Lesion of the eyelid.

        Note - when adding a broad synonym, please first consider whether a new superclass should be added instead of a broad synonym. If there is any uncertainty, start a discussion on the GitHub issue tracker.

        "},{"location":"reference/synonyms-obo/#related","title":"Related","text":"

        This scope is applied when a word of phrase has been used synonymously with the primary term name in the literature, but the usage is not strictly correct. That is, the synonym in fact has a slightly different meaning than the primary term name. Since users may not be aware that the synonym was being used incorrectly when searching for a term, related synonyms are included.

        For example, Autistic behavior has the related synonym Autism spectrum disorder.

        "},{"location":"reference/synonyms-obo/#synonym-types","title":"Synonym types","text":"

        Synonyms can also be classified by types. The default is no type. The synonym types vary in each ontology, but some commonly used synonym types include:

        • abbreviation - to indicate the synonym is an abbreviation. Note the scope for an acronym should be determined on a case-by-case basis. Not all acronyms are necessarily exact.
        • ambiguous - to indicate the synonym is open to more than one interpretation; may have a double meaning
        • dubious synonym - to indicate the synonym may be suspect
        • layperson term - to indicate the synonym is common language (used by the Human Phenotype Ontology)
        • plural form - indicating the form of the term that means more than one
        • UK spelling - the english language spelling that is used in the United Kingdom (UK) but not in the United States (US)
        "},{"location":"reference/synonyms-obo/#database-cross-references","title":"Database cross references","text":"

        Whenever possible, database cross-references (dbxrefs) for synonyms should be provided, to indicate the publication that used the synonym. References to PubMed IDs should be in the format PMID:XXXXXXX (no space). However, dbxrefs for synonyms are not mandatory in most ontologies.

        "},{"location":"reference/tables-and-triples/","title":"Tables and Triples","text":"

        Tables and triples seem very different. Tables are familiar and predictable. Triples are weird and floppy. SQL is normal, SPARQL is bizarre, at least at first.

        Tables are great, and they're the right tool for a lot of jobs, but they have their limitations. Triples shine when it comes to merging heterogeneous data. But it turns out that there's a clear path from tables to triples, which should help make RDF make more sense.

        "},{"location":"reference/tables-and-triples/#tables","title":"Tables","text":"

        Tables are great! Here's a table!

        first_name last_name Luke Skywalker Leia Organa Darth Vader Han Solo

        You won't be surprised to find out that tables have rows and columns. Often each row corresponds to some thing that we want to talk about, such as a fictional character from Star Wars. Each column usually corresponds to some sort of property that those things might have. Then the cells contain the values of those properties for their respective row. We take some sort of complex information about the world, and we break it down along two dimensions: the things (rows) and their properties (columns).

        "},{"location":"reference/tables-and-triples/#primary-keys","title":"Primary Keys","text":"

        Tables are great! We can add another name to our table:

        first_name last_name Luke Skywalker Leia Organa Darth Vader Han Solo Anakin Skywalker

        Hmm. That's a perfectly good table, but it's not capturing the information that we wanted. It turns out (Spoiler Alert!) that Anakin Skywalker is Darth Vader! We might have thought that the rows of our table were describing individual people, but it turns out that they're just describing individual names. A person can change their name or have more than one name.

        We want some sort of identifier that lets us pick out the same person, and distinguish them from all the other people. Sometimes there's a \"natural key\" that we can use for this purpose: some bit of information that uniquely identifies a thing. When we don't have a natural key, we can generate an \"artificial key\". Random strings and number can be good artificial keys, but sometimes a simple incrementing integer is good enough.

        The main problem with artificial keys is that it's our job to maintain the link between the thing and the identifier that we gave it. We prefer natural keys because we just have to inspect that thing (in some way) to figure out what to call it. Even when it's possible, sometimes that's too much work. Maybe we could use a DNA sequence as a natural key for a person, but it probably isn't practical. We do use fingerprints and facial recognition, for similar things, though.

        (Do people in Star Wars even have DNA? Or just midichlorions?)

        Let's add a column with an artificial key to our table:

        sw_id first_name last_name 1 Luke Skywalker 2 Leia Organa 3 Darth Vader 4 Han Solo 3 Anakin Skywalker

        This is our table of names, allowing a given person to have multiple names. But what we thought we wanted was a person table with one row for each person, like this:

        sw_id first_name last_name 1 Luke Skywalker 2 Leia Organa 3 Darth Vader 4 Han Solo

        In SQL we could assert that the \"sw_id\" column of the person table is a PRIMARY KEY. This means it must be unique. (It probably shouldn't be NULL either!)

        The names in the person table could be the primary names that we use in our Star Wars database system, and we could have another alternative_name table:

        sw_id first_name last_name 3 Anakin Skywalker"},{"location":"reference/tables-and-triples/#holes","title":"Holes","text":"

        Tables are great! We can add more columns to our person table:

        sw_id first_name last_name occupation 1 Luke Skywalker Jedi 2 Leia Organa princess 3 Darth Vader 4 Han Solo scoundrel

        The 2D pattern of a table is a strong one. It not only provides a \"slot\" (cell) for every combination of row and column, it also makes it very obvious when one of those slots is empty. What does it mean for a slot to be empty? It could mean many things.

        For example, in the previous table in the row for Darth Vader, the cell for the \"occupation\" column is empty. This could mean that:

        • we don't know whether he has an occupation
        • we know that he has an occupation, but we don't know which occupation it is.
        • we might know, but we haven't bothered to write it down yet
        • we might know, but it doesn't fit nicely into the New Republic Standard Registry of Occupations; in other words, we know what his occupation is, but including it here would violate a constraint on our database
        • we specifically know that he doesn't have an occupation; we triple-checked
        • we know more generally (Spoiler Alert!!) that he's dead, and dead people can't have an occupation.

        I'm sure I haven't captured all the possibilities. The point is that there's lot of possible reasons why a cell would be blank. So what can we do about it?

        If our table is stored in a SQL database, then we have the option of putting a NULL value in the cell. NULL is pretty strange. It isn't TRUE and it isn't FALSE. Usually NULL values are excluded from SQL query results unless you are careful to ask for them.

        The way that NULL works in SQL eliminates some of the possibilities above. SQL uses the \"closed-world assumption\", which is the assumption that if a statement is true then it's known to be true, and conversely that if it's not known to be true then it's false. So if Anakin's occupation is NULL in a SQL database, then as far as SQL is concerned, we must know that he doesn't have an occupation. That might not be what you were expecting!

        The Software Carpentry module on Missing Data has more information.

        "},{"location":"reference/tables-and-triples/#multiple-values","title":"Multiple Values","text":"

        Tables are great! Let's add even more information to our table:

        sw_id first_name last_name occupation enemy 1 Luke Skywalker Jedi 3 2 Leia Organa princess 3 3 Darth Vader 1,2,4 4 Han Solo scoundrel 3

        We're trying to say that Darth Vader is the enemy of everybody else in our table. We're using the primary key of the person in the enemy column, which is good, but we've ended up with multiple values in the \"enemy\" column for Darth Vader.

        In any table or SQL database you could make the \"enemy\" column a string, pick a delimiter such as the comma, and concatenate your values into a comma-separated list. This works, but not very well.

        In some SQL databases, such as Postgres, you could given the \"enemy\" column an array type, so it can contain multiple values. You get special operators for querying inside arrays. This can work pretty well.

        The usual advice is to break this \"one to many\" information into a new \"enemy\" table:

        sw_id enemy 1 3 2 3 3 1 3 2 3 4 4 1

        Then you can JOIN the person table to the enemy table as needed.

        "},{"location":"reference/tables-and-triples/#sparse-tables","title":"Sparse Tables","text":"

        Tables are great! Let's add even more information to our table:

        sw_id first_name last_name occupation father lightsaber_color ship 1 Luke Skywalker Jedi 3 green 2 Leia Organa princess 3 3 Darth Vader red 4 Han Solo scoundrel Millennium Falcon

        A bunch of these columns only apply to a few rows. Now we've got a lot more NULLs to deal with. As the number of columns increases, this can become a problem.

        "},{"location":"reference/tables-and-triples/#property-tables","title":"Property Tables","text":"

        Tables are great! If sparse tables are a problem, then let's try to apply the same solution that worked for the \"many to one\" problem in the previous section.

        name table:

        sw_id first_name last_name 1 Luke Skywalker 2 Leia Organa 3 Darth Vader 4 Han Solo 3 Anakin Skywalker

        occupation table:

        sw_id occupation 1 Jedi 2 princess 4 scoundrel

        enemy table:

        sw_id enemy 1 3 2 3 3 1 3 2 3 4 4 1

        father table:

        sw_id father 1 3 2 3

        lightsaber_color table:

        sw_id lightsaber_color 1 green 3 red

        ship table:

        sw_id ship 4 Millennium Falcon

        Hmm. Yeah, that will work. But every query we write will need some JOINs. It feels like we've lost something.

        "},{"location":"reference/tables-and-triples/#entity-attribute-value","title":"Entity, Attribute, Value","text":"

        Tables are great! But there's such a thing as too many tables. We started out with a table with a bunch of rows and a bunch of columns, and ended up with a bunch of tables with a bunch of rows but just a few columns.

        I have a brilliant idea! Let's combine all these property tables into just one table, by adding a \"property\" column!

        sw_id property value 1 first_name Luke 2 first_name Leia 3 first_name Darth 4 first_name Han 5 first_name Anakin 1 last_name Skywalker 2 last_name Skywalker 3 last_name Vader 4 last_name Solo 5 last_name Skywalker 1 occupation Jedi 2 occupation princess 4 occupation scoundrel 1 enemy 3 2 enemy 3 3 enemy 1 3 enemy 2 3 enemy 4 4 enemy 1 1 father 3 2 father 3 1 lightsaber_color green 3 lightsaber_color red 4 ship Millenium Falcon

        It turns out that I'm not the first one to think of this idea. People call it \"Entity, Attribute, Value\" or \"EAV\". People also call it an \"anti-pattern\", in other words: a clear sign that you've made a terrible mistake.

        There are lots of circumstances in which one big, extremely generic table is a bad idea. First of all, you can't do very much with the datatypes for the property and value columns. They kind of have to be strings. It's potentially difficult to index. And tables like this are miserable to query, because you end up with all sorts of self-joins to handle.

        But there's at least one use case where it turns out to work quite well...

        "},{"location":"reference/tables-and-triples/#merging-tables","title":"Merging Tables","text":"

        Tables are great! Until they're not.

        The strong row and column structure of tables makes them great for lots of things, but not so great for merging data from different sources. Before you can merge two tables you need to know all about:

        1. how the columns are structured
        2. what the rows mean
        3. what the cells mean

        So you need to know the schemas of the two tables before you can start merging them together. But if you happen to have two EAV tables then, as luck would have it, they already have the same schema!

        You also need to know that you're talking about the same things: the rows have to be about the same things, you need to be using the same property names for the same things, and the cell values also need to line up. If only there was an open standard for specifying globally unique identifiers...

        Yes, you guessed it: URLs (and URNs and URIs and IRIs)! Let's assume that we use the same URLs for the same things across the two tables. Since we're a close-knit community, we've come to an agreement on a Star Wars data vocabulary.

        URLs are annoyingly long to use in databases, so let's use standard \"sw\" prefix to shorten them. Now we have table 1:

        sw_id property value sw:1 sw:first_name Luke sw:2 sw:first_name Leia sw:3 sw:first_name Darth sw:4 sw:first_name Han sw:5 sw:first_name Anakin sw:1 sw:last_name Skywalker sw:2 sw:last_name Skywalker sw:3 sw:last_name Vader sw:4 sw:last_name Solo sw:5 sw:last_name Skywalker sw:1 sw:occupation sw:Jedi sw:2 sw:occupation sw:princess sw:4 sw:occupation sw:scoundrel

        and table 2:

        sw_id property value sw:1 sw:enemy sw:3 sw:2 sw:enemy sw:3 sw:3 sw:enemy sw:1 sw:3 sw:enemy sw:2 sw:3 sw:enemy sw:4 sw:4 sw:enemy sw:1 sw:1 sw:father sw:3 sw:2 sw:father sw:3 sw:1 sw:lightsaber_color green sw:3 sw:lightsaber_color red sw:4 sw:ship Millenium Falcon

        To merge these two tables, we simple concatenate them. It couldn't be simpler.

        Wait, this looks kinda familiar...

        "},{"location":"reference/tables-and-triples/#rdf","title":"RDF","text":"

        These tables are pretty much in RDF format. You just have to squint a little!

        • sw_id == subject
        • property == predicate
        • value == object

        Each row of the table is a subject-predicate-object triple. Our subjects, predicates, and some objects are URLs. We also have some literal objects. We could turn this table directly into Turtle format with a little SQL magic (basically just concatenating strings):

        SELECT \"@prefix sw: <http://example.com/sw_> .\"\nUNION ALL\nSELECT \"\"\nUNION ALL\nSELECT\nsw_id\n|| \" \"\n|| property\n|| \" \"\n|| IF(\nINSTR(value, \":\"),\nvalue,                -- CURIE\n\"\"\"\" || value || \"\"\"\" -- literal\n)\n|| \" .\"\nFROM triple_table;\n

        The first few lines will look like this:

        @prefix sw: <http://example.com/sw_> .\n\nsw:1 sw:first_name \"Luke\" .\nsw:2 sw:first_name \"Leia\" .\nsw:3 sw:first_name \"Darth\" .\nsw:4 sw:first_name \"Han\" .\n

        Two things we're missing from RDF are language tagged literals and typed literals. We also haven't used any blank nodes in our triple table. These are easy enough to add.

        The biggest thing that's different about RDF is that it uses the \"open-world assumption\", so something may be true even though we don't have a triple asserting that it's true. The open-world assumption is a better fit than the closed-world assumption when we're integrating data on the Web.

        "},{"location":"reference/tables-and-triples/#conclusion","title":"Conclusion","text":"

        Tables are great! We use them all the time, they're strong and rigid, and we're comfortable with them.

        RDF, on the other hand, looks strange at first. For most common data processing, RDF is too flexible. But sometimes flexiblity is the most important thing.

        The greatest strength of tables is their rigid structure, but that's also their greatest weakness. We saw a number of problems with tables, and how they could be overcome by breaking tables apart into smaller tables, until we got down to the most basic pattern: subject-predicate-object. Step by step, we were pushed toward RDF.

        Merging tables is particularly painful. When working with data on the Web, merging is one of the most common and important operations, and so it makes sense to use RDF for these tasks. If self-joins with SQL is the worst problem for EAV tables, then SPARQL solves it.

        These examples show that it's not really very hard to convert tables to triples. And once you've seen SPARQL, the RDF query language, you've seen one good way to convert triples to tables: SPARQL SELECT results are just tables!

        Since it's straightforward to convert tables to triples and back again, make sure to use the right tool for the right job. When you need to merge heterogeneous data, reach for triples. For most other data processing tasks, use tables. They're great!

        "},{"location":"reference/troublehooting-robot/","title":"Lessons learned from troubleshooting ROBOT","text":""},{"location":"reference/troublehooting-robot/#prerequisites","title":"Prerequisites","text":"
        • Review tutorial on Ontology pipelines with ROBOT and SPARQL
        "},{"location":"reference/troublehooting-robot/#learning-objectives","title":"Learning objectives","text":"

        Learn common mistakes when using ROBOT and how to troubleshoot and fix them.

        "},{"location":"reference/troublehooting-robot/#lessons-learned","title":"Lessons learned","text":""},{"location":"reference/troublehooting-robot/#copying-pasting-especially-in-google-docs-can-introduce-unexpected-format-changes-in-row-2-of-the-template","title":"Copying-pasting (especially in google docs) can introduce unexpected format changes in row 2 of the template:","text":"
        • Note that these format changes are not always visible.
        • The most common typos are:
        • introduction of space in cells
        • single quotes are changed into apostrophes
        • These errors are most commonly reported as \"MANCHESTER PARSE ERROR\"
        "},{"location":"reference/troublehooting-robot/#restrictions-for-the-first-2-rows-of-a-robot-template","title":"Restrictions for the first 2 rows of a ROBOT template:","text":"
        • In the same column, it is OK to have a header string (row #1) with no template string (row #2).
        • the information in the column is useful to curators (e.g. term labels) but will be ignored by ROBOT.
        • In the same column, if there is a template string (row #2), there MUST be a header string (row #1)
        • if the row #1 is missing, the error will be reported as: COLUMN MISMATCH ERROR the template string in column 1 must have a corresponding header in table \"tmp/merge_template.tsv\u201d
        "},{"location":"reference/troublehooting-robot/#the-content-of-the-template-break-some-obo-or-protege-rules","title":"The content of the template break some OBO or Protege rules","text":"
        • for example, Protege only allows one comment on a class. If you are adding new comments to terms via ROBOT, you will get an error if a comment already exists on a term.
        • error will be reported as: OBO STRUCTURE ERROR Ontology does not conform to OBO structure rules: multiple comment tags not allowed.
        • Note: If you run ROBOT and get an error, it may create a blank file. You need to discard the changes and/or open a new branch. The error with the optional \u201cnull\u201d is when the mondo-edit file is empty. Optional.get() cannot be called on an absent value Use the -vvv option to show the stack trace. Use the --help option to see usage information make: *** [mondo.Makefile:454: merge_template] Error 1
        "},{"location":"reference/troublehooting-robot/#new-id-prefix","title":"New ID prefix:","text":"
        • ROBOT template can be used to add axioms containing terms (and IDs) from other ontologies which were recently imported
        • The ID prefix is not recognized by ROBOT, and the error is reported as MANCHESTER PARSE ERROR
        • Resolution: the ontology Makefile should be updated to include the prefix in the merge_template.
        • Note: If you run ROBOT and get an error, it may create a blank file. You need to discard the changes and/or open a new branch.
        "},{"location":"reference/troublehooting-robot/#example-templates","title":"Example templates","text":"
        • Example templates from Mondo are available here
        • Example templates from OBI are available here
        "},{"location":"reference/troublehooting-robot/#contributors","title":"Contributors","text":"
        • Sabrina Toro (ORCID)
        • Nicole Vasilevsky (ORCID)
        "},{"location":"reference/wikidata/","title":"A reference guide to Wikidata","text":""},{"location":"reference/wikidata/#a-reference-guide-to-wikidata-and-its-connection-to-obo","title":"A reference guide to Wikidata and its connection to OBO","text":""},{"location":"reference/wikidata/#introduction-to-wikidata","title":"Introduction to Wikidata","text":"
        • Wikidata in one page
        • Wikidata
        • Wikidata Query Service (UI)
        • Wikidata Query Serivce (Machine readable)
        • Wikidata API
        "},{"location":"reference/wikidata/#obo-in-wikidata","title":"OBO in Wikidata","text":"
        • Related wikidata OBO properties
        • Wikidata OBO properties and curation catalogs
        • Related wikidata OBO items
        "},{"location":"reference/wikidata/#licenses","title":"Licenses","text":"

        On Wikidata the following licenses applies:

        \"All structured data from the main, Property, Lexeme, and EntitySchema namespaces is available under the Creative Commons CC0 License; text in the other namespaces is available under the Creative Commons Attribution-ShareAlike License\"

        Adding non-CC0 licensed OBO ontologies in full might be problematic due to * License stacking

        IANL, but my understanding is that as long as only URI mappings are created to OBO ontology terms no licenses are breached (even if the ontology is not CC0)

        "},{"location":"reference/wikidata/#why-map-obo-uris-to-wikidata","title":"Why map OBO uris to Wikidata?","text":"
        • Wikidata is a hub in the Linked Open Data cloud; it is, thus, a good place to crowdsource database cross references (e.g. between the Cell Ontology and FMA).
        • Wikidata provides direct links between items and Wikipedia, as well as a proxy for how many different Wikipedia languages are available for each concept. These can be acessed via SPARQL queries (e.g https://w.wiki/6Tpd). Wikipedia links are useful for adding explainability to applications, and language count can be a proxy for popularity of concepts.
          • E.g. The top popular concepts with a CL ID are \"Cell\", \"Red Blood Cell\" and \"Neuron\" with over 100 Wikipedia languages each (https://w.wiki/6TyY)
        • Wikidata is multilingual and most (if not all) OBO ontologies are English-only. Wikidata provides infrastructure to record preferred labels accross 200+ languages (not sure the current number).
        "},{"location":"reference/wikidata/#notable-differences","title":"Notable differences","text":"
        • Wikidata's model is definition-free. The meaning of Wikidata terms by a combination of the label, description, aliases and statements.
        • Wikidata does not support reasoning, as supporting inconsistencies are a feature (not a bug). It is so to handle knowledge diversity.
        "},{"location":"reference/wikidata/#literature","title":"Literature","text":"
        • Wikidata as a semantic framework for the Gene Wiki initiative
        • A protocol for adding knowledge to Wikidata: aligning resources on human coronaviruses
        "},{"location":"reference/wikidata/#tools","title":"Tools","text":"
        • Scholia
        • Chlambase
        • Wikigenomes
        • Science Stories
        • Entity Explosion
        "},{"location":"teaching/case-studies/","title":"Learning Outcomes for Critical Path Tutorial","text":"
        1. Understand the value of URIs as global identifiers and the potential shortcomings.
        2. Having a basic picture of the flagship efforts of the Semantic Web.
        3. Being aware of some of the central Semantic Web applications in the biomedical domain.
        4. Having a cursory understanding of how linked data can help to power your Critical Path data analysis problems.
        "},{"location":"teaching/case-studies/#interesting-case-studies-to-talk-about","title":"Interesting Case Studies to talk about:","text":"
        1. The Experimental Factor Ontology: from controlled vocabulary to integrated application ontology driving drug target identification.
        2. From barely structured data via data dictionaries to semantic data integration:
        3. International HundredK+ Cohorts Consortium (IHCC) data harmonization case study: How to get from messy, individual data dictionaries for COHORT data to an integrated resource for browsing and grouping.
        4. The EJPRD story:
          • Registry level integration using a semantic metadata model
          • Common data elements in rare disease registration.
        "},{"location":"teaching/case-studies/#efo-case-study","title":"EFO case study","text":"
        1. Build controlled vocabulary
        2. Look a bit at the anatomy of a term
        3. So what happens now?
          1. The story of scientific database curation
          2. The integrator hub with the killer use case comes along
          3. Now the vocabulary is getting \u201cforced\u201d onto other databases that want to be part (and have to be part)
          4. The number of terms needed shoot up exponentially - external ontologies need two be integrated
            1. Uberon
            2. Mondo
              1. Why Mondo and not DO?
            3. Finally: better, more specialised hierarchies
            4. Its hard to re-use. (Measurement story)
          5. Output data of integrator hub can now be integrated even higher (e.g. disease to gene networks)
          6. Individual sources can also be integrated individually
        4. Stories like this happen all the time: The SCDO story
          1. First started building a vocab
          2. Then using ROBOT
          3. Then linking OBO terms
          4. Then applying for OBO membership
          5. Then using OBO purls and re-using OBO terms
          6. More to come
        "},{"location":"teaching/case-studies/#ihcc-story","title":"IHCC story","text":"
        1. Cohort data are scattered and there is no easy way to group data across cohorts
        2. Even just finding the right cohort can be difficult
        3. Data dictionaries are often just spreadsheets on someones computer
        4. Data dictionaries do not have rich metadata (you dont know data dictionary category or value pertains to a disease)
        5. What to do:
        6. Build controlled vocabulary
        7. Map data dictionaries to a controlled vocabulary
        8. Build ontological model from controlled terms rich enough to group the data for the use cases at hand
        9. Design a process that makes the above scalable
        10. Show examples
        11. So now, we want enable the discovery of data across these cohorts.
        12. Build GECKO
        13. Assign data dictionary elements to IDs and publish as \"Linked Data\" (browse here)
        14. Build mapping pipeline
          1. Check example google sheet
          2. Link IDs to ontology terms
        15. These links can now be used to group the metadata for identifying cohorts
        "},{"location":"teaching/case-studies/#ejprd-story","title":"EJPRD story","text":"
        1. Rare disease registries are scattered across the web and there is no easy way to search across all
        2. EJPRD is developing two metadata schemas:
        3. On Registry level, they are building the metadata model which is reusing some standard vocabularies such as dcat. There is not that much \"semantics\" here - it really is a metadata model
        4. On Record level, they are building the Clinical Data Elements (CDE) Semantic Model, see for example the core model.
        5. The idea is that registries publish their metadata (and eventually data) as linked data that can be easily queried using the above models. One of the most major problems is the size of the project and competing voices (\"If its not RDF its not FAIR\"), but also the sheer scale of the technical issue: many of the so called registries are essentially excel spreadsheets on an FTP server.
        "},{"location":"tutorial/basic-dl-query/","title":"DL query","text":"

        This tutorial is based off https://ontology101tutorial.readthedocs.io/en/latest/DL_QueryTab.html Created by: Melissa Haendel, Chris Mungall, David Osumi-Sutherland, Matt Yoder, Carlo Torniai, and Simon Jupp

        "},{"location":"tutorial/basic-dl-query/#dl-query-tab","title":"DL query tab","text":"

        The DL query tab shown below provides an interface for querying and searching an ontology. The ontology must be classified by a reasoner before it can be queried in the DL query tab.

        For this tutorial, we will be using cc.owl which can be found here.

        Open cc.owl in Protege (use Open from URL and enter the https://raw.githubusercontent.com/OHSUBD2K/BDK14-Ontologies-101/master/BDK14_exercises/basic-dl-query/cc.owl). Run the reasoner. Navigate to the DL Query tab.

        Type organelle into the box, and make sure subclasses and direct subclasses are ticked.

        You can type any valid OWL class expression into the DL query tab. For example, to find all classes whose members are part_of a membrane, type part_of some membrane and click execute. Note the linking underscore for this relation in this ontology. Some ontologies do not use underscores for relations, whereby you'd need single quotes (i.e. part of).

        The OWL keyword and can be used to make a class expression that is the intersection of two class expressions. For example, to find the classes in the red area below, we want to find subclasses of the intersection of the class organelle and the class endoplasmic reticulum part

        Note that we do not need to use the part grouping classes in the gene ontology (GO). The same results can be obtained by querying for the intersection of the class organelle and the restriction part_of some ER \u2013 try this and see.

        We can also ask for superclasses by ticking the boxes as below:

        The or keyword is to used to create a class expression that is the union of two class expressions. For example: (WARNING: or is not supported by ELK reasoner)

        This is illustrated by the red area in the following Venn diagram:

        For further exercises, please see https://ontology101tutorial.readthedocs.io/en/latest/EXERCISE_BasicDL_Queries.html

        "},{"location":"tutorial/custom-qc/","title":"Tutorial: How to add custom quality checks with ODK","text":"

        This tutorial explains adding quality checks not included in the ROBOT Report.

        "},{"location":"tutorial/custom-qc/#prerequisites","title":"Prerequisites","text":"

        You have completed the tutorials:

        1. Getting started with your repo
        2. 20 minute complete ODK walk-through
        "},{"location":"tutorial/custom-qc/#custom-quality-checks","title":"Custom Quality Checks","text":"
        1. Identify a quality issue in your ontology. For the sake of this tutorial, we've added the annotation oboInOwl:creation_date to the root_node in the CAT Ontology.
        1. Write the SPARQL query to detect the error you want to check. For example, check the value type for the annotation oboInOwl:creation_date. It will return the class with the annotation if it's not of type xsd:dateTime.
        PREFIX oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nPREFIX xsd: <http://www.w3.org/2001/XMLSchema#>\n\nSELECT ?cls WHERE\n{\n    ?cls oboInOwl:creation_date ?date .\n  FILTER(DATATYPE(?date) != xsd:dateTime)\n}\n
        1. Save the SPARQL query in the src/sparql folder and name it [violation name]-violation.sparql. In the case of the tutorial, date-as-string-violation.sparql

        2. Add the check to the ODK config file. In the previous tutorial, this is located at ~/cato/src/ontology/cato-odk.yaml. Inside robot_report, add custom_sparql_checks

        robot_report:\nuse_labels: TRUE\nfail_on: ERROR\nreport_on:\n- edit\ncustom_sparql_checks:\n- date-as-string\n
        1. Update the repository. After adding the custom SPARQL check, you need to update your pipeline to take this check when testing the ontology.
        sh run.sh make update_repo\n
        1. Test the check. You can run the checks and verify the expected result.

        sh run.sh make sparql_test\nFAIL Rule ../sparql/date-as-string-violation.sparql: 1 violation(s)\ncls\nhttp://purl.obolibrary.org/obo/CATO_0000000\n
        To fix this issue, we need to change the annotation value to xsd:dateTime, and run the test again to certify everything is good this time.

        sh run.sh make sparql_test\nPASS Rule ../sparql/date-as-string-violation.sparql: 0 violation(s)\n

        Push the changes to your repository, and the custom checks will run whenever creating a new Pull Request, as detailed here.

        "},{"location":"tutorial/custom-qc/#custom-checks-available-in-odk","title":"Custom checks available in ODK","text":"

        There are several checks already available in the ODK. If you'd like to add them, add the validation name in your ODK config file.

        1. owldef-self-reference: verify if the term uses its term as equivalent
        2. redundant-subClassOf: verify if there are redundant subclasses between three classes
        3. taxon-range: verify if the annotations present_in_taxon or never_in_taxon always use classes from NCBITaxon
        4. iri-range: verify if the value for the annotations never_in_taxon, present_in_taxon, foaf:depicted_by, oboInOwl:inSubset and dcterms:contributor are not an IRI
        5. iri-range-advanced: same as iri-range plus check for rdfs:seeAlso annotation
        6. label-with-iri: verify if there is IRI in the label
        7. multiple-replaced_by: verify if an obsolete term has multiple replaced_by terms
        8. term-tracker-uri: verify if the value for the annotation term_tracker_item is not URI
        9. illegal-date: verify if the value for the annotations dcterms:date, dcterms:issued and dcterms:created are of type xds:date and use the pattern YYYY-MM-DD
        "},{"location":"tutorial/custom-qc/#custom-robot-report-in-odk","title":"Custom ROBOT Report in ODK","text":"

        ROBOT report can also have custom quality checks.

        1. First, you need to add custom_profile: TRUE, in the ODK config file.

        robot_report:\nuse_labels: TRUE\nfail_on: ERROR\ncustom_profile: TRUE\nreport_on:\n- edit\ncustom_sparql_checks:\n- date-as-string\n
        2. Create a SPARQL query with your quality check and save it at src/sparql. There isn't a restriction on the file name. However, it should return the variables ?entity ?property ?value.

        SELECT DISTINCT ?entity ?property ?value \nWHERE {\n  ...\n}\n
        1. Add the path to the SPARQL query in the src/ontology/profile.txt file.

        ERROR   file:../sparql/<file name>.sparql\n
        For more detail on the profile file, see here.

        1. Test your check. You'll find the failed cases on the same report for the ROBOT report at src/ontology/reports/cato-edit.owl-obo-report.tsv. The Rule Name will be the SPARQL file name.
        sh run.sh make test\n
        "},{"location":"tutorial/custom-qc/#how-to-choose-between-custom-sparql-or-custom-robot-report","title":"How to choose between Custom SPARQL or Custom ROBOT report","text":"
        • If your test can return the exact three variables entity, property and value -> ROBOT report
        • If you need to return more detailed information -> Custom SPARQL
        • If you want the results of your custom tests in the ROBOT report file -> ROBOT report

        Keep in mind that after changing the profile.txt, you won't get any upcoming updates, and you need to update manually.

        "},{"location":"tutorial/disjointness/","title":"Disjointness","text":"

        This tutorial is based off https://ontology101tutorial.readthedocs.io/en/latest/Disjointness.html Created by: Melissa Haendel, Chris Mungall, David Osumi-Sutherland, Matt Yoder, Carlo Torniai, and Simon Jupp

        For this excercise, we will be using chromosome-parts-interim.owl file that can be found here

        "},{"location":"tutorial/disjointness/#disjointness_1","title":"Disjointness","text":"

        In the chromosome-parts-interim.owl file, at the top of our class hierarchy we have cell, cell part, chromosomal part, intracellular part, organelle and organelle part. By default, OWL assumes that these classes can overlap, i.e. there are individuals who can be instances of more than one of these classes. We want to create a restriction on our ontology that states these classes are different and that no individual can be a member of more than one of these classes. We can say this in OWL by creating a disjoint classes axiom.

        If you do not already have it open, load your previous ontology that was derived from the 'interim file'. Note: you can open a recent file by going to File-> Open Recent

        We want to assert that organelle and organelle part are disjoint. To do this first select the organelle class. In the class 'Description' view, scroll down and select the (+) button next to Disjoint With. You are presented with the now familiar window allowing you to select, or type, to choose a class. In the hierarchy panel, you can use CTRL to select multiple classes. Select 'organelle part' as disjoint with organelle.

        Note that the directionality is irrelevant. Prove this to yourself by deleting the disjoint axiom, and adding it back from organelle part.

        "},{"location":"tutorial/disjointness/#reasoning-and-inconsistency-checking","title":"Reasoning and inconsistency checking","text":"

        We have introduced a deliberate mistake into the ontology. We previously asserted that intracellular organelle part is a subclass of both organelle part and organelle. We have now added an axiom stating that organelle and organelle part are disjoint. We can use the reasoner to check the consistency of our ontology. The reasoner should detect our contradiction.

        Prot\u00e9g\u00e9 comes with several reasoners, and more can be installed via the plugins mechanism (see plugins chapter). Select a reasoner from the Reasoner menu (Elk, HermiT, Pellet, or Fact++ will work - we mostly use ELK). Once a reasoner is highlighted, select 'Start reasoner' from the menu. Note: you may get several pop-boxes/warnings, ignore those.

        The intracellular organelle part class will have changed to red indicating that the class is now unsatisfiable.

        You can also see unsatisfiable classes by switching to the inferred view.

        Here you will a special class called Nothing. When we previously said that all OWL classes are subclasses of OWL Thing. OWL Nothing is a leaf class or bottom class of your ontology. Any classes that are deemed unsatisfiable by the reasoner are shown as subclasses or equivalent to OWL Nothing. The inferred view will show you all subclasses of Nothing.

        Once the ontology is classified, inferred statements or axioms are shown in the various panels with a light-yellow shading. The class description for intracellular organelle part should look something like the screen shot below. You will see that the class has been asserted equivalent to the Nothing class. Inside this statement, a small question mark icon appears, clicking this will get an explanation from the reasoner for this inconsistency.

        Select the (?) icon to get an explanation for this inconsistency. The explanation shows the axioms involved. We see the disjoint class axiom alongside the two subclass axioms are causing the inconsistency. We can simply repair this ontology by removing the intracellular organelle part subClassOf organelle axiom.

        Remove the Disjoint with axiom (click the (x) beside organelle in the Description pane for intracellular organelle part), and resynchronise the reasoner from the reasoner menu.

        "},{"location":"tutorial/dosdp-odk/","title":"Using DOSDP templates in ODK Workflows","text":""},{"location":"tutorial/dosdp-odk/#preparation","title":"Preparation","text":"
        • You are set up for executing ODK workflows
        • We assume you have a modern ODK-based repository (ODK version >= 1.2.32) set up. For a tutorial on creating a new ontology repo from scratch see here.
        • We assume you have completed at least one of the general DOSDP tutorials.
        "},{"location":"tutorial/dosdp-odk/#tutorial","title":"Tutorial","text":"
        • Activate DOSDP in ODK
        • Adding a first DOSDP template
        "},{"location":"tutorial/dosdp-odk/#video","title":"Video","text":"

        This is a very unprofessional video below recorded as part of one of our trainings. It walks you through this tutorial here, with some additional examples being given and a bit of Q&A.

        "},{"location":"tutorial/dosdp-odk/#glossary","title":"Glossary","text":"
        • Template: A document with template strings that include variables which can be instantiated my a tool. For example, a ROBOT template may contain the template string SC 'part of' some % which can be instantiated by ROBOT to be transformed into an OWL axiom: SubClassOf(CATO:001 ObjectSomeValuesFrom(BFO:0000051 UBERON:123)). Similarly, DOSDP YAML files are often referred to as \"templates\" (which is appropriate). Unfortunately, we often refer to them as \"patterns\" which is not strictly the right way to name them: they are templates that encode patterns (and that only to a limited extend). We recommend to refer to the DOSDP YAML files as \"templates\".
        • Template string: See above: a single string with one or more slots for variables that can be instantiated and transformed into something else. The most important template string in DOSDP is the equivalentTo or subClassOf field: It tells DOSDP tools how to generate an OWL axiom, with which variable slots (vars).
        • Pattern: See above, often misused to mean Template. In fact, a pattern provides a general modelling solution to a problem. Patterns can often be encoded in templates, but this is often incomplete. For example, a template typically does not care about the semantics of the properties it refers to, while this is critical for a pattern. (Avoid using this when talking about DOSDP YAML files).
        • DOSDP template table: The spreadsheet (typically TSV or CSV) that contains the DOSDP variable data. The DOSDP template table is applied to the template string in the template to generate a set of OWL axioms and annotation assertions.
        "},{"location":"tutorial/dosdp-odk/#preparation_1","title":"Preparation","text":"

        This tutorial assumes you have set up an ODK repo with this config:

        id: cato\ntitle: \"Cat Anatomy Ontology\"\ngithub_org: obophenotype\ngit_main_branch: main\nrepo: cat_anatomy_ontology\nrelease_artefacts:\n  - base\n  - full\n  - simple\nprimary_release: full\nexport_formats:\n  - owl\n  - obo\n  - json\nimport_group:\n  products:\n    - id: ro\n    - id: pato\n    - id: omo\nrobot_java_args: '-Xmx8G'\n

        "},{"location":"tutorial/dosdp-odk/#activate-dosdp-in-odk","title":"Activate DOSDP in ODK","text":"

        In your src/ontology/{yourontology}-odk.yaml file, simply add the following:

        use_dosdps: true\n

        This flag activates DOSDP in ODK - without it, none of the DOSDP workflows in ODK can be used. Technically, this flag tells ODK the following things:

        1. The src/ontology/Makefile is extended as follows:
        2. A set of pipelines, or workflows, for processing patterns, e.g. pattern_schema_checks for validating all DOSDP templates,patterns to regenerate all patterns.
        3. A new directory, src/patterns, is created with the following files:
        4. src/patterns/pattern.owl: This is an ontology of your own patterns. This can be used to browse the your pattern in the form of a class hierarchy, which can help greatly to understand how they relate logically. There are some flaws in this system, like occasional unintended equivalencies between patterns, but for most uses, it is doing ok.
        5. src/patterns/definitions.owl: This is the merged ontology of all your DOSDP generated classes. Basically, if you manage your classes across multiple DOSDP patterns and tables, their generated OWL axioms will all be added to this file.
        6. src/patterns/external.txt: This file can be used to import external patterns. Just add the (p)URL to a pattern to the file, and the DOSDP pipeline will import it when you run it. We use this a lot when sharing DOSDP templates across ontologies.
        7. Two README files: one in the directory of the default DOSDP data pipeline (src/patterns/data/default/) and one in the src/patterns directory. The former points you to the place where you should put, by default, any DOSDP data tables. More about that in the next sections.

        To fully activate DOSDP in your ontology, please run:

        sh run.sh make update_repo\n

        This will:

        1. Update your ontology repository to whatever ODK you have installed in docker (v1.3, for example)
        2. Apply any changes to your configuration file. For example, the fact that you have activated the DOSDP pipeline in your config file will lead to the ODK extending your Makefile in certain ways

        "},{"location":"tutorial/dosdp-odk/#adding-a-first-simple-template","title":"Adding a first, simple template","text":"

        (1) Create a new file src/patterns/dosdp-patterns/haircoat_colour_pattern.yaml and paste the following content:

        pattern_name: haircoat_colour_pattern\npattern_iri: http://purl.obolibrary.org/obo/obo-academy/patterns/haircoat_colour_pattern.yaml\n\ndescription: \"\nCaptures the multicoloured characteristic of the fur, i.e. spotted, dotted, motley etc.\"\n\nclasses:\ncolour_pattern: PATO:0001533\ncoat_of_hair: UBERON:0010166\n\nrelations:\nhas_characteristic: RO:0000053\n\nvars:\ncolour_pattern: \"'colour_pattern'\"\n\nname:\ntext: \"%s coat of hair\"\nvars:\n- colour_pattern\n\ndef:\ntext: \"A coat of hair with a %s colour pattern.\"\nvars:\n- colour_pattern\n\nequivalentTo:\ntext: \"'coat_of_hair' and 'has_characteristic' some %s\"\nvars:\n- colour_pattern\n

        (2) Let's also create a simple template table to capture traits for our ontology.

        Note: the filename of the DOSDP template file (haircoat_colour_pattern.yaml) excluding the extension must be identical to the filename of the template table (haircoat_colour_pattern.tsv) excluding the extension.

        Let's create the new file at src/patterns/data/default/haircoat_colour_pattern.tsv.

        defined_class   colour_pattern\nCATO:0000001    PATO:0000333\n

        We are creating a minimal table here with just two columns:

        • defined_class refers to the ID for the term that is being modelled by the template (mandatory for all DOSDP templates)
        • colour_pattern refers to the variable of the same name specified in the vars: section of the DOSDP template YAML file.
        "},{"location":"tutorial/dosdp-odk/#dosdp-generate-turning-the-template-tables-into-owl-axioms","title":"DOSDP generate: Turning the template tables into OWL axioms","text":"

        Next, we will get a bit used to various commands that help us with DOSDP-based ontology development.

        Lets first try to transform the simple table above to OWL using the ODK pipeline (we always use IMP=false to skip refreshing imports, which can be a lengthy process):

        sh run.sh make ../patterns/definitions.owl -B IMP=false\n

        This process will will create the ../patterns/definitions.owl file, which is the file that contains all axioms generated by all templates you have configured. In our simple scenario, this means a simple single pattern. Let us look at definitions.owl in your favourite text editor first.

        Tip: Remember, the `-B` tells `make` to run the make command no matter what - one of the advantages of `make` is that it only runs a command again if something changed, for example, you have added something to a DOSDP template table.\n
        Tip: Looking at ontologies in text editors can be very useful, both to reviewing files and making changes! Do not be afraid, the ODK will ensure you wont break anything.\n

        Let us look in particular at the following section of the definitions.owl file:

        # Class: <http://purl.obolibrary.org/obo/CATO_0000001> (http://purl.obolibrary.org/obo/PATO_0000333 coat of hair)\n\nAnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/CATO_0000001> \"A coat of hair with a http://purl.obolibrary.org/obo/PATO_0000333 colour pattern.\"^^xsd:string)\nAnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CATO_0000001> \"http://purl.obolibrary.org/obo/PATO_0000333 coat of hair\"^^xsd:string)\nEquivalentClasses(<http://purl.obolibrary.org/obo/CATO_0000001> ObjectIntersectionOf(<http://purl.obolibrary.org/obo/UBERON_0010166> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000053> <http://purl.obolibrary.org/obo/PATO_0000333>)))\n

        These are the three axioms / annotation assertions that were created by the DOSDP pipeline. The first annotation is a simple automatically generated definition. What is odd at first glance, is that the definition reads \"A coat of hair with a http://purl.obolibrary.org/obo/PATO_0000333 colour pattern.\" - what does the PATO:0000333 IRI do in the middle of our definition? Understanding this is fundamental to the DODSP pattern workflow, because it is likely that you will have to fix cases like this from time to time.

        The DOSDP workflow is about generating axioms automatically from existing terms. For example, in this tutorial we are trying to generate terms for different kinds of hair coats for our cats, using the colour pattern (PATO:0001533) hierarchy in the PATO ontology as a basis. The only one term we have added so far is spotted (PATO:0000333). The problem is though, that dosdp-tools, the tool which is part of the ODK and responsible for the DOSDP workflows, does not know anything about PATO:0000333 unless it is already imported into the ontology. In order to remedy this situation, lets import the term:

        sh run.sh make refresh-pato\n

        ODK will automatically see that you have used PATO:0000333 in your ontology, and import it for you. Next, let us make sure that the our edit file has the correct import configured. Open your ontology in a text editor, and make sure you can find the following import statement:

        Import(<http://purl.obolibrary.org/obo/cato/patterns/definitions.owl>)\n

        Replace cato in the PURL with whatever is the ID of your own ontology. Also, do not forget to update src/ontology/catalog-v001.xml, by adding this line:

        <group id=\"Folder Repository, directory=, recursive=false, Auto-Update=false, version=2\" prefer=\"public\" xml:base=\"\">\n...\n<uri name=\"http://purl.obolibrary.org/obo/cato/patterns/definitions.owl\" uri=\"../patterns/definitions.owl\"/>\n...\n</group>\n

        Important: Remember that we have not yet told dosdp-tools about the freshly imported PATO:0000333 term. To do that, lets run the DOSDP pipeline again:

        sh run.sh make ../patterns/definitions.owl -B IMP=false\n

        A quick look at src/patterns/definitions.owl would now reveal your correctly formatted definitions:

        AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/CATO_0000001> \"A coat of hair with a spotted colour pattern.\"^^xsd:string)\n

        Now, we are ready to view our ontology (the edit file, i.e. src/ontology/cato-edit.owl) in Protege:

        Still a few things to iron out - there is an UBERON term that we still need to import, and our class is not a subclass of the CATO root node, but we had a good start.

        "},{"location":"tutorial/dosdp-odk/#re-using-externally-defined-patterns","title":"Re-using externally defined patterns","text":"

        Re-using terms is at the heart of the OBO philosophy, but when it comes to re-using axiom patterns, such as the ones we can define as part of a ROBOT template, we are (as of 2022) still in the early stages. One thing we can do to facilitate re-use is to share DOSDP templates between different projects. We do that by simply adding the URL at which the pattern is located to src/patterns/dosdp-patterns/external.txt. Note: if you are copying a URL from GitHub, make sure it is the raw url, i.e.:

        • src/patterns/dosdp-patterns/external.txt
        https://raw.githubusercontent.com/obophenotype/bio-attribute-ontology/master/src/patterns/dosdp-patterns/entity_attribute.yaml\n

        Here, we randomly decided to import a pattern defined by the Ontology of Biological Attributes (an ontology of traits such as tail length or head size), for example to represent cat traits in our Cat Ontology. After adding the above URL to our the external.txt file, we can add it to our pipeline:

        sh run.sh make update_patterns\n

        You will now see the entity_attribute.yaml template in src/patterns/dosdp-patterns. We will not do anything with this template as part of this tutorial, so you can remove it again if you wish (by removing the URL from the external.txt file and physically deleting the src/patterns/dosdp-patterns/entity_attribute.yaml file).

        "},{"location":"tutorial/dosdp-odk/#dosdp-pipelines-in-odk","title":"DOSDP pipelines in ODK","text":"

        Sometimes, we want to manage more than one DOSDP pipeline at once. For example, in more than one of our projects, we have some patterns that are automatically generated by software tools, and others that are manually curated by ontology developers. In other use cases, we sometimes want to restrict the pattern pipelines to generating only logical axioms. In either case, we can add new pipelines by adding the following to the src/ontology/youront-odk.yaml file:

        pattern_pipelines_group:\n  products:\n    - id: manual\n      dosdp_tools_options: \"--obo-prefixes=true --restrict-axioms-to=logical\"\n    - id: auto\n      dosdp_tools_options: \"--obo-prefixes=true\"\n

        This does the following: It tells the ODK that you want

        "},{"location":"tutorial/dosdp-odk/#reference","title":"Reference","text":""},{"location":"tutorial/dosdp-odk/#a-full-example-odk-configuration","title":"A full example ODK configuration","text":"
        id: cato\ntitle: \"Cat Anatomy Ontology\"\ngithub_org: obophenotype\ngit_main_branch: main\nuse_dosdps: TRUE\nrepo: cat_anatomy_ontology\nrelease_artefacts:\n  - base\n  - full\n  - simple\nprimary_release: full\nexport_formats:\n  - owl\n  - obo\n  - json\nimport_group:\n  products:\n    - id: ro\n    - id: pato\n    - id: omo\nrobot_java_args: '-Xmx8G'\npattern_pipelines_group:\n  products:\n    - id: manual\n      dosdp_tools_options: \"--obo-prefixes=true --restrict-axioms-to=logical\"\n    - id: auto\n      dosdp_tools_options: \"--obo-prefixes=true\"\n
        "},{"location":"tutorial/dosdp-odk/#odk-configuration-reference-for-dosdp","title":"ODK configuration reference for DOSDP","text":"Flag Explanation use_dosdps: TRUE Activates DOSDP in your ODK repository setup pattern_pipelines_group:products: - id: manual dosdp_tools_options: \"--obo-prefixes=true --restrict-axioms-to=logical\" Adding a manual pipeline to your DOSDP setup in which only logical axioms are generated."},{"location":"tutorial/dosdp-overview/","title":"Getting started with DOSDP templates","text":"

        Dead Simple OWL Design patterns (DOSDP) is a templating system for documenting and generating new OWL classes. The templates themselves are designed to be human readable and easy to author. Separate tables (TSV files) are used to specify individual classes.

        The complete DOSDP documentation can be found here http://incatools.github.io/dead_simple_owl_design_patterns/.

        For another DOSDP tutorial see here.

        "},{"location":"tutorial/dosdp-overview/#anatomy-of-a-dosdp-file","title":"Anatomy of a DOSDP file:","text":"

        A DOSDP tempaltes are written in YAML) file, an easily editable format for encoding nested data structures. At the top level of nesting is a set of 'keys', which must match those specified in the DOSDP standard. The various types of key and their function are outlined below. Each key is followed by a colon and then a value, which may be a text string, a list or another set of keys. Lists items are indicated using a '-'. Nesting is achieved via indenting using some standard number of spaces (typically 3 or 4). Here's a little illustration:

        key1: some text\nkey2:\n- first list item (text; note the indent)\n- second list item\nkey3:\nkey_under_key3: some text\nanother_key_under_key3:\n- first list item (text; note the indent)\n- second list item\nyet_another_key_under_key3:\nkey_under_yet_another_key_under_key3: some more text\n

        In the following text, keys and values together are sometimes referred to as 'fields'.

        "},{"location":"tutorial/dosdp-overview/#pattern-level-keys","title":"Pattern level keys","text":"

        Reference doc

        A set of fields that specify general information about a pattern: name, description, IRI, contributors, examples etc

        e.g.

        pattern_name: abnormalAnatomicalEntity\npattern_iri: http://purl.obolibrary.org/obo/upheno/patterns/abnormalAnatomicalEntity.yaml\ndescription: \"Any unspecified abnormality of an anatomical entity.\"\n\ncontributors:\n- https://orcid.org/0000-0002-9900-7880\n
        "},{"location":"tutorial/dosdp-overview/#dictionaries","title":"Dictionaries","text":"

        Reference doc

        A major aim of the DOSDP system is to produce self-contained, human-readable templates. Templates need IDs in order to be reliably used programatically, but templates that only use IDs are not human readable. DOSDPs therefore include a set of dictionaries that map labels to IDs. Strictly any readable name can be used, but by convention we use class labels. IDs must be OBO curie style e.g. CL:0000001).

        Separate dictionaries are required for classes, relations (object properties) & annotationProperties e.g.

        classes:\nquality: PATO:0000001\nabnormal: PATO:0000460\nanatomical entity: UBERON:0001062\n\nrelations:\ninheres_in_part_of: RO:0002314\nhas_modifier: RO:0002573\nhas_part: BFO:0000051\n
        "},{"location":"tutorial/dosdp-overview/#variables","title":"Variables","text":"

        Reference doc

        These fields specify the names of pattern variables (TSV column names) and map these to a range. e.g. This specifies a variable called 'anatomy' with the range 'anatomical entity':

        vars:\nanatomy: \"'anatomical entity'\"\n

        The var name (anatomy) corresponds to a column name in the table (TSV file) used in combination with this template, to generate new terms based on the template. The range specifies what type of term is allowed in this column - in this case 'anatomical entity' (UBERON:0001062; as specified in the dictionary) or one of its subclasses, e.g.-

        anatomy UBERON:0001154

        There are various types of variables:

        vars are used to specify OWL classes (see example above). data_vars and data_list_vars are used to specify single pieces or data lists respectively. The range of data_vars is specified using XSD types. e.g.

        data_vars:\nnumber: xsd:int\n\ndata_list_vars:\nxrefs: xsd:string\n

        A table used to specify classes following this pattern could have the following content. Note that in lists, multiple elements are separated by a '|'.

        number xrefs 1 pubmed:123456|DOI:10.1016/j.cell.2016.07.054"},{"location":"tutorial/dosdp-overview/#template-fields","title":"Template fields","text":"

        Template fields are where the content of classes produced by the template is specified. These mostly follow printf format: A text field has variable slots specified using %s (for strings), %d for integers and %f for floats (decimals). Variables slots are filled, in order of appearance in the text, with values coming from a list of variables in an associated vars field e.g.

        name:\ntext: \"%s of %s\"\nvars:\n- neuron\n- brain_region\n

        If the value associated with the neuron var is (the class) 'glutamatergic neuron' and the value associated with the = 'brain region' var is 'primary motor cortext', this will generate a classes with the name (label) \"glutamatergic neuron of primary motor cortex\".

        "},{"location":"tutorial/dosdp-overview/#obo-fields","title":"OBO fields","text":"

        Reference doc

        DOSDPs include a set of convenience fields for annotation of classes that follow OBO conventions for field names and their mappings to OWL annotation properties. These include name, def, comment, namespace. When the value of a var is an OWL class, the name (label) of the var is used in the substitution. (see example above).

        The annotation axioms generated by these template fields can be annotated. One OBO field exists for this purpose: xrefs allows annotation with a list of references using the obo standard xref annotation property (curies)

        e.g.

        data_list_vars:\nxrefs: xsd:string\n\ndef:\ntext: \"Any %s that has a soma located in the %s\"\nvars:\n- neuron\n- brain_region\nxrefs: xrefs\n
        "},{"location":"tutorial/dosdp-overview/#logical-axioms-convenience-fields","title":"Logical axioms convenience fields","text":"

        Reference doc

        Where a single equivalent Class, subclassOf or GCI axiom is specified, you may use the keys 'EquivalentTo', 'subClassOf' or 'GCI' respectively. If multiple axioms of any type are needed, use the core field logical_axioms.

        "},{"location":"tutorial/dosdp-overview/#core-fields","title":"Core fields","text":"
        annotations:\n- annotationProperty:\ntext:\nvars:\nannotations: ...\n- annotationProperty:\ntext:\nvars:\n\nlogical_axioms:\n- axiom_type: subClassOf\ntext:\nvars:\n-\n-\n- axiom_type: subClassOf\ntext:\nvars:\n-\n-\nannotations:\n- ...\n
        "},{"location":"tutorial/dosdp-overview/#advanced-usage","title":"Advanced usage:","text":""},{"location":"tutorial/dosdp-overview/#optionals-and-multiples-0-many","title":"Optionals and multiples (0-many)","text":"

        TBA

        "},{"location":"tutorial/dosdp-overview/#using-dosdp-templates-in-odk-workflows","title":"Using DOSDP templates in ODK Workflows","text":"

        The Ontology Development Kit (ODK) comes with a few pre-configured workflows involving DOSDP templates. For a detailed tutorial see here.

        "},{"location":"tutorial/dosdp-template/","title":"Dead Simple Ontology Design Patterns (DOSDP)","text":"

        Note: This is an updated Version of Jim Balhoff's DOSDP tutorial here.

        The main use case for dosdp-tools (and the DOS-DP framework) is managing a set of ontology terms, which all follow a common logical pattern, by simply collecting the unique aspect of each term as a line in a spreadsheet. For example, we may be developing an ontology of environmental exposures. We would like to have terms in our ontology which represent exposure to a variety of stressors, such as chemicals, radiation, social stresses, etc.

        "},{"location":"tutorial/dosdp-template/#creating-an-ontology-of-environmental-exposures","title":"Creating an ontology of environmental exposures","text":"

        To maximize reuse and facilitate data integration, we can build our exposure concepts by referencing terms from domain-specific ontologies, such as the Chemical Entities of Biological Interest Ontology (ChEBI) for chemicals. By modeling each exposure concept in the same way, we can use a reasoner to leverage the chemical classification provided by ChEBI to provide a classification for our exposure concepts. Since each exposure concept has a logical definition based on our data model for exposure, there is no need to manually manage the classification hierarchy. Let's say our model for exposure concepts holds that an \"exposure\" is an event with a particular input (the thing the subject is exposed to):

        'exposure to X' EquivalentTo 'exposure event' and 'has input' some X

        If we need an ontology class to represent 'exposure to sarin' (bad news!), we can simply use the term sarin from ChEBI, and create a logical definition:

        'exposure to sarin' EquivalentTo 'exposure event' and 'has input' some sarin

        We can go ahead and create some other concepts we need for our exposure data:

        'exposure to asbestos' EquivalentTo 'exposure event' and 'has input' some asbestos

        'exposure to chemical substance' EquivalentTo 'exposure event' and 'has input' some 'chemical substance'

        These definitions again can reference terms provided by ChEBI: asbestos and chemical substance

        "},{"location":"tutorial/dosdp-template/#classifying-our-concepts","title":"Classifying our concepts","text":"

        Since the three concepts we've created all follow the same logical model, their hierarchical relationship can be logically determined by the relationships of the chemicals they reference. ChEBI asserts this structure for those terms:

        'chemical substance'\n         |\n         |\n   --------------\n  |              |\n  |              |\nsarin        asbestos\n

        Based on this, an OWL reasoner can automatically tell us the relationships between our exposure concepts:

                'exposure to chemical substance'\n                       |\n                       |\n           --------------------------\n          |                          |\n          |                          |\n'exposure to sarin'        'exposure to asbestos'\n

        To support this, we simply need to declare the ChEBI OWL file as an owl:import in our exposure ontology, and use an OWL reasoner such as ELK.

        "},{"location":"tutorial/dosdp-template/#managing-terms-with-dosdp-tools","title":"Managing terms with dosdp-tools","text":"

        Creating terms by hand like we just did works fine, and relying on the reasoner for the classification will save us a lot of trouble and maintain correctness as our ontology grows. But since all the terms use the same logical pattern, it would be nice to keep this in one place; this will help make sure we always follow the pattern correctly when we create new concepts. We really only need to store the list of inputs (e.g. chemicals) in order to create all our exposure concepts. As we will see later, we may also want to manage separate sets of terms that follow other, different, patterns. To do this with dosdp-tools, we need three main files: a pattern template, a spreadsheet of pattern fillers, and a source ontology. You will also usually need a file of prefix definitions so that the tool knows how to expand your shortened identifiers into IRIs.

        For our chemical exposures, getting the source ontology is easy: just download chebi.owl. Note\u2014it's about 450 MB.

        For our pattern fillers spreadsheet, we just need to make a tab-delimited file containing the chemical stressors for which we need exposure concepts. The file needs a column for the term IRI to be used for the generated class (this column is always called defined_class), and also a column for the chemical to reference (choose a label according to your data model). It should look like this:

        defined_class input\nEXPOSO:1      CHEBI:75701\nEXPOSO:2      CHEBI:46661\nEXPOSO:3      CHEBI:59999\n

        The columns should be tab-separated\u2014you can download a correctly formatted file to follow along. For now you will just maintain this file by hand, adding chemicals by looking up their ID in ChEBI, and manually choosing the next ID for your generated classes. In the future this may be simplified using the DOS-DP table editor, which is under development.

        The trickiest part to DOS-DP is creating your pattern template (but it's not so hard). Pattern templates are written in YAML, a simple file format based on keys and values. The keys are text labels; values can be plain values, another key-value structure, or a list. The DOS-DP schema specifies the keys and values which can be used in a pattern file. We'll use most of the common entries in this example. Read the comments (lines starting with #) for explanation of the various fields:

        # We can provide a name for this pattern here.\npattern_name: exposure_with_input\n\n# In 'classes', we define the terms we will use in this pattern.\n# In the OBO community the terms often have numeric IDs, so here\n# we can provide human-readable names we can use further in the pattern.\n# The key is the name to be used; the value is the ID in prefixed form (i.e. a CURIE).\nclasses:\nexposure event: ExO:0000002\nThing: owl:Thing\n\n# Use 'relations' the same way as 'classes',\n# but for the object properties used in the pattern.\nrelations:\nhas input: RO:0002233\n\n# The 'vars' section defines the various slots that can be\n# filled in for this pattern. We have only one, which we call 'input'.\n# The value is the range, meaning the class of things that are valid\n# values for this pattern. By specifying owl:Thing, we're allowing any\n# class to be provided as a variable filler. You need a column in your\n# spreadsheet for each variable defined here, in addition to the `defined class` column.\nvars:\ninput: \"Thing\"\n\n# We can provide a template for an `rdfs:label` value to generate\n# for our new term. dosdp-tools will search the source ontology\n# to find the label for the filler term, and fill it into the\n# name template in place of the %s.\nname:\ntext: \"exposure to %s\"\nvars:\n- input\n\n# This works the same as label generation, but instead creates\n# a definition annotation.\ndef:\ntext: \"A exposure event involving the interaction of an exposure receptor to %s. Exposure may be through a variety of means, including through the air or surrounding medium, or through ingestion.\"\nvars:\n- input\n\n# Here we can generate a logical axiom for our new concept. Create an\n# expression using OWL Manchester syntax. The expression can use any\n# of the terms defined at the beginning of the pattern. A reference\n# to the variable value will be inserted in place of the %s.\nequivalentTo:\ntext: \"'exposure event' and 'has input' some %s\"\nvars:\n- input\n

        Download the pattern template file to follow along.

        Now we only need one more file before we can run dosdp-tools. A file of prefix definitions (also in YAML format) will specify how to expand the CURIEs we used in our spreadsheet and pattern files:

        EXPOSO: http://example.org/exposure/\n

        Here we are specifying how to expand our EXPOSO prefix (used in our spreadsheet defined_class column). To expand the others, we'll pass a convenience option to dosdp-tools, --obo-prefixes, which will activate some predefined prefixes such as owl:, and handle any other prefixes using the standard expansion for OBO IDs: http://purl.obolibrary.org/obo/PREFIX_. Here's a link to the prefixes file.

        Now we're all set to run dosdp-tools! If you've downloaded or created all the necessary files, run this command to generate your ontology of exposures (assuming you've added the dosdp-tools to your Unix PATH):

        dosdp-tools generate --obo-prefixes=true --prefixes=prefixes.yaml --infile=exposure_with_input.tsv --template=exposure_with_input.yaml --ontology=chebi.owl --outfile=exposure_with_input.owl\n

        This will apply the pattern to each line in your spreadsheet, and save the result in an ontology saved at exposure_with_input.owl (it should look something like this). If you take a look at this ontology in a text editor or in Prot\u00e9g\u00e9, you'll see that it contains three classes, each with a generated label, text definition, and equivalent class definition. You're done!

        Well... you're sort of done. But wouldn't it be nice if your exposure ontology included some information about the chemicals you referenced? Without this our reasoner can't classify our exposure concepts. As we said above, we could add an owl:import declaration and load all of ChEBI, but your exposure ontology has three classes and ChEBI has over 120,000 classes. Instead, we can use the ROBOT tool to extract a module of just the relevant axioms from ChEBI. Later, we will also see how to use ROBOT to merge the outputs from multiple DOS-DP patterns into one ontology. You can download ROBOT from its homepage.

        "},{"location":"tutorial/dosdp-template/#extracting-a-module-from-the-source-ontology","title":"Extracting a module from the source ontology","text":"

        ROBOT has a few different methods for extracting a subset from an ontology. We'll use the Syntactic Locality Module Extractor (SLME) to get a set of axioms relevant to the ChEBI terms we've referenced. ROBOT will need a file containing the list of terms. We can use a Unix command to get these out of our spreadsheet file:

        sed '1d' exposure_with_input.tsv | cut -f 2 >inputs.txt\n

        We'll end up with a simple list:

        CHEBI:75701\nCHEBI:46661\nCHEBI:59999\n

        Now we can use ROBOT to extract an SLME bottom module for those terms out of ChEBI:

        robot extract --method BOT --input chebi.owl --term-file inputs.txt --output chebi_extract.owl\n

        Our ChEBI extract only has 63 classes. Great! If you want, you can merge the ChEBI extract into your exposure ontology before releasing it to the public:

        robot merge --input exposure_with_input.owl --input chebi_extract.owl --output exposo.owl\n

        Now you can open exposo.owl in Prot\u00e9g\u00e9, run the reasoner, and see a correct classification for your exposure concepts! You may notice that your ontology is missing labels for ExO:0000002 ('exposure event') and RO:0002233 ('has input'). If you want, you can use ROBOT to extract that information from ExO and RO.

        "},{"location":"tutorial/dosdp-template/#working-with-multiple-patterns","title":"Working with multiple patterns","text":"

        You will often want to generate ontology modules using more than one DOS-DP pattern. For example, you may want to organize environmental exposures by an additional axis of classification, such as exposure to substances with various biological roles, based on information provided by ChEBI. This requires a slightly different logical expression, so we'll make a new pattern:

        pattern_name: exposure_with_input_with_role\n\nclasses:\nexposure event: ExO:0000002\nThing: owl:Thing\n\nrelations:\nhas input: RO:0002233\nhas role: RO:0000087\n\nvars:\ninput: \"Thing\"\n\nname:\ntext: \"exposure to %s\"\nvars:\n- input\n\ndef:\ntext: \"A exposure event involving the interaction of an exposure receptor to a substance with %s role. Exposure may be through a variety of means, including through the air or surrounding medium, or through ingestion.\"\nvars:\n- input\n\nequivalentTo:\ntext: \"'exposure event' and 'has input' some ('has role' some %s)\"\nvars:\n- input\n

        Let's create an input file for this pattern, with a single filler, neurotoxin:

        defined_class   input\nEXPOSO:4    CHEBI:50910\n

        Now we can run dosdp-tools for this pattern:

        dosdp-tools generate --obo-prefixes --prefixes=prefixes.yaml --infile=exposure_with_input_with_role.tsv --template=exposure_with_input_with_role.yaml --ontology=chebi.owl --outfile=exposure_with_input_with_role.owl\n

        We can re-run our ChEBI module extractor, first appending the terms used for this pattern to the ones we used for the first pattern:

        sed '1d' exposure_with_input_with_role.tsv | cut -f 2 >>inputs.txt\n

        And then run robot extract exactly as before:

        robot extract --method BOT --input chebi.owl --term-file inputs.txt --output chebi_extract.owl\n

        Now we just want to merge both of our generated modules, along with our ChEBI extract:

        robot merge --input exposure_with_input.owl --input exposure_with_input_with_role.owl --input chebi_extract.owl --output exposo.owl\n

        If you open the new exposo.owl in Prot\u00e9g\u00e9 and run the reasoner, you'll now see 'exposure to sarin' classified under both 'exposure to chemical substance' and also 'exposure to neurotoxin'.

        "},{"location":"tutorial/dosdp-template/#conclusion","title":"Conclusion","text":"

        By using dosdp-tools and robot together, you can effectively develop ontologies which compose parts of ontologies from multiple domains using standard patterns. You will probably want to orchestrate the types of commands used in this tutorial within a Makefile, so that you can automate this process for easy repeatability.

        "},{"location":"tutorial/exomiser-tutorial/","title":"Introduction to Exomiser","text":""},{"location":"tutorial/exomiser-tutorial/#tutorial-an-introduction-to-exomiser","title":"Tutorial: an introduction to Exomiser","text":"

        Exomiser is a Java program that ranks potential rare Mendelian disease-causing variants from whole-exome or whole-genome sequencing data. Starting from a patient's VCF file and a set of phenotypes encoded using the Human Phenotype Ontology (HPO), it will annotate, filter and prioritise likely causative variants. The program does this based on user-defined criteria such as a variant's predicted pathogenicity, frequency of occurrence in a population and also how closely the given patient's phenotype matches any known phenotype of genes from human disease and model organism data.

        In this tutorial, we will learn how to install and run Exomiser with Docker, and how to interpret the results in various output formats detailing the predicted causative genes and variants. If you prefer to work locally, instructions are also provided below for Windows and Linux/Mac users.

        The complete Exomiser documentation can be found here, including some relevant references here, and the Exomiser GitHub repository here.

        Please note that this tutorial is up-to-date with the current latest release 13.2.0 and data version up to 2302 (Feb 2023).

        "},{"location":"tutorial/exomiser-tutorial/#prerequisites","title":"PREREQUISITES","text":"

        You know:

        • how to use a command line interface.

        You have:

        • Docker installed and running on your machine. Check out this simple guide to set up Docker for Windows or Docker for Mac.

        • We recommend to have Exomiser installed via Docker prior to the tutorial. Open a terminal and run the command below:

        docker pull exomiser/exomiser-cli:13.2.0\n
        • Exomiser-Tutorial files downloaded from our GoogleDrive.

        Alternatively:

        # download the data via\nwget https://github.com/iQuxLE/Exomiser-Tutorial/raw/main/Exomiser-Tutorial.zip\n# OR clone the repository\ngit clone https://github.com/iQuxLE/Exomiser-Tutorial.git\n\n# unzip\nunzip Exomiser-Tutorial.zip\n
        Since the VCF files for parts of the example data are relatively large, you need to download the following separately and put it into the Exomiser-Tutorial folder.

        # download\nwget https://github.com/iQuxLE/Exomiser-Tutorial/raw/main/pfeiffer-family-vcf.zip\n# unzip\nunzip pfeiffer-family-vcf.zip -d Exomiser-Tutorial/exomiser-config/\n

        The Exomiser-Tutorial folder contains a directory called exomiser-config (with all the VCF and analysis files) and exomiser-overview (with some introductory slides).

        • Importantly, we highly recommend downloading the Exomiser data prior to the tutorial in order to follow along. The data required to run Exomiser is ~80GB and will take a while to download and unpack (depending on your internet connection, it may take a few hours). For this tutorial, you only need to download the Exomiser phenotype data and the variant data for the hg19 assembly. If you have your own samples to run with Exomiser and the VCF files are built on the hg38 build, then you will need to download the hg38 variant data as well. The current data version that we will use in this tutorial is 2302 (Feb 2023). This will change in the future. Always make sure that you use the latest data version available. To download the Exomiser data from the terminal:
        # create an empty directory for exomiser-data within the Exomiser-Tutorial folder:\ncd /path/to/Exomiser-Tutorial/\nmkdir exomiser-data\ncd exomiser-data\n# download the data\nwget https://data.monarchinitiative.org/exomiser/latest/2302_phenotype.zip # for the phenotype database\nwget https://data.monarchinitiative.org/exomiser/latest/2302_hg19.zip # for the hg19 variant database\n# unzip the data\nunzip \"2302_*.zip\"\n

        Otherwise, visit the links and download the data in your own exomiser-data directory:

        2302 phenotype database

        2302 hg19 variant database

        Install 7-Zip for unzipping the database files. The built-in archiving software has issues extracting the zip files. Extract the database files (2302_phenotype.zip, 2302_hg19.zip) by right-clicking the archive and selecting 7-Zip > Extract files\u2026 into the exomiser-data directory.

        Your Exomiser-Tutorial directory should now be structured as follows:

        Exomiser-Tutorial\n    \u251c\u2500\u2500 exomiser-config\n    \u251c\u2500\u2500 exomiser-data\n    \u2502 \u251c\u2500\u2500 2302_hg19\n    \u2502 \u2514\u2500\u2500 2302_phenotype\n    \u2514\u2500\u2500 exomiser-overview\n      \u2514\u2500\u2500 exomiser-tutorial-slides\n
        "},{"location":"tutorial/exomiser-tutorial/#outline-of-the-tutorial","title":"Outline of the tutorial","text":"
        • Exomiser overview
        • Exomiser installation
          • via Docker
          • via Windows
          • via Linux/Mac
          • Configuring the application.properties
        • Running Exomiser
          • Using phenopackets
          • Analysis settings
          • Running via Docker
          • Running locally
          • Analysing multi-sample VCF files
          • Running large jobs (batch)
        • Results
          • HTML
          • JSON
          • TSV VARIANTS
          • TSV GENES
        "},{"location":"tutorial/exomiser-tutorial/#exomiser-overview","title":"Exomiser overview","text":"

        For a quick overview of Exomiser take a look at the slides located in the Google Drive or GitHub repo.

        "},{"location":"tutorial/exomiser-tutorial/#exomiser-installation","title":"Exomiser installation","text":""},{"location":"tutorial/exomiser-tutorial/#via-docker","title":"via Docker","text":"

        (recommended to be installed prior to the tutorial; if you run the command below again, you should receive the message \"Image is up to date for exomiser/exomiser-cli:13.2.0\")

        docker pull exomiser/exomiser-cli:13.2.0\n
        "},{"location":"tutorial/exomiser-tutorial/#via-windows","title":"via Windows","text":"
        1. Install 7-Zip for unzipping the archive files. The built-in archiving software has issues extracting the zip files.
        2. Download the exomiser-cli-13.2.0-distribution.zip distribution from Monarch.
        3. Download the variant 2302_hg19.zip and phenotype 2302_phenotype.zip data files from Monarch.
        4. Extract the distribution files by right-clicking exomiser-cli-13.2.0-distribution.zip and selecting 7-Zip > Extract Here
        5. Extract the data files (e.g. 2302_phenotype.zip, 2302_hg19.zip) by right-clicking the archive and selecting 7-Zip > Extract files\u2026 into the exomiser data directory. By default, Exomiser expects this to be \u2018exomiser-cli-13.2.0/data\u2019, but this can be changed in the application.properties.
        "},{"location":"tutorial/exomiser-tutorial/#via-linuxmac","title":"via Linux/Mac","text":"

        The following shell script should work:

        # download the distribution (won't take long)\nwget https://data.monarchinitiative.org/exomiser/latest/exomiser-cli-13.2.0-distribution.zip\n# download the data (this is ~80GB and will take a while). If you only require a single assembly, only download the relevant files.\nwget https://data.monarchinitiative.org/exomiser/latest/2302_hg19.zip\nwget https://data.monarchinitiative.org/exomiser/latest/2302_phenotype.zip\n# unzip the distribution and data files - this will create a directory called 'exomiser-cli-13.2.0' in the current working directory (with examples and application.properties)\nunzip exomiser-cli-13.2.0-distribution.zip\nunzip '2302_*.zip' -d exomiser-cli-13.2.0/data\n
        "},{"location":"tutorial/exomiser-tutorial/#configuring-the-applicationproperties","title":"Configuring the application.properties","text":"

        The application.properties file needs to be updated to point to the correct location of the Exomiser data. For the purpose of this tutorial, this is already sorted, pointing to the mounted directory inside the Docker container exomiser.data-directory=/exomiser-data.

        Also, you want to make sure to edit the file to use the correct data version (currently 2302):

         exomiser.hg19.data-version=2302\nexomiser.phenotype.data-version=2302\n
        "},{"location":"tutorial/exomiser-tutorial/#tutorials","title":"Tutorials","text":""},{"location":"tutorial/exomiser-tutorial/#monarch-obo-training-tutorial","title":"Monarch OBO Training Tutorial","text":""},{"location":"tutorial/exomiser-tutorial/#running-exomiser","title":"Running Exomiser","text":"

        For this tutorial, we will focus on running Exomiser on a single-sample (whole-exome) VCF file. Additional instructions for running Exomiser on multi-sample VCF data and large jobs are also provided below.

        "},{"location":"tutorial/exomiser-tutorial/#using-phenopackets","title":"Using phenopackets","text":"

        It is recommended to provide Exomiser with the input sample as a Phenopacket. Exomiser will accept this in either JSON or YAML format. We will use the example pfeiffer-phenopacket.yml below:

        id: manuel\nsubject:\nid: manuel\nsex: MALE\nphenotypicFeatures:\n- type:\nid: HP:0001159\nlabel: Syndactyly\n- type:\nid: HP:0000486\nlabel: Strabismus\n- type:\nid: HP:0000327\nlabel: Hypoplasia of the maxilla\n- type:\nid: HP:0000520\nlabel: Proptosis\n- type:\nid: HP:0000316\nlabel: Hypertelorism\n- type:\nid: HP:0000244\nlabel: Brachyturricephaly\nhtsFiles:\n- uri: exomiser/Pfeiffer.vcf.gz\nhtsFormat: VCF\ngenomeAssembly: hg19\nmetaData:\ncreated: '2019-11-12T13:47:51.948Z'\ncreatedBy: julesj\nresources:\n- id: hp\nname: human phenotype ontology\nurl: http://purl.obolibrary.org/obo/hp.owl\nversion: hp/releases/2019-11-08\nnamespacePrefix: HP\niriPrefix: 'http://purl.obolibrary.org/obo/HP_'\nphenopacketSchemaVersion: 1.0\n

        NOTE: This is an example of a v1.0 phenopacket, there is a more recent release of v2.0. Exomiser can run phenopackets built with either v1.0 or v2.0 schema. You can find out more about the v2.0 phenopacket schema and how to build one with Python or Java here. To convert a phenopacket v1.0 to v2.0, you can use phenopacket-tools.

        "},{"location":"tutorial/exomiser-tutorial/#analysis-settings","title":"Analysis settings","text":"

        Below are the default analysis settings from pfeiffer-analysis.yml that we will use in our tutorial:

        ---\nanalysis:\n#FULL or PASS_ONLY\nanalysisMode: PASS_ONLY\n# In cases where you do not want any cut-offs applied an empty map should be used e.g. inheritanceModes: {}\n# These are the default settings, with values representing the maximum minor allele frequency in percent (%) permitted for an\n# allele to be considered as a causative candidate under that mode of inheritance.\n# If you just want to analyse a sample under a single inheritance mode, delete/comment-out the others. For AUTOSOMAL_RECESSIVE\n# or X_RECESSIVE ensure *both* relevant HOM_ALT and COMP_HET modes are present.\ninheritanceModes: {\n    AUTOSOMAL_DOMINANT: 0.1,\n    AUTOSOMAL_RECESSIVE_COMP_HET: 2.0,\n    AUTOSOMAL_RECESSIVE_HOM_ALT: 0.1,\n    X_DOMINANT: 0.1,\n    X_RECESSIVE_COMP_HET: 2.0,\n    X_RECESSIVE_HOM_ALT: 0.1,\n    MITOCHONDRIAL: 0.2\n}\n#Possible frequencySources:\n#Thousand Genomes project http://www.1000genomes.org/\n#   THOUSAND_GENOMES,\n#ESP project http://evs.gs.washington.edu/EVS/\n#   ESP_AFRICAN_AMERICAN, ESP_EUROPEAN_AMERICAN, ESP_ALL,\n#ExAC project http://exac.broadinstitute.org/about\n#   EXAC_AFRICAN_INC_AFRICAN_AMERICAN, EXAC_AMERICAN,\n#   EXAC_SOUTH_ASIAN, EXAC_EAST_ASIAN,\n#   EXAC_FINNISH, EXAC_NON_FINNISH_EUROPEAN,\n#   EXAC_OTHER\n#Possible frequencySources:\n#Thousand Genomes project - http://www.1000genomes.org/ (THOUSAND_GENOMES)\n#TOPMed - https://www.nhlbi.nih.gov/science/precision-medicine-activities (TOPMED)\n#UK10K - http://www.uk10k.org/ (UK10K)\n#ESP project - http://evs.gs.washington.edu/EVS/ (ESP_)\n#   ESP_AFRICAN_AMERICAN, ESP_EUROPEAN_AMERICAN, ESP_ALL,\n#ExAC project http://exac.broadinstitute.org/about (EXAC_)\n#   EXAC_AFRICAN_INC_AFRICAN_AMERICAN, EXAC_AMERICAN,\n#   EXAC_SOUTH_ASIAN, EXAC_EAST_ASIAN,\n#   EXAC_FINNISH, EXAC_NON_FINNISH_EUROPEAN,\n#   EXAC_OTHER\n#gnomAD - http://gnomad.broadinstitute.org/ (GNOMAD_E, GNOMAD_G)\nfrequencySources: [\nTHOUSAND_GENOMES,\nTOPMED,\nUK10K,\n\nESP_AFRICAN_AMERICAN, ESP_EUROPEAN_AMERICAN, ESP_ALL,\n\nEXAC_AFRICAN_INC_AFRICAN_AMERICAN, EXAC_AMERICAN,\nEXAC_SOUTH_ASIAN, EXAC_EAST_ASIAN,\nEXAC_FINNISH, EXAC_NON_FINNISH_EUROPEAN,\nEXAC_OTHER,\n\nGNOMAD_E_AFR,\nGNOMAD_E_AMR,\n#        GNOMAD_E_ASJ,\nGNOMAD_E_EAS,\nGNOMAD_E_FIN,\nGNOMAD_E_NFE,\nGNOMAD_E_OTH,\nGNOMAD_E_SAS,\n\nGNOMAD_G_AFR,\nGNOMAD_G_AMR,\n#        GNOMAD_G_ASJ,\nGNOMAD_G_EAS,\nGNOMAD_G_FIN,\nGNOMAD_G_NFE,\nGNOMAD_G_OTH,\nGNOMAD_G_SAS\n]\n# Possible pathogenicitySources: (POLYPHEN, MUTATION_TASTER, SIFT), (REVEL, MVP), CADD, REMM\n# REMM is trained on non-coding regulatory regions\n# *WARNING* if you enable CADD or REMM ensure that you have downloaded and installed the CADD/REMM tabix files\n# and updated their location in the application.properties. Exomiser will not run without this.\npathogenicitySources: [ REVEL, MVP ]\n#this is the standard exomiser order.\n#all steps are optional\nsteps: [\n#hiPhivePrioritiser: {},\n#priorityScoreFilter: {priorityType: HIPHIVE_PRIORITY, minPriorityScore: 0.500},\n#intervalFilter: {interval: 'chr10:123256200-123256300'},\n# or for multiple intervals:\n#intervalFilter: {intervals: ['chr10:123256200-123256300', 'chr10:123256290-123256350']},\n# or using a BED file - NOTE this should be 0-based, Exomiser otherwise uses 1-based coordinates in line with VCF\n#intervalFilter: {bed: /full/path/to/bed_file.bed},\n#genePanelFilter: {geneSymbols: ['FGFR1','FGFR2']},\nfailedVariantFilter: { },\n#qualityFilter: {minQuality: 50.0},\nvariantEffectFilter: {\n        remove: [\nFIVE_PRIME_UTR_EXON_VARIANT,\nFIVE_PRIME_UTR_INTRON_VARIANT,\nTHREE_PRIME_UTR_EXON_VARIANT,\nTHREE_PRIME_UTR_INTRON_VARIANT,\nNON_CODING_TRANSCRIPT_EXON_VARIANT,\nUPSTREAM_GENE_VARIANT,\nINTERGENIC_VARIANT,\nREGULATORY_REGION_VARIANT,\nCODING_TRANSCRIPT_INTRON_VARIANT,\nNON_CODING_TRANSCRIPT_INTRON_VARIANT,\nDOWNSTREAM_GENE_VARIANT\n]\n},\n# removes variants represented in the database\n#knownVariantFilter: {},\nfrequencyFilter: {maxFrequency: 2.0},\npathogenicityFilter: {keepNonPathogenic: true},\n# inheritanceFilter and omimPrioritiser should always run AFTER all other filters have completed\ninheritanceFilter: {},\n# omimPrioritiser isn't mandatory.\nomimPrioritiser: {},\n#priorityScoreFilter: {minPriorityScore: 0.4},\n# Other prioritisers: Only combine omimPrioritiser with one of these.\n# Don't include any if you only want to filter the variants.\nhiPhivePrioritiser: {},\n# or run hiPhive in benchmarking mode:\n#hiPhivePrioritiser: {runParams: 'mouse'},\n#phivePrioritiser: {}\n#phenixPrioritiser: {}\n#exomeWalkerPrioritiser: {seedGeneIds: [11111, 22222, 33333]}\n]\noutputOptions:\noutputContributingVariantsOnly: false\n#numGenes options: 0 = all or specify a limit e.g. 500 for the first 500 results\nnumGenes: 0\n#minExomiserGeneScore: 0.7\n# Path to the desired output directory. Will default to the 'results' subdirectory of the exomiser install directory\noutputDirectory: results\n# Filename for the output files. Will default to {input-vcf-filename}-exomiser\noutputFileName: Pfeiffer-HIPHIVE-exome\n#out-format options: HTML, JSON, TSV_GENE, TSV_VARIANT, VCF (default: HTML)\noutputFormats: [HTML, JSON, TSV_GENE, TSV_VARIANT]\n
        "},{"location":"tutorial/exomiser-tutorial/#running-via-docker","title":"Running via Docker","text":"
        docker run -it -v \"/path/to/Exomiser-Tutorial/exomiser-data:/exomiser-data\" \\\n-v \"/path/to/Exomiser-Tutorial/exomiser-config/:/exomiser\" \\\n-v \"/path/to/Exomiser-Tutorial/exomiser-results:/results\" \\\nexomiser/exomiser-cli:13.2.0 \\\n--sample /exomiser/pfeiffer-phenopacket.yml \\\n--analysis /exomiser/pfeiffer-analysis.yml \\\n--spring.config.location=/exomiser/application.properties\n

        This command will produce Pfeiffer-HIPHIVE-exome.html, Pfeiffer-HIPHIVE-exome.json, Pfeiffer-HIPHIVE-exome.genes.tsv and Pfeiffer-HIPHIVE-exome.variants.tsv in your exomiser-results directory.

        "},{"location":"tutorial/exomiser-tutorial/#running-locally","title":"Running locally","text":"

        Assuming that you are within the exomiser-cli-13.2.0 distribution folder:

        java -jar exomiser-cli-13.2.0.jar --sample examples/pfeiffer-phenopacket.yml \\\n--analysis examples/exome-analysis.yml --output examples/output-options.yml  
        "},{"location":"tutorial/exomiser-tutorial/#analysing-multi-sample-vcf-files","title":"Analysing multi-sample VCF files","text":"

        When analysing a multi-sample VCF file, you must detail the pedigree information in a phenopacket describing a Family object:

        e.g. Exomiser-Tutorial/exomiser-config/pfeiffer-family.yml

        id: ISDBM322017-family\nproband:\nsubject:\nid: ISDBM322017\nsex: FEMALE\nphenotypicFeatures:\n- type:\nid: HP:0001159\nlabel: Syndactyly\n- type:\nid: HP:0000486\nlabel: Strabismus\n- type:\nid: HP:0000327\nlabel: Hypoplasia of the maxilla\n- type:\nid: HP:0000520\nlabel: Proptosis\n- type:\nid: HP:0000316\nlabel: Hypertelorism\n- type:\nid: HP:0000244\nlabel: Brachyturricephaly\npedigree:\npersons:\n- individualId: ISDBM322017\npaternalId: ISDBM322016\nmaternalId: ISDBM322018\nsex: FEMALE\naffectedStatus: AFFECTED\n- individualId: ISDBM322015\npaternalId: ISDBM322016\nmaternalId: ISDBM322018\nsex: MALE\naffectedStatus: UNAFFECTED\n- individualId: ISDBM322016\nsex: MALE\naffectedStatus: UNAFFECTED\n- individualId: ISDBM322018\nsex: FEMALE\naffectedStatus: UNAFFECTED\nhtsFiles:\n- uri: exomiser/Pfeiffer-quartet.vcf.gz\nhtsFormat: VCF\ngenomeAssembly: GRCh37\nmetaData:\ncreated: '2019-11-12T13:47:51.948Z'\ncreatedBy: julesj\nresources:\n- id: hp\nname: human phenotype ontology\nurl: http://purl.obolibrary.org/obo/hp.owl\nversion: hp/releases/2019-11-08\nnamespacePrefix: HP\niriPrefix: 'http://purl.obolibrary.org/obo/HP_'\nphenopacketSchemaVersion: 1.0\n

        Running via Docker:

        docker run -it -v '/path/to/Exomiser-Tutorial/exomiser-data:/exomiser-data' \\\n-v '/path/to/Exomiser-Tutorial/exomiser-config/:/exomiser' \\\n-v '/path/to/Exomiser-Tutorial/exomiser-results:/results' \\\nexomiser/exomiser-cli:13.2.0 \\\n--sample /exomiser/pfeiffer-family.yml \\\n--analysis /exomiser/pfeiffer-analysis.yml \\\n--spring.config.location=/exomiser/application.properties\n

        Running locally:

        Assuming that you are within the exomiser-cli-13.2.0 distribution folder

        java -jar exomiser-cli-13.2.0.jar --sample examples/pfeiffer-family.yml --analysis examples/exome-analysis.yml --output examples/output-options.yml\n
        "},{"location":"tutorial/exomiser-tutorial/#running-large-jobs-batch","title":"Running large jobs (batch)","text":"

        The above commands can be added to a batch file for example in the file Exomiser-Tutorial/exomiser-config/test-analysis-batch-commands.txt. Using it with Docker we recommend creating a new directory for the batch files and mounting that to the Docker container.

        Running via Docker:

        docker run -it -v '/path/to/Exomiser-Tutorial/exomiser-data:/exomiser-data' \\\n-v '/path/to/Exomiser-Tutorial/exomiser-config/:/exomiser' \\\n-v '/path/to/Exomiser-Tutorial/exomiser-results:/results' \\\n-v '/path/to/Exomiser-Tutorial/exomiser-batch-files:/batch-files' \\\nexomiser/exomiser-cli:13.2.0 \\\n--batch /batch-files/test-analysis-batch-commands.txt\n--spring.config.location=/exomiser/application.properties\n

        Running locally:

        Assuming that you are within the exomiser-cli-13.2.0 distribution folder

        java -jar exomiser-cli-13.2.0.jar --batch examples/test-analysis-batch-commands.txt\n

        The advantage of this is that a single command will be able to analyse many samples in far less time than starting a new JVM for each as there will be no start-up penalty after the initial start and the Java JIT compiler will be able to take advantage of a longer-running process to optimise the runtime code. For maximum throughput on a cluster consider splitting your batch jobs over multiple nodes.

        "},{"location":"tutorial/exomiser-tutorial/#results","title":"Results","text":"

        Depending on the output options provided, Exomiser will write out at least an HTML and JSON output file in the results subdirectory of the Exomiser installation (by default) or a user-defined results directory as indicated in the output options.

        As a general rule, all output files contain a ranked list of genes and variants with the top-ranked gene/variant displayed first. The exception being the VCF output (if requested in the output options; not requested in this tutorial) which, since version 13.1.0, is sorted according to VCF convention and tabix indexed.

        In our tutorial, we requested HTML, JSON, TSV_VARIANT and TSV_GENE output formats which are briefly outlined below.

        "},{"location":"tutorial/exomiser-tutorial/#html","title":"HTML","text":"

        A few relevant screenshots from Pfeiffer-HIPHIVE-exome.html:

        "},{"location":"tutorial/exomiser-tutorial/#json","title":"JSON","text":"

        The JSON file represents the most accurate representation of the results, as it is referenced internally by Exomiser. As such, we don\u2019t provide a schema for this, but it has been pretty stable and breaking changes will only occur with major version changes to the software. Minor additions are to be expected for minor releases, as per the SemVer specification.

        We recommend using Python or JQ to extract data from this file. To give you an idea of how you can extract some data with Python, we have provided examples of how you can iterate over the results below. However, there is a lot more information content that you can pull out from the JSON results file, this only provides a snippet of what you can do.

        # import json library\nimport json\n\n# to load in the exomiser json result\nwith open(\"path/to/Exomiser-Tutorial/Pfeiffer-HIPHIVE-exome.json\") as exomiser_json_result:\n    exomiser_result = json.load(exomiser_json_result)\nexomiser_json_result.close()\n\n# to retrieve all predicted genes and corresponding identifier (ENSEMBL)\ngene_results = []\nfor result in exomiser_result:\n    gene_results.append({result[\"geneSymbol\"]: result[\"geneIdentifier\"][\"geneId\"]})\n\n# to retrieve all predicted variants\nvariant_results = []\nfor result in exomiser_result:\n  for moi in result[\"geneScores\"]:  # iterating over all modes of inheritance\n    if \"contributingVariants\" in moi:  #  checking if there is evidence of contributing variants\n        for cv in moi[\"contributingVariants\"]:  # iterating over all contributing variants\n          variant_results.append({\"chromosome\": cv[\"contigName\"],\n                                  \"start_pos\": cv[\"start\"],\n                                  \"end_pos\": cv[\"end\"],\n                                  \"ref_allele\": cv[\"ref\"],\n                                  \"alt_allele\": cv[\"alt\"]})\n
        "},{"location":"tutorial/exomiser-tutorial/#tsv-variants","title":"TSV VARIANTS","text":"

        In the Pfeiffer-HIPHIVE-exome.variants.tsv file it is possible for a variant to appear multiple times, depending on the MOI it is compatible with. For example, in the excerpt of the file below, MUC6 has two variants ranked 7th under the AD model and two ranked 8th under an AR (compound heterozygous) model. In the AD case the CONTRIBUTING_VARIANT column indicates whether the variant was (1) or wasn't (0) used for calculating the EXOMISER_GENE_COMBINED_SCORE and EXOMISER_GENE_VARIANT_SCORE.

        #RANK   ID      GENE_SYMBOL     ENTREZ_GENE_ID  MOI     P-VALUE EXOMISER_GENE_COMBINED_SCORE    EXOMISER_GENE_PHENO_SCORE       EXOMISER_GENE_VARIANT_SCORE     EXOMISER_VARIANT_SCORE  CONTRIBUTING_VARIANT    WHITELIST_VARIANT       VCF_ID  RS_ID   CONTIG  START   END     REF     ALT     CHANGE_LENGTH   QUAL    FILTER  GENOTYPE        FUNCTIONAL_CLASS        HGVS    EXOMISER_ACMG_CLASSIFICATION    EXOMISER_ACMG_EVIDENCE  EXOMISER_ACMG_DISEASE_ID        EXOMISER_ACMG_DISEASE_NAME      CLINVAR_ALLELE_ID       CLINVAR_PRIMARY_INTERPRETATION  CLINVAR_STAR_RATING     GENE_CONSTRAINT_LOEUF   GENE_CONSTRAINT_LOEUF_LOWER     GENE_CONSTRAINT_LOEUF_UPPER     MAX_FREQ_SOURCE MAX_FREQ        ALL_FREQ        MAX_PATH_SOURCE MAX_PATH        ALL_PATH\n1       10-123256215-T-G_AD     FGFR2   2263    AD      0.0000  0.9957  0.9187  1.0000  1.0000  1       1               rs121918506     10      123256215       123256215       T       G       0       900.0000        PASS    0/1     missense_variant        FGFR2:ENST00000346997.2:c.1688A>C:p.(Glu563Ala) PATHOGENIC      PM2,PP3_Strong,PP4,PP5_Strong   ORPHA:87        Apert syndrome  28333   PATHOGENIC_OR_LIKELY_PATHOGENIC 2       0.13692 0.074   0.27                            REVEL   0.965   REVEL=0.965,MVP=0.9517972\n2       5-71755984-C-G_AD       ZNF366  167465  AD      0.0018  0.9237  0.8195  0.7910  0.7910  1       0               rs375204168     5       71755984        71755984        C       G       0       380.8900        PASS    0/1     splice_region_variant   ZNF366:ENST00000318442.5:c.1332+8G>C:p.?        UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.27437 0.155   0.515   EXAC_AMERICAN   0.07975895      THOUSAND_GENOMES=0.01997,TOPMED=0.01096,ESP_EUROPEAN_AMERICAN=0.0116,ESP_ALL=0.0077,EXAC_AMERICAN=0.07975895,EXAC_NON_FINNISH_EUROPEAN=0.010914307,GNOMAD_E_AMR=0.07153929,GNOMAD_E_NFE=0.010890082,GNOMAD_E_OTH=0.018328445\n3       16-2150254-G-A_AD       PKD1    5310    AD      0.0050  0.8272  0.6597  0.8707  0.8707  1       0               rs147967021     16      2150254 2150254 G       A       0       406.0800        PASS    0/1     missense_variant        PKD1:ENST00000262304.4:c.9625C>T:p.(Arg3209Cys) UNCERTAIN_SIGNIFICANCE                          1319391 UNCERTAIN_SIGNIFICANCE  1       0.12051 0.082   0.179   EXAC_AMERICAN   0.06979585      THOUSAND_GENOMES=0.01997,TOPMED=0.007934,EXAC_AMERICAN=0.06979585,EXAC_NON_FINNISH_EUROPEAN=0.0015655332,EXAC_SOUTH_ASIAN=0.012149192,GNOMAD_E_AFR=0.006708708,GNOMAD_E_AMR=0.05070389,GNOMAD_E_NFE=0.002718672,GNOMAD_E_SAS=0.013009822,GNOMAD_G_AFR=0.011462632       MVP     0.8792868       REVEL=0.346,MVP=0.8792868\n4       3-56653839-CTG-C_AD     CCDC66  285331  AD      0.0051  0.8262  0.5463  0.9984  0.9984  1       0               rs751329549     3       56653839        56653841        CTG     C       -2      1872.9400       PASS    0/1     frameshift_truncation   CCDC66:ENST00000326595.7:c.2572_2573del:p.(Val858Glnfs*6)       UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.9703  0.78    1.215   GNOMAD_E_AMR    0.011914691     TOPMED=7.556E-4,EXAC_EAST_ASIAN=0.01155535,EXAC_NON_FINNISH_EUROPEAN=0.0015023135,GNOMAD_E_AMR=0.011914691,GNOMAD_E_EAS=0.0057977736,GNOMAD_E_NFE=8.988441E-4\n5       13-110855918-C-G_AD     COL4A1  1282    AD      0.0075  0.7762  0.5288  0.9838  0.9838  1       0               rs150182714     13      110855918       110855918       C       G       0       1363.8700       PASS    0/1     missense_variant        COL4A1:ENST00000375820.4:c.994G>C:p.(Gly332Arg) UNCERTAIN_SIGNIFICANCE  PP3_Moderate    OMIM:175780     Brain small vessel disease with or without ocular anomalies     333515  CONFLICTING_PATHOGENICITY_INTERPRETATIONS       1       0.065014        0.035   0.128   ESP_EUROPEAN_AMERICAN   0.0233  THOUSAND_GENOMES=0.01997,TOPMED=0.0068,ESP_EUROPEAN_AMERICAN=0.0233,ESP_ALL=0.0154,EXAC_AFRICAN_INC_AFRICAN_AMERICAN=0.009609841,EXAC_NON_FINNISH_EUROPEAN=0.007491759,GNOMAD_E_AFR=0.013068479,GNOMAD_E_NFE=0.0071611437,GNOMAD_G_NFE=0.013324451      MVP     0.9869305       REVEL=0.886,MVP=0.9869305\n6       6-132203615-G-A_AD      ENPP1   5167    AD      0.0079  0.7695  0.5112  0.9996  0.9996  1       0               rs770775549     6       132203615       132203615       G       A       0       922.9800        PASS    0/1     splice_donor_variant    ENPP1:ENST00000360971.2:c.2230+1G>A:p.? UNCERTAIN_SIGNIFICANCE  PVS1_Strong                             NOT_PROVIDED    0       0.41042 0.292   0.586   GNOMAD_E_SAS    0.0032486517    TOPMED=7.556E-4,EXAC_NON_FINNISH_EUROPEAN=0.0014985314,GNOMAD_E_NFE=0.0017907989,GNOMAD_E_SAS=0.0032486517\n7       11-1018088-TG-T_AD      MUC6    4588    AD      0.0089  0.7563  0.5046  0.9990  0.9990  1       0               rs765231061     11      1018088 1018089 TG      T       -1      441.8100        PASS    0/1     frameshift_variant      MUC6:ENST00000421673.2:c.4712del:p.(Pro1571Hisfs*21)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.0070363074    GNOMAD_E_AMR=0.0030803352,GNOMAD_G_NFE=0.0070363074\n7       11-1018093-G-GT_AD      MUC6    4588    AD      0.0089  0.7563  0.5046  0.9990  0.9989  0       0               rs376177791     11      1018093 1018093 G       GT      1       592.4500        PASS    0/1     frameshift_elongation   MUC6:ENST00000421673.2:c.4707dup:p.(Pro1570Thrfs*136)   NOT_AVAILABLE                                   NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.007835763     GNOMAD_G_NFE=0.007835763\n8       11-1018088-TG-T_AR      MUC6    4588    AR      0.0089  0.7562  0.5046  0.9990  0.9990  1       0               rs765231061     11      1018088 1018089 TG      T       -1      441.8100        PASS    0/1     frameshift_variant      MUC6:ENST00000421673.2:c.4712del:p.(Pro1571Hisfs*21)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.0070363074    GNOMAD_E_AMR=0.0030803352,GNOMAD_G_NFE=0.0070363074\n8       11-1018093-G-GT_AR      MUC6    4588    AR      0.0089  0.7562  0.5046  0.9990  0.9989  1       0               rs376177791     11      1018093 1018093 G       GT      1       592.4500        PASS    0/1     frameshift_elongation   MUC6:ENST00000421673.2:c.4707dup:p.(Pro1570Thrfs*136)   UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.007835763     GNOMAD_G_NFE=0.007835763\n9       7-44610376-G-A_AD       DDX56   54606   AD      0.0091  0.7545  0.5036  0.9992  0.9992  1       0               rs774566321     7       44610376        44610376        G       A       0       586.6600        PASS    0/1     stop_gained     DDX56:ENST00000258772.5:c.991C>T:p.(Arg331*)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.56071 0.379   0.852   EXAC_SOUTH_ASIAN        0.006114712     EXAC_SOUTH_ASIAN=0.006114712,GNOMAD_E_SAS=0.0032509754\n10      14-96730313-G-A_AD      BDKRB1  623     AD      0.0093  0.7525  0.5018  1.0000  1.0000  1       0                       14      96730313        96730313        G       A       0       378.2200        PASS    0/1     stop_gained     BDKRB1:ENST00000216629.6:c.294G>A:p.(Trp98*)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.52212 0.272   1.097                                        \n
        "},{"location":"tutorial/exomiser-tutorial/#tsv-genes","title":"TSV GENES","text":"

        In the Pfeiffer-HIPHIVE-exome.genes.tsv file, all the various phenotypic scores and HPO matches from the HUMAN, MOUSE, FISH and PPI comparisons are reported per each gene. It is possible for a gene to appear multiple times, depending on the MOI it is compatible with, given the filtered variants. For example in the example below MUC6 is ranked 7th under the AD model and 8th under an AR model.

        #RANK   ID      GENE_SYMBOL     ENTREZ_GENE_ID  MOI     P-VALUE EXOMISER_GENE_COMBINED_SCORE    EXOMISER_GENE_PHENO_SCORE       EXOMISER_GENE_VARIANT_SCORE     HUMAN_PHENO_SCORE       MOUSE_PHENO_SCORE       FISH_PHENO_SCORE        WALKER_SCORE    PHIVE_ALL_SPECIES_SCORE OMIM_SCORE      MATCHES_CANDIDATE_GENE  HUMAN_PHENO_EVIDENCE    MOUSE_PHENO_EVIDENCE    FISH_PHENO_EVIDENCE     HUMAN_PPI_EVIDENCE      MOUSE_PPI_EVIDENCE      FISH_PPI_EVIDENCE\n1       FGFR2_AD        FGFR2   2263    AD      0.0000  0.9957  0.9187  1.0000  0.8671  0.9187  0.0000  0.5057  0.9187  1.0000  0       Apert syndrome (ORPHA:87): Syndactyly (HP:0001159)-Toe syndactyly (HP:0001770), Strabismus (HP:0000486)-Strabismus (HP:0000486), Hypoplasia of the maxilla (HP:0000327)-Hypoplasia of the maxilla (HP:0000327), Proptosis (HP:0000520)-Proptosis (HP:0000520), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Brachyturricephaly (HP:0000244),  Strabismus (HP:0000486)-ocular hypertelorism (MP:0001300), Hypoplasia of the maxilla (HP:0000327)-short maxilla (MP:0000097), Proptosis (HP:0000520)-exophthalmos (MP:0002750), Hypertelorism (HP:0000316)-ocular hypertelorism (MP:0001300), Brachyturricephaly (HP:0000244)-abnormal frontal bone morphology (MP:0000107),                    Proximity to FGF18 Syndactyly (HP:0001159)-abnormal metatarsal bone morphology (MP:0003072), Strabismus (HP:0000486)-abnormal neurocranium morphology (MP:0000074), Hypoplasia of the maxilla (HP:0000327)-maxilla hypoplasia (MP:0000457), Proptosis (HP:0000520)-abnormal neurocranium morphology (MP:0000074), Hypertelorism (HP:0000316)-abnormal neurocranium morphology (MP:0000074), Brachyturricephaly (HP:0000244)-abnormal neurocranium morphology (MP:0000074),\n2       ZNF366_AD       ZNF366  167465  AD      0.0018  0.9237  0.8195  0.7910  0.0000  0.8195  0.0000  0.5015  0.8195  1.0000  0               Syndactyly (HP:0001159)-syndactyly (MP:0000564), Strabismus (HP:0000486)-microphthalmia (MP:0001297), Hypoplasia of the maxilla (HP:0000327)-micrognathia (MP:0002639), Proptosis (HP:0000520)-microphthalmia (MP:0001297), Hypertelorism (HP:0000316)-microphthalmia (MP:0001297), Brachyturricephaly (HP:0000244)-microphthalmia (MP:0001297),                Proximity to CTBP1 associated with Wolf-Hirschhorn syndrome (ORPHA:280): Syndactyly (HP:0001159)-Arachnodactyly (HP:0001166), Strabismus (HP:0000486)-Strabismus (HP:0000486), Hypoplasia of the maxilla (HP:0000327)-Micrognathia (HP:0000347), Proptosis (HP:0000520)-Proptosis (HP:0000520), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Calvarial skull defect (HP:0001362),\n3       PKD1_AD PKD1    5310    AD      0.0050  0.8272  0.6597  0.8707  0.0000  0.6597  0.2697  0.5069  0.6597  1.0000  0               Strabismus (HP:0000486)-micrognathia (MP:0002639), Hypoplasia of the maxilla (HP:0000327)-micrognathia (MP:0002639), Proptosis (HP:0000520)-micrognathia (MP:0002639), Hypertelorism (HP:0000316)-micrognathia (MP:0002639), Brachyturricephaly (HP:0000244)-micrognathia (MP:0002639),         Hypoplasia of the maxilla (HP:0000327)-mandibular arch skeleton malformed, abnormal (ZP:0001708),       Proximity to IFT88 associated with Retinitis pigmentosa (ORPHA:791): Strabismus (HP:0000486)-Ophthalmoplegia (HP:0000602), Hypoplasia of the maxilla (HP:0000327)-Wide nasal bridge (HP:0000431),       Proximity to IFT88 Syndactyly (HP:0001159)-polydactyly (MP:0000562), Strabismus (HP:0000486)-supernumerary molars (MP:0010773), Hypoplasia of the maxilla (HP:0000327)-supernumerary molars (MP:0010773), Proptosis (HP:0000520)-supernumerary molars (MP:0010773), Hypertelorism (HP:0000316)-supernumerary molars (MP:0010773), Brachyturricephaly (HP:0000244)-abnormal coronal suture morphology (MP:0003840),\n4       CCDC66_AD       CCDC66  285331  AD      0.0051  0.8262  0.5463  0.9984  0.0000  0.5463  0.0000  0.0000  0.5463  1.0000  0               Strabismus (HP:0000486)-abnormal cone electrophysiology (MP:0004022), Hypoplasia of the maxilla (HP:0000327)-abnormal rod electrophysiology (MP:0004021), Proptosis (HP:0000520)-abnormal rod electrophysiology (MP:0004021), Hypertelorism (HP:0000316)-abnormal rod electrophysiology (MP:0004021), Brachyturricephaly (HP:0000244)-abnormal retina photoreceptor layer morphology (MP:0003728),\n5       COL4A1_AD       COL4A1  1282    AD      0.0075  0.7762  0.5288  0.9838  0.3882  0.5288  0.0000  0.5047  0.5288  1.0000  0       Brain small vessel disease with or without ocular anomalies (OMIM:175780): Strabismus (HP:0000486)-Exotropia (HP:0000577),      Strabismus (HP:0000486)-buphthalmos (MP:0009274), Hypoplasia of the maxilla (HP:0000327)-abnormal cornea morphology (MP:0001312), Proptosis (HP:0000520)-abnormal cornea morphology (MP:0001312), Hypertelorism (HP:0000316)-abnormal cornea morphology (MP:0001312), Brachyturricephaly (HP:0000244)-abnormal retina morphology (MP:0001325),          Proximity to COL7A1 associated with Localized dystrophic epidermolysis bullosa, pretibial form (ORPHA:79410): Syndactyly (HP:0001159)-Nail dystrophy (HP:0008404), Hypoplasia of the maxilla (HP:0000327)-Carious teeth (HP:0000670),   Proximity to COL7A1 Syndactyly (HP:0001159)-abnormal digit morphology (MP:0002110), Strabismus (HP:0000486)-abnormal tongue morphology (MP:0000762), Hypoplasia of the maxilla (HP:0000327)-abnormal tongue morphology (MP:0000762), Proptosis (HP:0000520)-abnormal tongue morphology (MP:0000762), Hypertelorism (HP:0000316)-abnormal tongue morphology (MP:0000762),\n6       ENPP1_AD        ENPP1   5167    AD      0.0079  0.7695  0.5112  0.9996  0.3738  0.5112  0.0000  0.5044  0.5112  1.0000  0       Autosomal recessive hypophosphatemic rickets (ORPHA:289176): Hypoplasia of the maxilla (HP:0000327)-Tooth abscess (HP:0030757), Brachyturricephaly (HP:0000244)-Craniosynostosis (HP:0001363),  Syndactyly (HP:0001159)-abnormal elbow joint morphology (MP:0013945), Strabismus (HP:0000486)-abnormal retina morphology (MP:0001325), Hypoplasia of the maxilla (HP:0000327)-abnormal snout skin morphology (MP:0030533), Proptosis (HP:0000520)-abnormal retina morphology (MP:0001325), Hypertelorism (HP:0000316)-abnormal retina morphology (MP:0001325), Brachyturricephaly (HP:0000244)-abnormal retina morphology (MP:0001325),                 Proximity to DMP1 associated with Autosomal recessive hypophosphatemic rickets (ORPHA:289176): Hypoplasia of the maxilla (HP:0000327)-Tooth abscess (HP:0030757), Brachyturricephaly (HP:0000244)-Craniosynostosis (HP:0001363),        Proximity to DMP1 Syndactyly (HP:0001159)-abnormal long bone hypertrophic chondrocyte zone (MP:0000165), Strabismus (HP:0000486)-abnormal dental pulp cavity morphology (MP:0002819), Hypoplasia of the maxilla (HP:0000327)-abnormal dental pulp cavity morphology (MP:0002819), Proptosis (HP:0000520)-abnormal dental pulp cavity morphology (MP:0002819), Hypertelorism (HP:0000316)-abnormal dental pulp cavity morphology (MP:0002819), Brachyturricephaly (HP:0000244)-abnormal dental pulp cavity morphology (MP:0002819),\n7       MUC6_AD MUC6    4588    AD      0.0089  0.7563  0.5046  0.9990  0.0000  0.0000  0.0000  0.5046  0.5046  1.0000  0                               Proximity to GALNT2 associated with Congenital disorder of glycosylation, type IIt (OMIM:618885): Syndactyly (HP:0001159)-Sandal gap (HP:0001852), Strabismus (HP:0000486)-Alternating exotropia (HP:0031717), Hypoplasia of the maxilla (HP:0000327)-Tented upper lip vermilion (HP:0010804), Proptosis (HP:0000520)-Hypertelorism (HP:0000316), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Brachycephaly (HP:0000248),\n8       MUC6_AR MUC6    4588    AR      0.0089  0.7562  0.5046  0.9990  0.0000  0.0000  0.0000  0.5046  0.5046  1.0000  0                               Proximity to GALNT2 associated with Congenital disorder of glycosylation, type IIt (OMIM:618885): Syndactyly (HP:0001159)-Sandal gap (HP:0001852), Strabismus (HP:0000486)-Alternating exotropia (HP:0031717), Hypoplasia of the maxilla (HP:0000327)-Tented upper lip vermilion (HP:0010804), Proptosis (HP:0000520)-Hypertelorism (HP:0000316), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Brachycephaly (HP:0000248),\n9       DDX56_AD        DDX56   54606   AD      0.0091  0.7545  0.5036  0.9992  0.0000  0.0000  0.3788  0.5036  0.5036  1.0000  0                       Brachyturricephaly (HP:0000244)-head decreased width, abnormal (ZP:0000407),            Proximity to PAK1IP1 Strabismus (HP:0000486)-abnormal maxilla morphology (MP:0000455), Hypoplasia of the maxilla (HP:0000327)-abnormal maxilla morphology (MP:0000455), Proptosis (HP:0000520)-abnormal maxilla morphology (MP:0000455), Hypertelorism (HP:0000316)-abnormal maxilla morphology (MP:0000455), Brachyturricephaly (HP:0000244)-decreased forebrain size (MP:0012138),\n10      BDKRB1_AD       BDKRB1  623     AD      0.0093  0.7525  0.5018  1.0000  0.0000  0.0000  0.0000  0.5018  0.5018  1.0000  0                                       Proximity to OPN4 Strabismus (HP:0000486)-abnormal visual pursuit (MP:0006156), Hypoplasia of the maxilla (HP:0000327)-abnormal visual pursuit (MP:0006156), Proptosis (HP:0000520)-abnormal visual pursuit (MP:0006156), Hypertelorism (HP:0000316)-abnormal visual pursuit (MP:0006156), Brachyturricephaly (HP:0000244)-abnormal retina ganglion cell morphology (MP:0008056),\n

        "},{"location":"tutorial/exomiser-tutorial/#docker-for-mac","title":"Docker for Mac","text":"

        Follow this link and download the Docker.dmg for your operating system.

        The Docker.dmg will be found in your /Downloads directory.

        After double-clicking on the Docker.dmg a new window will come up:

        Drag and drop the Docker app into your /Applications folder. Double-click on the Docker symbol. Docker Desktop will start in the background, after you allow it to be opened.

        Additionally, this window will come up to agree the Docker subscription service agreement.

        After running the installation restart your terminal and check the Docker installation again from inside your terminal with:

        docker --version\n

        If the output gives you a version and no error you are ready to go. If you have not already restarted your terminal do this now, and the error should be fixed.

        In case you get an error message like this, please ensure you have downloaded the correct docker.dmg.

        Now, whenever you want to pull images make sure that Docker is running in the background. Otherwise, you may get an error stating it's not able to connect to the Docker deamon.

        "},{"location":"tutorial/exomiser-tutorial/#docker-for-windows","title":"Docker for Windows","text":"

        Follow this link and download the Docker installer for Windows.

        Inside your /Downloads directory, search for the Installer and double-click.

        To run on Windows Docker requires a virtual machine. Docker recommends using WSL2. More information on this can be found here.

        Click \u201cOk\u201d and wait a bit.

        Now you will have to restart your computer.

        After restarting, Docker should start automatically and the Service Agreement will come up, which you will have to agree to use Docker:

        If the Docker desktop app is showing this warning upon start, do not click \u201cRestart\u201d, yet. Instead, follow the link and install the kernel update.

        The link should point you to an address with a separate download link.

        Start and finish the installation for WSL.

        If you still have the Docker Desktop dialog window open in the background, click on Restart. Otherwise, just restart your computer as you normally do.

        If Docker Desktop did not start on its own, simply open it from the shortcut on your Desktop. You can do the initial orientation by clicking \"Start\".

        After this, your Docker Desktop screen should look like this:

        Now, whenever you want to pull images make sure that Docker is running in the background.

        "},{"location":"tutorial/fhkb/","title":"Manchester Family History Advanced OWL","text":"

        This is a fork of the infamous Manchester Family History Advanced OWL Tutorial version 1.1, located at

        http://owl.cs.manchester.ac.uk/publications/talks-and-tutorials/fhkbtutorial/

        The translation to markdown is not without issue, but we are making a start to making the tutorial a bit more accessible. This reproduction is done with kind permission by Robert Stevens.

        "},{"location":"tutorial/fhkb/#original-credits-version-11-see-pdf","title":"Original credits (Version 1.1, see pdf):","text":"

        Authors:

        • Robert Stevens
        • Margaret Stevens
        • Nicolas Matentzoglu
        • Simon Jupp
        Bio-Health Informatics Group\nSchool of Computer Science\nUniversity of Manchester\nOxford Road\nManchester\nUnited Kingdom\nM13 9PL\nrobert.stevens@manchester.ac.uk\n
        "},{"location":"tutorial/fhkb/#contributors","title":"Contributors","text":"
        • v 1.0 Robert Stevens, Margaret Stevens, Nicolas Matentzoglu and Simon Jupp
        • v 1.1 Robert Stevens, Nicolas Matentzoglu
        • v 2.0 (Web version) Robert Stevens, Nicolas Matentzoglu, Shawn Tan
        The University of Manchester\nCopyright\u00a9 The University of Manchester\nNovember 25, 2015\n
        "},{"location":"tutorial/fhkb/#acknowledgements","title":"Acknowledgements","text":"

        This tutorial was realised as part of the Semantic Web Authoring Tool (SWAT) project (see http://www.swatproject.org), which is supported by the UK Engineering and Physical Sciences Research Council (EPSRC) grant EP/G032459/1, to the University of Manchester, the University of Sussex and the Open University.

        "},{"location":"tutorial/fhkb/#dedication","title":"Dedication","text":"

        The Stevens family\u2014all my ancestors were necessary for this to happen. Also, for my Mum who gathered all the information.

        "},{"location":"tutorial/fhkb/#contents","title":"Contents","text":"

        Preamble

        • 0.1 Licencing
        • 0.2 Reporting Errors
        • 0.3 Acknowledgements

        1. Introduction

        • 1.1 Learning Outcomes
        • 1.2 Why Family History?
        • 1.3 How to use this Tutorial
        • 1.4 FHKB Resources
        • 1.5 Conventions used in this Tutorial

        2. Adding some Individuals to the FHKB

        • 2.1 A World of Objects
        • 2.2 Asserting Parentage Facts
        • 2.3 Summary

        3. Ancestors and Descendants

        • 3.1 Ancestors and Descendants
        • 3.2 Grandparents and Great Grandparents
        • 3.3 Summary

        4. Modelling the Person Class

        • 4.1 The Class of Person
        • 4.2 Describing Sex in the FHKB
        • 4.3 Defining Man and Woman
        • 4.4 Describing Parentage in the FHKB
        • 4.5 Who has a father?
        • 4.6 Filling in Domains and Ranges for the FHKB Properties
        • 4.7 Inconsistencies
        • 4.8 Adding Some Defined Classes for Ancestors and so on
        • 4.9 Summary

        5. Siblings in the FHKB

        • 5.1 Blood relations
        • 5.2 Siblings: Option One
        • 5.2.1 Brothers and Sisters
        • 5.3 Siblings: Option two
        • 5.3.1 Which Modelling Option to Choose for Siblings?
        • 5.4 Half-Siblings
        • 5.5 Aunts and Uncles
        • 5.6 Summary

        6. Individuals in Class Expressions

        • 6.1 Richard and Robert\u2019s Parents and Ancestors
        • 6.2 Closing Down What we Know About Parents and Siblings
        • 6.3 Summary

        7. Data Properties in the FHKB

        • 7.1 Adding Some Data Properties for Event Years - 7.1.1 Counting Numbers of Children
        • 7.2 The Open World Assumption
        • 7.3 Adding Given and Family Names
        • 7.4 Summary

        8. Cousins in the FHKB

        • 8.1 Introducing Cousins
        • 8.2 First Cousins
        • 8.3 Other Degrees and Removes of Cousin
        • 8.4 Doing First Cousins Properly
        • 8.5 Summary

        9. Marriage in the FHKB

        • 9.1 Marriage - 9.1.1 Spouses
        • 9.2 In-Laws
        • 9.3 Brothers and Sisters In-Law
        • 9.4 Aunts and Uncles in-Law
        • 9.5 Summary

        10. Extending the TBox

        • 10.1 Adding Defined Classes
        • 10.2 Summary

        11. Final remarks

        A FHKB Family Data

        "},{"location":"tutorial/fhkb/#preamble","title":"Preamble","text":""},{"location":"tutorial/fhkb/#01-licencing","title":"0.1 Licencing","text":"

        The \u2018Manchester Family History Advanced OWL Tutorial\u2019 by Robert Stevens, Margaret Stevens, Nicolas Matentzoglu, Simon Jupp is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

        "},{"location":"tutorial/fhkb/#02-reporting-errors","title":"0.2 Reporting Errors","text":"

        This manual will almost certainly contain errors, defects and infelicities. Do report them to robert.stevens@manchester.ac.uk supplying chapter, section and some actual context in the form of words will help in fixing any of these issues.

        "},{"location":"tutorial/fhkb/#03-acknowledgements","title":"0.3 Acknowledgements","text":"

        As well as the author list, many people have contributed to this work. Any contribution, such as reporting bugs etc., is rewarded by an acknowledgement of contribution (in alphabetical order) when the authors get around to adding them:

        • Graham Goff;
        • Matthew Horridge;
        • Jared Leo;
        • Fennie Liang;
        • Phil Lord;
        • Fiona McNeill;
        • Eleni Mikroyannidi;
        • George Moulton;
        • Bijan Parsia;
        • Alan Rector;
        • Uli Sattler;
        • Dmitry Tsarkov;
        • Danielle Welter.
        "},{"location":"tutorial/fhkb/#chapter-1","title":"Chapter 1","text":""},{"location":"tutorial/fhkb/#introduction","title":"Introduction","text":"

        This tutorial introduces the tutee to many of the more advanced features of the Web Ontology Language (OWL). The topic of family history is used to take the tutee through various modelling issues and, in doing so, using many features of OWL 2 to build a Family History Knowledge Base (FHKB). The exercises are designed to maximise inference about family history through the use of an automated reasoner on an OWL knowledge base (KB) containing many members of the Stevens family.

        The aim, therefore, is to enable people to learn advanced features of OWL 2 in a setting that involves both classes and individuals, while attempting to maximise the use of inference within the FHKB.

        "},{"location":"tutorial/fhkb/#11-learning-outcomes","title":"1.1 Learning Outcomes","text":"

        By doing this tutorial, a tutee should be able to:

        1. Know about the separation of entities into TBox and ABox;
        2. Use classes and individuals in modelling;
        3. Write fancy class expressions;
        4. Assert facts about individuals;
        5. Use the effects of property hierarchies, property characteristics, domain/range constraints to drive inference;
        6. Use constraints and role chains on inferences about individuals;
        7. Understand and manage the consequences of the open world assumption in the TBox and ABox;
        8. Use nominals in class expressions;
        9. Appreciate some limits of OWL 2.
        "},{"location":"tutorial/fhkb/#12-why-family-history","title":"1.2 Why Family History?","text":"

        Building an FHKB enables us to meet our learning outcomes through a topic that is accessible to virtually everyone. Family history or genealogy is a good topic for a general tutorial on OWL 2 as it enables us to touch many features of the language and, importantly, it is a field that everyone knows. All people have a family and therefore a family history \u2013 even if they do not know their particular family history. A small caveat was put on the topic being accessible to everyone as some cultures differ, for instance, in the description of cousins and labels given to different siblings. Nevertheless, family history remains a topic that everyone can talk about.

        Family history is a good topic for an OWL ontology as it obviously involves both individuals \u2013 the people involved \u2013 and classes of individuals \u2013 people, men and women, cousins, etc. Also, it is an area rich in inference; from only knowing parentage and sex of an individual, it is possible to work out all family relationships \u2013 for example, sharing parents implies a sibling relationship; one\u2019s parent\u2019s brothers are one\u2019s uncles; one\u2019s parent\u2019s parents are one\u2019s grandparents. So, we should be able to construct an ontology that allows us to both express family history, but also to infer family relationships between people from knowing relatively little about them.

        As we will learn through the tutorial, OWL 2 cannot actually do all that is needed to create a FHKB. This is unfortunate, but we use it to our advantage to illustrate some of the limitations of OWL 2. We know that rule based systems can do family history with ease, but that is not the point here; we are not advocating OWL DL as an appropriate mechanism for doing family history, but we do use it as a good educational example.

        We make the following assumptions about what people know:

        • We assume that people know OWL to the level that is known at the end of the Pizza tutorial. Some ground will be covered again, but a lot of basic OWL is assumed.
        • We assume people know how to use Prot\u00e9g\u00e9 or their OWL environment of choice. We do not give \u2018click by click\u2019 instructions. At some places, some guidance is given, but this is not to be relied upon as Prot\u00e9g\u00e9 changes and we will not keep up to date.

        We make some simplifying assumptions in this tutorial:

        • We take a conventional western view of family history. This appears to have most effects on naming of sibling and cousin relationships.
        • We take a straight-forward view on the sex of people; this is explored further in Chapter 4;
        • A \u2018conventional\u2019 view of marriage is taken; this is explored further in Chapter 9.
        • We make no special treatment of time or dates; we are only interested in years and we do not do anything fancy; this is explored more in Chapter 7.
        • We assume the ancestors of people go back for ever; obviously this is not true, eventually one would get back to a primordial soup and one\u2019s ancestors are not humans (members of the classPerson), but we don\u2019t bother with such niceties.

        At the end of the tutorial, you should be able to produce a property hierarchy and a TBox or class hierarchy such as shown in Figure 1.1; all supported by use of the automated reasoner and a lot of OWL 2\u2019s features.

        Figure 1.1: A part of the class and property hierarchy of the final FHKB.

        "},{"location":"tutorial/fhkb/#13-how-to-use-this-tutorial","title":"1.3 How to use this Tutorial","text":"

        Here are some tips on using this manual to the best advantage:

        • Start at the beginning and work towards the end.
        • You can just read the tutorial, but building the FHKB will help you learn much more and much more easily
        • Use the reasoner in each task; a lot of the FHKB tutorial is about using the reasoner and not doing so will detract from the learning outcomes.
        "},{"location":"tutorial/fhkb/#14-fhkb-resources","title":"1.4 FHKB Resources","text":"

        The following resources are available at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial:

        • A full version of the Stevens FHKB.
        • Some links to papers about the FHKB.
        • Some slides about the FHKB tutorial.
        • A set of OWL resources for each stage of the FHKB.
        • Some blogs about the FHKB are at http://robertdavidstevens.wordpress.com.
        "},{"location":"tutorial/fhkb/#15-conventions-used-in-this-tutorial","title":"1.5 Conventions used in this Tutorial","text":"
        • All OWL is written in Manchester Syntax.
        • When we use FHKB entities within text, we use a sans serif typeface.
        • We use CamelCase for classes and property names.
        • Class names start with upper case.
        • Individual names start with a lower case letter and internal underscores to break words.
        • Property names usually start with \u2018is\u2019 or \u2018has\u2019 and are CamelCase with a lower case initial letter.
        • Many classes and individuals in the FHKB have annotation properties, usually human readable labels. They show up in some of the examples in Manchester syntax, but are not made explicit as part of the tasks in this tutorial.
        • Every object property is necessarily a sub-property of topObjectProperty. It does not have to be asserted as such. Nevertheless, there might be situations where this relationship is made explicit in this tutorial for illustrative reasons.
        • The individuals we are dealing with represent distinct persons. Throughout the tutorial, once the respective axiom is introduced (chapter 7.1.1), the reader should make sure that all his or her individuals are always made distinct, especially when he or she adds a new one.
        • At the end of each chapter, we note the Description Logic Language (expressivity) needed to represent the ontology and the reasoning times for a number of state of the art reasoning systems. This should get the reader a sense how difficult the FHKB becomes for reasoners to deal with over time.
        • When there is some scary OWL or the reasoner may find the FHKB hard work, you will see a \u2018here be dragons\u2019 image.1

        1 The image comes fromhttp://ancienthomeofdragon.homestead.com/May 2012.

        "},{"location":"tutorial/fhkb/#chapter-2","title":"Chapter 2","text":""},{"location":"tutorial/fhkb/#adding-some-individuals-to-the-fhkb","title":"Adding some Individuals to the FHKB","text":"

        In this chapter we will start by creating a fresh OWL ontology and adding some individuals that will be surrogates for people in the FHKB. In particular you will:

        1. Create a new OWL ontology for the FHKB;
        2. Add some individuals that will stand for members of the Stevens family.
        3. Describe parentage of people.
        4. Add some facts to specific individuals as to their parentage;
        5. See the reasoner doing some work.
        6. At the moment we will ignore sex; sex will not happen until Chapter 4.
        "},{"location":"tutorial/fhkb/#21-a-world-of-objects","title":"2.1 A World of Objects","text":"

        The \u2018world\u20192 or field of interest we model in an ontology is made up of objects or individuals. Such objects include, but are not limited to:

        • People, their pets, the pizzas they eat;
        • The processes of cooking pizzas, living, running, jumping, undertaking a journey;
        • The spaces within a room, a bowl, an artery;
        • The attributes of things such as colour, dimensions, speed, shape of various objects;
        • Boundaries, love, ideas, plans, hypotheses.

        2 we use \u2018world\u2019 as a synonym of \u2018field of interest\u2019 or \u2018domain\u2019. \u2018World\u2019 does not restrict us to modelling the physical world outside our consciousness.

        We observe these objects, either outside lying around in the world or in our heads. OWL is all about modelling such individuals. Whenever we make a statement in OWL, when we write down an axiom, we are making statements about individuals. When thinking about the axioms in an ontology it is best to think about the individuals involved, even if OWL individuals do not actually appear in the ontology. All through this tutorial we will always be returning to the individuals being described in order to help us understand what we are doing and to help us make decisions about how to do it.

        "},{"location":"tutorial/fhkb/#22-asserting-parentage-facts","title":"2.2 Asserting Parentage Facts","text":"

        Biologically, everyone has parents; a mother and a father3. The starting point for family history is parentage; we need to relate the family member objects by object properties. An object property relates two objects, in this case a child object with his or her mother or father object. To do this we need to create three object properties:

        Task 1: Creating object properties for parentage
        1. Create a new ontology;
        2. Create an object property hasMother;
        3. Create a property isMotherOf and give hasMother the InverseOf: isMotherOf;
        4. Do the same for the property hasFather;
        5. Create a property hasParent; give it the obvious inverse;
        6. Make hasMother and hasFather sub-properties of hasParent.
        7. Run the reasoner and look at the property hierarchy.

        Note how the reasoner has automatically completed the sub-hierarchy for isParentOf: isMotherOf and isFatherOf are inferred to be sub-properties of isParentOf.

        The OWL snippet below shows some parentage fact assertions on an individual. Note that rather than being assertions to an anonymous individual via some class, we are giving an assertion to a named individual.

        Individual: grant_plinth\nFacts: hasFather mr_plinth, hasMother mrs_plinth\n

        3 Don\u2019t quibble; it\u2019s true enough here.

        Task 2: Create the ABox
        1. Using the information in Table A.1 (see appendix) about parentage (so the columns about fathers and mothers), enter the fact assertions for the people which appear in rows shaded in grey. We will only use the hasMother and hasFather properties in our fact assertions. You do not need to assert names and birth years yet. This exercise will require you to create an individual for every person we want to talk about, using the Firstname_Secondname_Familyname_Birthyear pattern, as for example in Robert_David_Bright_1965.

        While asserting facts about all individuals in the FHKB will be a bit tedious at\ntimes, it might be useful to at least do the task for a subset of the family members.\nFor the impatient reader, there is a convenience snapshot of the ontology including\nthe raw individuals available at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n

        If you are working with Prot\u00e9g\u00e9, you may want to look at the Matrix plugin for\nProt\u00e9g\u00e9 at this point. The plugin allows you to add individuals quickly in the\nform of a regular table, and can significantly reduce the effort of adding any type\nof entity to the ontology. In order to install the matrix plugin, open Prot\u00e9g\u00e9 and\ngo to File \u00bb Check for plugins. Select the \u2018Matrix Views\u2019 plugin. Click install,\nwait until the the installation is confirmed, close and re-open Prot\u00e9g\u00e9; go to the\n\u2018Window\u2019 menu item, select \u2018Tabs\u2019 and add the \u2018Individuals matrix\u2019.\n

        Now do the following:

        Task 3: DL queries
        1. Classify the FHKB.
        2. Issue the DL query hasFather value David_Bright_1934 and look at the answers (remember to check the respective checkbox in Prot\u00e9g\u00e9 to include individuals in your query results).
        3. Issue the DL query isFatherOf value Robert_David_Bright_1965. Look at the answers. 4. Look at the entailed facts on Robert_David_Bright_1965.

        You should find the following:

        • David Bright (1934) is the father of Robert David Bright (1965) and Richard John Bright (1962).
        • Robert David Bright (1965) has David Bright 1934 as a parent.

        Since we have said that isFatherOf has an inverse of hasFather, and we have asserted that Robert_David_Bright_1965 hasFather David_Bright_1934, we have a simple entailment that David_Bright_1934 isFatherOf Robert_David_Bright_1965. So, without asserting the isFatherOf facts, we have been able to ask and get answers for that DL query.

        As we asserted that Robert_David_Bright_1965 hasFather David_Bright_1934, we also infer that he hasParent David_Bright_1934; this is because hasParent is the super-property of hasFather and the sub-property implies the super-property. This works all the way up the property tree until topObjectProperty, so all individuals are related by topObjectProperty\u2014this is always true. This implication \u2018upwards\u2019 is the way to interpret how the property hierarchies work.

        "},{"location":"tutorial/fhkb/#23-summary","title":"2.3 Summary","text":"

        We have now covered the basics of dealing with individuals in OWL ontologies. We have set up some properties, but without domains, ranges, appropriate characteristics and then arranged them in a hierarchy. From only a few assertions in our FHKB, we can already infer many facts about an individual: Simple exploitation of inverses of properties and super-properties of the asserted properties.

        We have also encountered some important principles:

        • We get inverses for free.
        • The sub-property implies the super-property. So, hasFather implies the hasParent fact between individuals. This entailment of the super-property is very important and will drive much of the inference we do with the FHKB.
        • Upon reasoning we get the inverses of properties between named individuals for free.
        • Lots is still open. For example, we do not know the sex of individuals and what other children, other than those described, people in the FHKB may have.

        The FHKB ontology at this stage of the tutorial has an expressivity of ALHI.\n

        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 0.026 sec (0.00001 % of final), by Pellet\n2.2.0 0.144 sec (0.00116 % of final) and by FaCT++ 1.6.4 is approximately 0.\nsec (0.000 % of final). 0 sec indicates failure or timeout.\n
        "},{"location":"tutorial/fhkb/#chapter-3","title":"Chapter 3","text":""},{"location":"tutorial/fhkb/#ancestors-and-descendants","title":"Ancestors and Descendants","text":"

        In this Chapter you will:

        1. Use sub-properties and the transitive property characteristic to infer ancestors of people;
        2. Add properties to the FHKB property hierarchy that will infer ancestors and descendants of a person without adding any more facts to the FHKB;
        3. Explore the use of sub-property chains for grandparents, great grandparents and so on;
        4. Place all of these new object properties in the property hierarchy and in that way learn more about the implications of the property hierarchy.

        Find a snapshot of the ontology at this stage at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial.\n
        "},{"location":"tutorial/fhkb/#31-ancestors-and-descendants","title":"3.1 Ancestors and Descendants","text":"

        The FHKB has parents established between individuals and we know that all people have two parents. A parent is an ancestor of its children; a person\u2019s parent\u2019s parents are its ancestors; and so on. So, in our FHKB, Robert\u2019s ancestors are David, Margaret, William, Iris, Charles, Violet, James, another Violet, another William, Sarah and so on. If my parent\u2019s parents are my ancestors, then what we need is a transitive version of the hasParent property. Obviously we do not want hasParent to be transitive, as Robert\u2019s grandparents (and so on) would become his parents (and that would be wrong).

        We can easily achieve what is necessary. We need a hasAncestor property that has a transitive characteristic. The trick is to make this a super-property of the hasParent property. As explained before, a sub-property implies its super-property. So, if individual x holds a hasParent property with an individual y , then it also holds an instance of its super-property hasAncestor with the individual y. If individual y then holds a hasParent property with another individual z , then there is also, by implication, a hasAncestor property between y and z. As hasAncestor is transitive, x and z also hold a hasAncestor relationship between them.

        The inverse of hasAncestor can either be isAncestorOf or hasDescendant. We choose the isAncestorOf option.

        Task 4: Object properties: exploiting the semantics
        1. Make a new object property hasRelation, make it symmetric.
        2. Make a new object property hasAncestor.
        3. Make it a sub-property of hasRelation and a super-property of hasParent.
        4. Make hasAncestor transitive.
        5. Create the inverse isAncestorOf. Do not \u2018stitch\u2019 it into the property hierarchy; the reasoner will sort it all out for you.
        6. Run the reasoner and issue the DL query hasAncestor value William_George_Bright_1901.
        7. Issue the query isAncestorOf value Robert_David_Bright_1965.

        The hasAncestor object property will look like this:

        ObjectProperty: hasAncestor\nSubPropertyOf: hasRelation\nSuperPropertyOf: hasParent,\nCharacteristics: Transitive\nInverseOf: isAncestorOf\n

        As usual, it is best to think of the objects or individuals involved in the relationships. Consider the three individuals \u2013 Robert, David and William. Each has a hasFather property, linking Robert to David and then David to William. As hasFather implies its super-property hasParent, Robert also has a hasParent property with David, and David has a hasParent relation to William. Similarly, as hasParent implies hasAncestor, the Robert object has a hasAncestor relation to the David object and the David object has one to the William object. As hasAncestor is transitive, Robert not only holds this property to the David object, but also to the William object (and so on back through Robert\u2019s ancestors).

        "},{"location":"tutorial/fhkb/#32-grandparents-and-great-grandparents","title":"3.2 Grandparents and Great Grandparents","text":"

        We also want to use a sort of restricted transitivity in order to infer grandparents, great grandparents and so on. My grandparents are my parent\u2019s parents; my grandfathers are my parent\u2019s fathers. My great grandparents are my parent\u2019s parent\u2019s parents. My great grandmothers are my parent\u2019s parent\u2019s mothers. This is sort of like transitivity, but we want to make the paths only a certain length and, in the case of grandfathers, we want to move along two relationships \u2013 hasParent and then hasFather.

        We can do this with OWL 2\u2019s sub-property chains. The way to think about sub-property chains is: If we see property x followed by property y linking three objects, then it implies that property z is held between

        Figure 3.1: Three blobs representing objects of the classPerson. The three objects are linked by a hasParent property and this implies a hasGrandparent property.

        the first and third objects. Figure 3.1 shows this diagrammatically for the hasGrandfather property.

        For various grandparent object properties we need the following sets of implications:

        • My parent\u2019s parents are my grandparents;
        • My parent\u2019s fathers are my grandfathers;
        • My parent\u2019s mothers are my grandmothers;
        • My parent\u2019s parent\u2019s parents are my great grandparents or my grandparent\u2019s parents are my great grandparents.
        • My parent\u2019s parent\u2019s fathers are my great grandfathers or my parent\u2019s grandfathers are my great grandfathers;
        • My parent\u2019s parent\u2019s mothers are my great grandmothers (and so on).

        Notice that we can trace the paths in several ways, some have more steps than others, though the shorter paths themselves employ paths. Tracing these paths is what OWL 2\u2019s sub-property chains achieve. For the new object property hasGrandparent we write:

        ObjectProperty: hasGrandparent SubPropertyChain: hasParent o hasParent\n

        We read this as \u2018hasParent followed by hasParent implies hasGrandparent\u2019. We also need to think where the hasGrandparent property fits in our growing hierarchy of object properties. Think about the implications: Does holding a hasParent property between two objects imply that they also hold a hasGrandparent property? Of course the answer is \u2018no\u2019. So, this new property is not a super-property of hasParent. Does the holding of a hasGrandparent property between two objects imply that they also hold an hasAncestor property? The answer is \u2018yes\u2019; so that should be a super-property of hasGrandparent. We need to ask such questions of our existing properties to work out where we put it in the object property hierarchy. At the moment, our hasGrandparent property will look like this:

        ObjectProperty: hasGrandParent\nSubPropertyOf: hasAncestor\nSubPropertyChain: hasParent o hasParent\nSuperPropertyOf: hasGrandmother, hasGrandfather\nInverseOf: isGrandParentOf\n

        Do the following task:

        Task 5: Grandparents object properties
        1. Make the hasGrandparent, hasGrandmother and hasGrandfather object properties and the obvious inverses (see OWL code above);
        2. Go to the individuals tabs and inspects the inferred object property assertions for Robert_David_Bright_1965 and his parents.

        Again, think of the objects involved. We can take the same three objects as before: Robert, David and William. Think about the properties that exist, both by assertion and implication, between these objects. We have asserted only hasFather between these objects. The inverse can be inferred between the actual individuals (remember that this is not the case for class level restrictions \u2013 that all instances of a class hold a property does not mean that the filler objects at the other end hold the inverse; the quantification on the restriction tells us this). Remember that:

        1. Robert holds a hasFather property with David;
        2. David holds a hasFather property with William;
        3. By implication through the hasParent super-property of hasFather, Robert holds a hasParent property with David, and the latter holds one with William;
        4. The sub-property chain on hasGrandfather then implies that Robert holds a hasGrandfather property to William. Use the diagram in figure 3.1 to trace the path; there is a hasParent path from Robert to William via David and this implies the hasGrandfather property between Robert and William.

        It is also useful to point out that the inverse of hasGrandfather also has the implication of the sub-property chain of the inverses of hasParent. That is, three objects linked by a path of two isParentOf properties implies that an isGrandfatherOf property is established between the first and third object, in this case William and Robert. As the inverses of hasFather are established by the reasoner, all the inverse implications also hold.

        "},{"location":"tutorial/fhkb/#33-summary","title":"3.3 Summary","text":"

        It is important when dealing with property hierarchies to think in terms of properties between objects and of the implications \u2018up the hierarchy\u2019. A sub-property implies its super-property. So, in our FHKB, two person objects holding a hasParent property between them, by implication also hold an hasAncestor property between them. In turn, hasAncestor has a super-property hasRelation and the two objects in question also hold, by implication, this property between them as well.

        We made hasAncestor transitive. This means that my ancestor\u2019s ancestors are also my ancestors. That a sub-property is transitive does not imply that its super-property is transitive. We have seen that by manipulating the property hierarchy we can generate a lot of inferences without adding any more facts to the individuals in the FHKB. This will be a feature of the whole process \u2013 keep the work to the minimum (well, almost).

        In OWL 2, we can also trace \u2018paths\u2019 around objects. Again, think of the objects involved in the path of properties that link objects together. We have done simple paths so far \u2013 Robert linked to David via hasParent and David linked to William via hasFather implies the link between Robert and William of hasGrandfather. If this is true for all cases (for which you have to use your domain knowledge), one can capture this implication in the property hierarchy. Again, we are making our work easier by adding no new explicit facts, but making use of the implication that the reasoner works out for us.

        The FHKB ontology at this stage of the tutorial has an expressivity ofALRI+.\n

        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 0.262 sec (0.00014 % of final), by Pellet\n2.2.0 0.030 sec (0.00024 % of final) and by FaCT++ 1.6.4 is approximately 0.004\nsec (0.000 % of final). 0 sec indicates failure or timeout.\n
        "},{"location":"tutorial/fhkb/#chapter-4","title":"Chapter 4","text":""},{"location":"tutorial/fhkb/#modelling-the-person-class","title":"Modelling the Person Class","text":"

        In this Chapter you will:

        1. Create a Person class;
        2. Describe Sex classes;
        3. Define Man and Woman;
        4. Ask which of the people in the FHKB has a father.
        5. Add domains and ranges to the properties in the FHKB.
        6. Make the FHKB inconsistent.
        7. Add some more defined classes about people and see some equivalence inferred between classes.

        These simple classes will form the structure for the whole FHKB.

        "},{"location":"tutorial/fhkb/#41-the-class-of-person","title":"4.1 The Class of Person","text":"

        For the FHKB, we start by thinking about the objects involved

        1. The people in a family \u2013 Robert, Richard, David, Margaret, William, Iris, Charles, Violet, Eileen, John and Peter;
        2. The sex of each of those people;
        3. The marriages in which they participated;
        4. The locations of their births;
        5. And many more...

        There is a class of Person that we will use to represent all these people objects.

        Task 6: Create the Person class
        1. Create a class called DomainEntity;
        2. Create a subclass of DomainEntity called Person.

        We use DomainEntity as a house-keeping measure. All of our ontology goes underneath this class. We can put other classes \u2018outside\u2019 the ontology, as siblings of DomainEntity, such as \u2018probe\u2019 classes we wish to use to test our ontology.

        The main thing to remember about the Person class is that we are using it to represent all \u2018people\u2019 individuals. When we make statements about the Person class, we are making statements about all \u2018people\u2019 individuals.

        What do we know about people? All members of the Person class have:

        • Sex \u2013 they are either male or female;
        • Everyone has a birth year;
        • Everyone has a mother and a father.

        There\u2019s a lot more we know about people, but we will not mention it here.

        "},{"location":"tutorial/fhkb/#42-describing-sex-in-the-fhkb","title":"4.2 Describing Sex in the FHKB","text":"

        Each and every person object has a sex. In the FHKB we will take a simple view on sex \u2013 a person is either male or female, with no intersex or administrative sex and so on. Each person only has one sex.

        We have two straight-forward options for modelling sex:

        1. Each person object has their own sex object, which is either male or female. Thus Robert\u2019s maleness is different from David\u2019s maleness.
        2. There is only one Maleness object and one Femaleness object and each person object has a relationship to either one of these sex objects, but not both.

        We will take the approach of having a class of Maleness objects and a class of Femaleness objects. These are qualities or attributes of self-standing objects such as a person. These two classes are disjoint, and each is a subclass of a class called Sex. The disjointness means that any one instance of Sex cannot be both an instance of Maleness and an instance of Femaleness at once. We also want to put in a covering axiom on the class Sex, which means that any instance of Sex must be either Maleness or Femaleness; there is no other kind of Sex.

        Again, notice that we have been thinking at the level of objects. We do the same when thinking about Person and their Sex. Each and every person is related to an instance of Sex. Each Person holds one relationship to a Sex object. To do this we create an object property called hasSex. We make this property functional, which means that any object can hold that property to only one distinct filler object.

        We make the domain of hasSex to be Person and the range to be Sex. The domain of Person means that any object holding that property will be inferred to be a member of the class Person. Putting the range of Sex on the hasSex property means that any object at the right-hand end of the hasSex property will be inferred to be of the class Sex. Again, think at the level of individuals or objects.

        We now put a restriction on the Person class to state that each and every instance of the class Person holds a hasSex property with an instance of the Sex class. It has an existential operator \u2018some\u2019 in the axiom, but the functional characteristic means that each Person object will hold only one hasSex property to a distinct instance of a Sex object4.

        4 An individual could hold two hasSex properties, as long as the sex objects at the right-hand end of the property are not different.

        Task 7: Modelling sex
        1. Create a class called Sex;
        2. Make it a subclass of DomainEntity;
        3. Make Person and Sex disjoint;
        4. Create two subclasses of Sex, Maleness and Femaleness;
        5. Make Maleness and Femaleness disjoint;
        6. Put a covering axiom on Sex such that it is equivalent to Maleness or Femaleness.
        7. Create an object property, hasSex , with the domain Person, the range Sex and give it the characteristic of \u2018Functional\u2019;
        8. Add a restriction hasSex some Sex to the class Person.

        The hasSex property looks like:

        ObjectProperty: hasSex\nCharacteristics: Functional\nDomain: Person\nRange: Sex\n

        The Person class looks like:

        Class: Person\nSubClassOf: DomainEntity,(hasSex some Sex)\nDisjointWith: Sex\n
        "},{"location":"tutorial/fhkb/#43-defining-man-and-woman","title":"4.3 Defining Man and Woman","text":"

        We now have some of the foundations for the FHKB. We have the concept of Person, but we also need to have the concepts of Man and Woman. Now we have Person, together with Maleness and Femaleness, we have the necessary components to define Man and Woman. These two classes can be defined as: Any Person object that has a male sex can be recognised to be a man; any Person object that has a female sex can be recognised as a member of the class woman. Again, think about what conditions are sufficient for an object to be recognised to be a member of a class; this is how we create defined classes through the use of OWL equivalence axioms.

        To make the Man and Woman classes do the following:

        Task 8: Describe men and women
        1. Create a class Man;
        2. Make it equivalent to a Person that hasSex some Maleness;
        3. Do the same, but with Femaleness, to create the Woman class;
        4. A covering axiom can be put on the Person class to indicate that man and woman are the only kinds of person that can exist. (This is not strictly true due to the way Sex has been described.)
        5. Run the reasoner and take a look.

        Having run the reasoner, the Man and Woman classes should appear underneath Person5.

        5Actually in Prot\u00e9g\u00e9, this might happen without the need to run the reasoner.

        The Man and Woman classes will be important for use as domain and range constraints on many of the properties used in the FHKB. To achieve our aim of maximising inference, we should be able to infer that individuals are members of Man, Woman or Person by the properties held by an object. We should not have to state the type of an individual in the FHKB.

        The classes for Man and Woman should look like:

        Class: Man\nEquivalentTo: Person and (hasSex some Maleness)\n
        Class: Woman\nEquivalentTo: Person and (hasSex some Femaleness)\n
        "},{"location":"tutorial/fhkb/#44-describing-parentage-in-the-fhkb","title":"4.4 Describing Parentage in the FHKB","text":"

        To finish off the foundations of the FHKB we need to describe a person object\u2019s parentage. We know that each and every person has one mother and each and every person has one father. Here we are talking about biological mothers and fathers. The complexities of adoption and step parents are outside the scope of this FHKB tutorial.

        Task 9: Describing Parentage
        1. Add the domain Person and the range Woman to the property hasMother.
        2. Do the same for the property hasFather, but give it the range Man;
        3. Give the property hasParent domain and range of Person;
        4. Run the reasoner.

        The (inferred) property hierarchy in the FHKB should look like that shown in Figure 4.1. Notice that we have asserted the sub-property axioms on one side of the property hierarchy. Having done so, the reasoner uses those axioms, together with the inverses, to work out the property hierarchy for the \u2018other side\u2019.

        We make hasMother functional, as any one person object can hold only one hasMother property to a distinct Woman object. The range of hasMother is Woman, as a mother has to be a woman. The Person object holding the hasMother property can be either a man or a woman, so we have the domain constraint as Person; this means any object holding a hasMother property will be inferred to be a Person. Similarly, any object at the right-hand end of a hasMother property will be inferred to be a Woman, which is the result we need. The same reasoning goes for hasFather and hasParent, with the sex constraints on the latter being only Person. The inverses of the two functional sub-properties of hasParent are not themselves functional. After all, a Woman can be the mother of many Person objects, but each Person object can have only one mother.

        Figure 4.1: The property hierarchy with the hasSex and the parentage properties

        Figure 4.2: the core TBox for the FHKB with the Person and Sex classes.

        Task 10: Restrict Person class
        1. As each and every person has a mother and each and every person has a father, place restrictions on the Person class as shown below.
        Class: Person\nSubClassOf: DomainEntity, (hasFather some Man), (hasMother some Woman),\n(hasSex some Sex)\nDisjointWith: Sex\n
        Task 11: DL queries for people and sex
        1. Issue the DL queries for Person, Man and Woman; look at the answers and count the numbers in each class; which individuals have no sex and why?
        2. You should find that many people have been inferred to be either Man or Woman, but some are, as we will see below, only inferred to be Person.

        The domain and range constraints on our properties have also driven some entailments. We have not asserted that David_Bright_1934 is a member of Man, but the range constraint on hasFather (or the inferred domain constraint on the isFatherOf relation) has enabled this inference to be made. This goes for any individual that is the right-hand-side (either inferred or asserted) of either hasFather or hasMother (where the range is that of Woman). For Robert David Bright, however, he is only the left-hand-side of an hasFather or an hasMother property, so we\u2019ve only entailed that this individual is a member of Person.

        "},{"location":"tutorial/fhkb/#45-who-has-a-father","title":"4.5 Who has a father?","text":"

        In our description of the Person class we have said that each and every instance of the class Person has a father (the same goes for mothers). So, when we ask the query \u2018which individuals have a father\u2019, we get all the instances of Person back, even though we have said nothing about the specific parentage of each Person. We do not know who their mothers and fathers are, but we know that they have one of each. We know all the individuals so far entered are members of the Person class; when asserting the type to be either Man or Woman (each of which is a subclass of Person), we infer that each is a person. When asserting the type of each individual via the hasSex property, we know each is a Person, as the domain of hasSex is the Person class. As we have also given the right-hand side of hasSex as either Maleness or Femaleness, we have given sufficient information to recognise each of these Person instances to be members of either Man or Woman.

        "},{"location":"tutorial/fhkb/#46-filling-in-domains-and-ranges-for-the-fhkb-properties","title":"4.6 Filling in Domains and Ranges for the FHKB Properties","text":"

        So far we have not systematically added domains and ranges to the properties in the FHKB. As a reminder, when a property has a domain of X any object holding that property will be inferred to be a member of class X. A domain doesn\u2019t add a constraint that only members of class X hold that property; it is a strong implication of class membership. Similarly, a property holding a range implies that an object acting as right-hand-side to a property will be inferred to be of that class. We have already seen above that we can use domains and ranges to imply the sex of people within the FHKB.

        Do the following:

        Task 12: Domains and Ranges
        1. Make sure the appropriate Person, Man and Woman are domains and ranges for hasFather, hasMother and hasParent.
        2. Run the reasoner and look at the property hierarchy.
        3. Also look at the properties hasAncestor, hasGrandparent, hasUncle and so on; look to see what domains and ranges are found. Add any domains and ranges explicitly as necessary.

        Prot\u00e9g\u00e9 for example in its current version (November 2015) does not visualise\ninherited domains and ranges in the same way as it shows inferred inverse relations.\n

        We typically assert more domains and ranges than strictly necessary. For example, if we say that hasParent has the domain Person, this means that every object x that is connected to another object y via the hasParent relation must be a Person. Let us assume the only thing we said about x and y is that they are connected by a hasMother relation. Since this implies that x and y are also connected by a hasParent relation (hasMother is a sub-property of hasParent) we do not have to assert that hasFather has the domain of Person; it is implied by what we know about the domain and range of hasParent.

        In order to remove as many assertions as possible, we may therefore choose to assert as much as we know starting from the top of the hierarchy, and only ever adding a domain if we want to constrain the already inferred domain even further (or range respectively). For example, in our case, we could have chosen to assert Person to be the domain of hasRelation. Since hasRelation is symmetric, it will also infer Person to be the range. We do not need to say anything for hasAncestor or hasParent, and only if we want to constrain the domain or range further (like in the case of hasFather by making the range Man) do we need to actually assert something. It is worth noting that because we have built the object property hierarchy from the bottom (hasMother etc.) we have ended up asserting more than necessary.

        "},{"location":"tutorial/fhkb/#47-inconsistencies","title":"4.7 Inconsistencies","text":"

        From the Pizza Tutorial and other work with OWL you should have seen some unsatisfiabilities. In Prot\u00e9g\u00e9 this is highlighted by classes going \u2018red\u2019 and being subclasses ofNothing; that is, they can have no instances in that model.

        Task 13: Inconsistencies
        1. Add the fact Robert_David_Bright_1965 hasMother David_Bright_1934.
        2. Run the classifier and see what happens.
        3. Remove that fact and run the classifier again.
        4. Now add the fact that Robert_David_Bright_1965 hasMother Iris_Ellen_Archer_1907
        5. Run the classifier and see what happens.
        6. Add and remove the functional characteristic to these properties and see what happens.

        After asserting the first fact it should be reported by the reasoner that the ontology is inconsistent. This means, in lay terms, that the model you\u2019ve provided in the ontology cannot accommodate the facts you\u2019ve provided in the fact assertions in your ABox\u2014that is, there is an inconsistency between the facts and the ontology... The ontology is inconsistent because David_Bright_1934 is being inferred to be a Man and a Woman at the same time which is inconsistent with what we have said in the FHKB.

        When we, however, say that Robert David Bright has two different mothers, nothing bad happens! Our domain knowledge says that the two women are different, but the reasoner does not know this as yet... ; Iris Ellen Archer and Margaret Grace Rever may be the same person; we have to tell the reasoner that they are different. For the same reason the functional characteristic also has no effect until the reasoner \u2018knows\u2019 that the individuals are different. We will do this in Section 7.1.1 and live with this \u2018fault\u2019 for the moment.

        "},{"location":"tutorial/fhkb/#48-adding-some-defined-classes-for-ancestors-and-so-on","title":"4.8 Adding Some Defined Classes for Ancestors and so on","text":"Task 14: Adding defined classes
        1. Add a defined class for Ancestor, MaleAncestor, FemaleAncestor;
        2. Add a defined class for Descendant, MaleDescendant and FemaleDescendant;
        3. Run the reasoner and view the resulting hierarchy.

        The code for the classes looks like:

        Class: Ancestor EquivalentTo: Person and isAncestorOf some Person\nClass: FemaleAncestor EquivalentTo: Woman and isAncestorOf some Person\nClass: Descendant EquivalentTo: Person and hasAncestor some Person\nClass: MaleDescendant EquivalentTo: Man and hasAncestor some Person\n

        The TBox after reasoning can be seen in Figure 4.3. Notice that the reasoner has inferred that several of the classes are equivalent or \u2018the same\u2019. These are: Descendant and Person; MaleDescendant and Man, FemaleDescendant and Woman.

        The reasoner has used the axioms within the ontology to infer that all the instances of Person are also instances of the class Descendant and that all the instances of Woman are also the same instances as the class Female Descendant. This is intuitively true; all people are descendants \u2013 they all have parents that have parents etc. and thus everyone is a descendant. All women are female people that have parents etc. As usual we should think about the objects within the classes and what we know about them. This time it is useful to think about the statements we have made about Person in this Chapter \u2013 that all instances of Person have a father and a mother; add to this the information from the property hierarchy and we know that all instances of Person have parents and ancestors. We have repeated all of this in our new defined classes for Ancestor and Descendant and the reasoner has highlighted this information.

        Figure 4.3: The defined classes from Section 4.8 in the FHKB\u2019s growing class hierarchy

        Task 15: More Ancestors
        1. Query for MaleDescendant. You should get Man back - they are equivalent (and this makes sense).
        2. As an additional exercise, also add in properties for forefathers and foremothers. You will follow the same pattern as for hasAncestor, but adding in, for instance, hasFather as the sub-property of the transitive super-property of hasForefather and setting the domains and ranges appropriately (or working out if they\u2019ll be inferred appropriately). Here we interpret a forefather as one\u2019s father\u2019s father etc. This isn\u2019t quite right, as a forefather is any male ancestor, but we\u2019ll do it that way anyway. You might want to play around with DL queries. Because of the blowup in inferred relationships, we decided to not include this pattern in the tutorial version of the FHKB.
        "},{"location":"tutorial/fhkb/#49-summary","title":"4.9 Summary","text":"

        Most of what we have done in this chapter is straight-forward OWL, all of which would have been met in the pizza tutorial. It is, however, a useful revision and it sets the stage for refining the FHKB. Figure 4.2 shows the basic set-up we have in the FHKB in terms of classes; we have a class to represent person, man and woman, all set-up with a description of sex, maleness and femaleness. It is important to note, however, the approach we have taken: We have always thought in terms of the objects we are modelling.

        Here are some things that should now be understood upon completing this chapter:

        1. Restrictions on a class in our TBox mean we know stuff about individuals that are members of that class, even though we have asserted no facts on those individuals. We have said, for instance, that all members of the class Person have a mother, so any individual asserted to be a Person must have a mother. We do not necessarily know who they are, but we know they have one.
        2. Some precision is missing \u2013 we only know Robert David Bright is a Person, not that he is a Man. This is because, so far, he only has the domain constraint of hasMother and hasFather to help out.
        3. We can cause the ontology to be inconsistent, for example by providing facts that cannot be accommodated by the model of our ontology. In the example, David Bright was inferred to be a member of two disjoint classes.

        Finally, we looked at some defined classes. We inferred equivalence between some classes where the extents of the classes were inferred to be the same \u2013 in this case the extents of Person and Descendant are the same. That is, all the objects that can appear in Person will also be members of Descendant. We can check this implication intuitively \u2013 all people are descendants of someone. Perhaps not the most profound inference of all time, but we did no real work to place this observation in the FHKB.

        This last point is a good general observation. We can make the reasoner do work\nfor us. The less maintenance we have to do in the FHKB the better. This will be\na principle that works throughout the tutorial.\n

        The FHKB ontology at this stage of the tutorial has an expressivity of SRIF.\n

        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 0.884 sec (0.00047 % of final), by Pellet\n2.2.0 0.256 sec (0.00207 % of final) and by FaCT++ 1.6.4 is approximately 0.013\nsec (0.000 % of final). 0 sec indicates failure or timeout.\n
        "},{"location":"tutorial/fhkb/#chapter-5","title":"Chapter 5","text":""},{"location":"tutorial/fhkb/#siblings-in-the-fhkb","title":"Siblings in the FHKB","text":"

        In this chapter you will:

        1. Explore options for determining finding siblings;
        2. Meet some of the limitations in OWL;
        3. Choose one of the options explored;
        4. Add facts for siblings;
        5. Use sub-property chains to find aunts and uncles;

        There is a snapshot of the ontology as required at this point in the tutorial available\nat http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n
        "},{"location":"tutorial/fhkb/#51-blood-relations","title":"5.1 Blood relations","text":"

        Do the following first:

        Task 16: The bloodrelation object property
        1. Create an hasBloodrelation object property, making it a sub-property of hasRelation.
        2. Add appropriate property characteristics.
        3. Make the already existing hasAncestor property a sub-property of hasBloodrelation.

        Does a blood relation of Robert have the same relationship to Robert (symmetry)? Is a blood relation of Robert\u2019s blood relation a blood relation of Robert (transitivity)? Think of an aunt by marriage; her children are my cousins and blood relations via my uncle, but my aunt is not my blood relation. My siblings share parents; male siblings are brothers and female siblings are sisters. So far we have asserted parentage facts for the Person in our ABox. Remember that our parentage properties have inverses, so if we have added an hasFather property between a Person and a Man, we infer the isFatherOf property between that Man and that Person.

        "},{"location":"tutorial/fhkb/#52-siblings-option-one","title":"5.2 Siblings: Option One","text":"

        We should have enough information within the FHKB to infer siblings. We could use a sub-property chain such as:

        ObjectProperty: hasSibling\nSubPropertyOf: hasBloodrelation\nCharacteristics: Symmetric, transitive\nSubPropertyChain: hasParent o isParentOf\n

        We make a property of hasSibling and make it a sub-property of hasBloodrelation. Remember, think of the objects involved and the implications we want to follow; being a sibling implies being a blood relation, it does not imply any of the other relationships we have in the FHKB.

        Note that we have made hasSibling symmetric; if Robert is sibling of Richard, then Richard is sibling of Robert. We should also think about transitivity; if David is sibling of Peter and Peter is sibling of John, then David is sibling of John. So, we make hasSibling symmetric and transitive (see Figure 5.1). However, we must take care of half-siblings: child 1 and child 2 share a mother, but not a father; child 2 and child 3 share the father, but not the mother \u2013 child 1 and child 3 are not even half-siblings. However, at least for the moment, we will simply ignore this inconvenience, largely so that we can explore what happens with different modelling options.

        Figure 5.1: Showing the symmetry and transitivity of the hasSibling (siblingof) property by looking at the brothers David, John and Peter

        We also have the implication using three objects (see Figure 5.2):

        1. Robert holds a hasParent property with David;
        2. David holds an isFatherOf property with Richard;
        3. This implies that Robert holds a hasSibling property with Richard;
        4. As hasSibling is symmetric, Richard holds an hasSibling property with Robert.

        Figure 5.2: Tracing out the sub-property chain for hasSibling; note that Robert is a sibling of himself by this path

        Do the following tasks:

        Task 17: Siblings
        1. Add the hasSibling property as above;
        2. Run the reasoner;
        3. Ask the DL query hasSibling value Robert_David_Bright_1965.

        From this last DL query you should get the answer that both Robert and Richard are siblings of Robert. Think about the objects involved in the sub-property chain: we go from Robert to David via the hasParent and from David to Richard via the isParentOf property; so this is OK. However, we also go from Robert to David and then we can go from David back to Robert again \u2013 so Robert is a sibling of Robert. We do not want this to be true.

        We can add another characteristic to the hasSibling property, the one of being irreflexive. This means that an object cannot hold the property with itself.

        Task 18: More siblings
        1. Add the irreflexive characteristic to the hasSibling property;
        2. Run the reasoner;

        Note that the reasoner claims you have an inconsistent ontology (or in some cases, you might get a message box saying \"Reasoner died\"). Looking at the hasSibling property again, the reason might not be immediately obvious. The reason for the inconsistency lies in the fact that we create a logical contradiction: through the property chain, we say that every Person is a sibling of him or herself, and again disallowing just that by adding the irreflexive characteristic. A different explanation lies within the OWL specification itself: In order to maintain decidability irreflexive properties must be simple - for example, they may not be property chains6.

        6 http://www.w3.org/TR/owl2-syntax/#The_Restrictions_on_the_Axiom_Closure

        "},{"location":"tutorial/fhkb/#521-brothers-and-sisters","title":"5.2.1 Brothers and Sisters","text":"

        We have only done siblings, but we obviously need to account for brothers and sisters. In an analogous way to motherhood, fatherhood and parenthood, we can talk about sex specific sibling relationships implying the sex neutral hasSibling; holding either a hasBrother or an isSisterOf between two objects would imply that a hasSibling property is also held between those two objects. This means that we can place these two sex specific sibling properties below hasSibling with ease. Note, however, that unlike the hasSibling property, the brother and sister properties are not symmetric. Robert hasBrother Richard and vice versa , but if Daisy hasBrother William, we do not want William to hold an hasBrother property with Daisy. Instead, we create an inverse of hasBrother, isBrotherOf, and the do the same for isSisterOf.

        We use similar, object based, thought processes to choose whether to have transitivity as a characteristic of hasBrother. Think of some sibling objects or individuals and place hasBrother properties between them. Make it transitive and see if you get the right answers. Put in a sister to and see if it stil works. If David hasBrother Peter and Peter hasBrother John, then David hasBrother John; so, transitivity works in this case. Think of another example. Daisy hasBrother Frederick, and Frederick hasBrother William, thus Daisy hasBrother William. The inverses work in the same way; William isBrotherOf Frederick and Frederick isBrotherOf Daisy; thus William isBrotherOf Daisy. All this seems reasonable.

        Task 19: Brothers and sisters
        1. Create the hasBrother object property as shown below;
        2. Add hasSister in a similar manner; 3. Add appropriate inverses, domains and ranges.
        ObjectProperty: hasBrother\nSubPropertyOf: hasSibling\nCharacteristics: Transitive\nInverseOf: isBrotherOf\nRange: Man\n

        We have some hasSibling properties (even if they are wrong). We also know the sex of many of the people in the FHKB through the domains and ranges of properties such as hasFather, hasMother and their inverses..

        Can we use sub-property chains in the same way as we have used them in the hasSibling property? The issue is that of sex; the property isFatherOf is sex neutral at the child end, as is the inverse hasFather (the same obviously goes for the mother properties). We could use a sub-property chain of the form:

        ObjectProperty: hasBrother\nSubPropertyChain: hasParent o hasSon\n

        A son is a male child and thus that object is a brother of his siblings. At the moment we do not have son or daughter properties. We can construct a property hierarchy as shown in Figure 5.3. This is made up from the following properties:

        • hasChild and isChildOf
        • hasSon(range Man and domain Person) and isSonOf;
        • hasDaughter(range Woman domain Person) and isDaughterOf

        Note that hasChild is the equivalent of the existing property isParentOf; if I have a child, then I am its parent. OWL 2 can accommodate this fact. We can add an equivalent property axiom in the following way:

        ObjectProperty: isChildOf\nEquivalentTo: hasParent\n

        We have no way of inferring the isSonOf and isDaughterOf from what already exists. What we want to happen is the implication of \u2018Man and hasParent Person implies isSonOf\u2019. OWL 2 and its reasoners cannot do this implication. It has been called the \u2018man man problem\u20197. Solutions for this have been developed [3], but are not part of OWL 2 and its reasoners.

        Figure 5.3: The property hierarchy for isChildOf and associated son/daughter properties

        7 http://lists.w3.org/Archives/Public/public-owl-dev/2007JulSep/0177.html

        Child property Parent Robert David Bright 1965 isSonOf David Bright 1934, Margaret Grace Rever 1934 Richard John Bright 1962 isSonOf David Bright 1934, Margaret Grace Rever 1934 Mark Bright 1956 isSonOf John Bright 1930, Joyce Gosport Ian Bright 1959 isSonOf John Bright 1930, Joyce Gosport Janet Bright 1964 isDaughterOf John Bright 1930, Joyce Gosport William Bright 1970 isSonOf John Bright 1930, Joyce Gosport

        Table 5.1: Child property assertions for the FHKB

        Thus we must resort to hand assertions of properties to test out our new path:

        Task 20: Sons and daughters
        1. Add the property hierarchy shown in Figure 5.3, together with the equivalent property axiom and the obvious inverses.
        2. As a test (after running the reasoner), ask the DL query isChildOf value David_Bright_1934 and you should have the answer of Richard and Robert;
        3. Add the sub-property paths as described in the text;
        4. Add the assertions shown in Table 5.1;
        5. Run the reasoner;
        6. Ask the DL query for the brother of Robert David Bright and the sister of Janet.

        Of course, it works, but we see the same problem as above. As usual, think of the objects involved. Robert isSonOf David and David isParentOf Robert, so Robert is his own brother. Irreflexivity again causes problems as it does above (Task 18).

        "},{"location":"tutorial/fhkb/#53-siblings-option-two","title":"5.3 Siblings: Option two","text":"

        Our option one has lots of problems. So, we have an option of asserting the various levels of sibling. We can take the same basic structure of sibling properties as before, but just fiddle around a bit and rely on more assertion while still trying to infer as much as possible. We will take the following approach:

        • We will take off the sub-property chains of the sibling properties as they do not work;
        • We will assert the leaf properties of the sibling sub-hierarchy sparsely and attempt to infer as much as possible.
        Person Property Person Robert David Bright 1965 isBrotherOf Richard John Bright 1962 David Bright 1934 isBrotherOf John Bright 1930 David Bright 1934 isBrotherOf Peter William Bright 1941 Janet Bright 1964 isSisterOf Mark Bright 1956 Janet Bright 1964 isSisterOf Ian Bright 1959 Janet Bright 1964 isSisterOf William Bright 1970 Mark Bright 1956 isBrotherOf Ian Bright 1959 Mark Bright 1956 isBrotherOf Janet Bright 1964 Mark Bright 1956 isBrotherOf William Bright 1970

        Table 5.2: The sibling relationships to add to the FHKB.

        Do the following:

        Task 21: Add sibling assertions
        1. Remove the sub-property chains of the sibling properties and the isChildOf assertions as explained above.
        2. Add the Sibling assertions shown in table 5.2;
        3. Run the reasoner;
        4. Ask isBrotherOf value Robert_David_Bright_1965;
        5. Ask isBrotherOf value Richard_John_Bright_1962;
        6. Ask hasBrother value Robert_David_Bright_1965;
        7. Ask hasBrother value Richard_John_Bright_1962;
        8. Ask isSisterOf value William_Bright_1970;
        9. Ask the query Man and hasSibling value Robert_David_Bright_1965.

        We can see some problems with this option as well:

        • With these properties asserted, Richard only has a hasBrother property to Robert. We would really like an isBrotherOf to Robert to hold.
        • The query Man and hasSibling value Robert only retrieves Robert himself. Because we only asserted that Robert is a brother of Richard, and the domain of isBrotherOf is Man we know that Robert is a Man, but we do not know anything about the Sex of Richard.
        "},{"location":"tutorial/fhkb/#531-which-modelling-option-to-choose-for-siblings","title":"5.3.1 Which Modelling Option to Choose for Siblings?","text":"

        Which of the two options gives the worse answers and which is the least effort? Option one is obviously the least effort; we only have to assert the same parentage facts as we already have; then the sub-property chains do the rest. It works OK for hasSibling, but we cannot do brothers and sisters adequately; we need Man and hasSibling \u2290 isBrotherOf and we cannot do that implication. This means we cannot ask the questions we need to ask.

        So, we do option two, even though it is hard work and is still not perfect for query answering, even though we have gone for a sparse assertion mode. Doing full sibling assertion would work, but is a lot of effort.

        We could start again and use the isSonOfandisDaughterOf option, with the sub-property chains described above. This still has the problem of everyone being their own sibling. It can get the sex specific sibling relationships, but requires a wholesale re-assertion of parentage facts. We will continue with option two, largely because it highlights some nice problems later on.

        "},{"location":"tutorial/fhkb/#54-half-siblings","title":"5.4 Half-Siblings","text":"

        In Section 5.2 we briefly talked about half-siblings. So far, we have assumed full-siblings (or, rather, just talked about siblings and made no distinction). Ideally, we would like to accommodate distinctions between full- and half-siblings; here we use half-siblings, where only one parent is in common between two individuals, as the example. The short-answer is, unfortunately, that OWL 2 cannot deal with half-siblings in the way that we want - that is, such that we can infer properties between named individuals indicating full- or half-sibling relationships.

        It is possible to find sets of half-brothers in the FHKB by writing a defined class or DL-query for a particular individual.} The following fragment of OWL defines a class that looks for the half-brothers of an individual called \u2018Percival\u2019:

        Class: HalfBrotherOfPercival\nEquivalentTo: Man and (((hasFather some (not (isFatherOf value Percival))) and\n(hasMother some (isMotherOf value Percival))) or ((hasFather some (isFatherOf\nvalue Percival)) and (hasMother some (not (isMotherOf value Percival)))))\n

        Here we are asking for any man that either has Percival\u2019s father but not his mother, or his mother, but not his father. This works fine, but is obviously not a general solution. The OWL description is quite complex and the writing will not scale as the number of options (hypothetically, as the number of parents increases... ) increases; it is fine for man/woman, but go any higher and it will become very tedious to write all the combinations.

        Another way of doing this half-brother class to find the set of half-brothers of a individual is to use cardinality constraints:

        Class: HalfBrotherOfPercival\nEquivalentTo: Man and (hasParent exactly 1 (isParentOf value Percival))\n

        This is more succinct. We are asking for a man that has exactly one parent from the class of individuals that are the class of Percival\u2019s parents. This works, but one more constraint has to be present in the FHKB. We need to make sure that there can be only two parents (or indeed, just a specified number of parents for a person). If we leave it open as to the number of parents a person has, the reasoner cannot work out that there is a man that shares exactly one parent, as there may be other parents. We added this constraint to the FHKB in Section 6.2; try out the classes to check that they work.

        These two solutions have been about finding sets of half-brothers for an individual. What we really want in the FHKB is to find half-brothers between any given pair of individuals.

        Unfortunately we cannot, without rules, ask OWL 2 to distinguish full- and half-siblings \u2013 we cannot count the number of routes taken between siblings via different distinct intermediate parent objects.

        "},{"location":"tutorial/fhkb/#55-aunts-and-uncles","title":"5.5 Aunts and Uncles","text":"

        An uncle is a brother of either my mother or father. An aunt is a sister of either my mother or father. In common practice, wives and husbands of aunts and uncles are usually uncles and aunts respectively. Formally, these aunts and uncles are aunts-in-law and uncles-in-law. Whatever approach we take, we cannot fully account for aunts and uncles until we have information about marriages, which will not have until Chapter 9. We will, however, do the first part now.

        Look at the objects and properties between them for the following facts:

        • Robert has father David and mother Margaret;
        • David has brothers Peter and John;
        • Margaret has a sister Eileen;
        • Robert thus has the uncles John and Peter and an aunt Eileen.

        As we are tracing paths or \u2018chains\u2019 of objects and properties we should use sub-property chains as a solution for the aunts and uncles. We can make an hasUncle property as follows (see Figure 5.4):

        ObjectProperty: hasUncle\nSubPropertyOf: hasBloodrelation\nDomain: Man\nRange: Person\nSubPropertyChain: hasParent o hasBrother\nInverseOf: isUncleOf\n

        Figure 5.4: Tracing out the path between objects to get the hasUncle sub-property chain.

        Notice we have the domain of Man and range of Person. We also have an inverse. As usual, we can read this as \u2018an object that holds an hasParent property, followed by an object holding a hasBrother property, implies that the first object holds an hasUncle property with the last object\u2019.

        Note also where the properties (include the ones for aunt) go in the object property hierarchy. Aunts and uncles are not ancestors that are in the direct blood line of a person, but they are blood relations (in the narrower definition that we are using). Thus the aunt and uncle properties go under the hasBloodrelation property (see Figure 5.5). Again, think of the implications between objects holding a property between them; that two objects linked by a property implies that those two objects also hold all the property\u2019s super-properties as well. As long as all the super-properties are true, the place in the object property hierarchy is correct (think about the implications going up, rather than down).

        Figure 5.5: The object property hierarchy with the aunt and uncle properties included. On the right side, we can see the hasUncle property as shown by Prot\u00e9g\u00e9.

        Do the following tasks:

        Task 22: Uncles and Aunts
        1. Add the hasUncle property as above;
        2. Add the hasAunt property as well;
        3. Ask for the uncles of Julie_Bright_1966 and for Mark_Bright_1956;
        4. Add similar properties for hasGreatUncle and hasGreatAunt and place them in the property hierarchy.

        We can see this works \u2013 unless we have any gaps in the sibling relationships (you may have to fix these). Great aunts and uncles are simply a matter of adding another \u2018parent\u2019 leg into the sub-property chain. We are not really learning anything new with aunts and uncles, except that we keep gaining a lot for

        free through sub-property chains. We just add a new property with its sub-property chain and we get a whole lot more inferences on individuals. To see what we now know about Robert David Bright, do the following:

        Task 23: What do we know?
        1. Save the ontology and run the reasoner;
        2. Look at inferences related to the individual Robert David Bright (see warning in the beginning of this chapter).
        3. If you chose to use DL queries in Prot\u00e9g\u00e9, do not forget to tick the appropriate check-boxes.

        You can now see lots of facts about Robert David Bright, with only a very few actual assertions directly on Robert David Bright.

        "},{"location":"tutorial/fhkb/#56-summary","title":"5.6 Summary","text":"

        Siblings have revealed several things for us:

        • We can use just the parentage facts to find siblings, but everyone ends up being their own sibling;
        • We cannot make the properties irreflexive, as the knowledge base becomes inconsistent;
        • We would like an implication of Man and hasSibling \u2283 isBrotherOf, but OWL 2 doesn\u2019t do this implication;
        • Whatever way we model siblings, we end up with a bit of a mess;
        • OWL 2 cannot do half-siblings;
        • However, we can get close enough and we can start inferring lots of facts via sub-property chains using the sibling relationships.

        The FHKB ontology at this stage of the tutorial has an expressivity ofSRIF.\n

        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 1355.614 sec (0.71682 % of final), by\nPellet 2.2.0 0.206 sec (0.00167 % of final) and by FaCT++ 1.6.4 is approximately\n0.039 sec (0.001 % of final). 0 sec indicates failure or timeout.\n
        "},{"location":"tutorial/fhkb/#chapter-6","title":"Chapter 6","text":""},{"location":"tutorial/fhkb/#individuals-in-class-expressions","title":"Individuals in Class Expressions","text":"

        In this chapter you will:

        1. Use individuals within class expressions;
        2. Make classes to find Robert and Richard\u2019s parents, ancestors, and so on;
        3. Explore equivalence of such classes;
        4. Re-visit the closed world.

        There is a snapshot of the ontology as required at this point in the tutorial available\nat http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n
        "},{"location":"tutorial/fhkb/#61-richard-and-roberts-parents-and-ancestors","title":"6.1 Richard and Robert\u2019s Parents and Ancestors","text":"

        So far we have only used object properties between unspecified objects. We can, however, specify a specific individual to act at the right-hand-side of a class restriction or type assertion on an individual. The basic syntax for so-called nominals is:

        Class: ParentOfRobert\nEquivalentTo: Person and isParentOf valueRobert_David_Bright_1965\n

        This is an equivalence axiom that recognises any individual that is a Person and a parent of Robert David Bright.

        Task 24: Robert and Richards parents
        1. Create the class ParentOfRobert as described above;
        2. Classify \u2013 inspect where the class is placed in the FHKB TBox and look at which individuals classify as members of the class;
        3. Do the same for a class with the value of Richard_John_Bright_1962 and classify;
        4. Finally create a class ParentOfRichardAndRobert, defining it as Person and isParentOf some {Robert_David_Bright_1965 ,Richard_John_Bright_1962 }; again see what happens on classification. Note that the expressions isMotherOf value Robert_David_Bright_1965 and isMotherOf some {Robert_David_Bright_1965 } are practically identical. The only difference is that using value, you can only specify one individual, while some relates to a class (a set of individuals).

        We see that these queries work and that we can create more complex nominal based class expressions. The disjunction above is

        isParentOf some {Robert_David_Bright_1965, Richard_John_Bright_1965}\n

        The \u2018{\u2019 and \u2018}\u2019 are a bit of syntax that says \u2018here\u2019s a class of individual\u2019.

        We also see that the classes for the parents of Robert David Bright and Richard John Bright have the same members according to the FHKB, but that the two classes are not inferred to be equivalent. Our domain knowledge indicates the two classes have the same extents (members) and thus the classes are equivalent, but the automated reasoner does not make this inference. As usual, this is because the FHKB has not given the automated reasoner enough information to make such an inference.

        "},{"location":"tutorial/fhkb/#62-closing-down-what-we-know-about-parents-and-siblings","title":"6.2 Closing Down What we Know About Parents and Siblings","text":"

        The classes describing the parents of Richard and Robert are not equivalent, even though, as humans, we know their classes of parent are the same. We need more constraints so that it is known that the four parents are the only ones that exist. We can try this by closing down what we know about the immediate family of Robert David Bright.

        In Chapter 4 we described that a Person has exactly one Woman and exactly one Man as mother and father (by saying that the hasMother and hasFather properties are functional and thus only one of each may be held by any one individual to distinct individuals). The parent properties are defined in terms of hasParent, hasMother and hasFather. The latter two imply hasParent. The two sub-properties are functional, but there are no constraints on hasParent, so an individual can hold many instances of this property. So, there is no information in the FHKB to say a Person has only two parents (we say there is one mother and one father, but not that there are only two parents). Thus Robert and Richard could have other parents and other grandparents than those in the FHKB; we have to close down our descriptions so that only two parents are possible. There are two ways of doing this:

        1. Using qualified cardinality constraints in a class restriction;
        2. Putting a covering axiom on hasParent in the same way as we did for Sex in Chapter 4.
        Task 25: Closing the Person class
        1. Add the restriction hasParent exactly 2 Person to the classPerson;
        2. Run the reasoner;
        3. Inspect the hierarchy to see where ParentOfRobert and ParentOfRichard are placed and whether or not they are found to be equivalent;
        4. Now add the restriction hasParent max 2 Person to the class Person;
        5. Run the reasoner (taking note of how long the reasoning takes) and take another look.

        We find that these two classes are equivalent; we have supplied enough information to infer that these two classes are equivalent. So, we know that option one above works, but what about option two? This takes a bit of care to think through, but the basic thing is to think about how many ways there are to have a hasParent relationship between two individuals. We know that we can have either a hasFather or a hasMother property between two individuals; we also know that we can have only one of each of these properties between an individual and a distinct individual. However, the open world assumption tells us that there may be other ways of having a hasParent property between two individuals; we\u2019ve not closed the possibilities. By putting on the hasParent exactly 2 Person restriction on the Person class, we are effectively closing down the options for ways that a person can have parents; we know because of the functional characteristic on hasMother and hasFather that we can have only one of each of these and the two restrictions say that one of each must exist. So, we know we have two ways of having a parent on each Person individual. So, when we say that there are exactly two parents (no more and no less) we have closed down the world of having parents\u2014thus these two classes can be inferred to be equivalent. It is also worth noting that this extra axiom on the Person class will make the reasoner run much more slowly.

        Finally, for option 2, we have no way of placing a covering axiom on a property. What we\u2019d like to be able to state is something like:

        ObjectProperty: hasParent\nEquivalentTo: hasFather or hasMother\n

        but we can\u2019t.

        "},{"location":"tutorial/fhkb/#63-summary","title":"6.3 Summary","text":"

        For practice, do the following:

        Task 26: Additional Practice
        1. Add lots more classes using members of the ABox as nominals;
        2. Make complex expressions using nominals;
        3. After each addition of a nominal, classify and see what has been inferred within the FHKB.
        4. See if you can make classes for GrandparentOfRobert and GrandparentOfRichard and make them inferred to be equivalent.

        In this chapter we have seen the use of individuals within class expressions. It allows us to make useful queries and class definitions. The main things to note is that it can be done and that there is some syntax involved. More importantly, some inferences may not be as expected due to the open world assumption in OWL.

        By now you might have noticed a significant increase in the time the reasoner needs\nto classify. Closing down what we know about family relationships takes its toll on\nthe reasoner performance, especially the usage of 'hasParent exactly 2 Person'. At\nthis point we recommend rewriting this axiom to 'hasParent max 2 Person'. It gives\nus most of what we need, but has a little less negative impact on the reasoning\ntime.\n

        The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ.\n

        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 2067.273 sec (1.09313 % of final), by\nPellet 2.2.0 0.529 sec (0.00428 % of final) and by FaCT++ 1.6.4 is approximately\n0.147 sec (0.004 % of final). 0 sec indicates failure or timeout.\n
        "},{"location":"tutorial/fhkb/#chapter-7","title":"Chapter 7","text":""},{"location":"tutorial/fhkb/#data-properties-in-the-fhkb","title":"Data Properties in the FHKB","text":"

        We now have some individuals with some basic object properties between individuals. OWL 2, however, also has data properties that can relate an object or individual to some item of data. There are data about a Person, such as years of events and names etc. So, in this Chapter you will:

        1. Make some data properties to describe event years to people;
        2. Create some simple defined classes that group people by when they were born;
        3. Try counting the numbers of children people have...
        4. Deal with the open world assumption;
        5. Add given and family names to individuals in the FHKB.

        There is a snapshot of the ontology as required at this point in the tutorial available\nat http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial.\n
        "},{"location":"tutorial/fhkb/#71-adding-some-data-properties-for-event-years","title":"7.1 Adding Some Data Properties for Event Years","text":"

        Everyone has a birth year; death year; and some have a marriage year and so on. We can model these simply with data properties and an integer as a filler. OWL 2 has a DateTime datatype, where it is possible to specify a precise time and date down to a second. 7 This proves cumbersome (see http://robertdavidstevens.wordpress.com/2011/05/05/using-the-datetime-data-type-to-describe-birthdays/ for details); all we need is a simple indication of the year in which a person was born. Of course, the integer type has a zero, which the Gregorian calendar for which we use integer as a proxy does not, but integer is sufficient to our needs. Also, there are various ontological treatments of time and information about people (this extends to names etc. as well), but we gloss over that here\u2014that\u2019s another tutorial.

        7 http://www.w3.org/TR/2008/WD-owl2-quick-reference-20081202/#Built-in_Datatypes_and_Facets

        We can have dates for birth, death and (eventually) marriage (see Chapter 9) and we can just think of these as event years. We can make a little hierarchy of event years as shown in Figure 7.1).

        Task 27: Create a data property hierarchy
        1. Create the data property hasEventYear with range integer and domain Person;
        2. Create the data property hasBirthYear and make it a sub-property of hasEventYear (that way, the domain and range of hasEventYear are inherited);
        3. Create the data property hasDeathYear and make it a sub-property of hasEventYear;
        4. For each individual add the birth years shown in Table A.1 (see appendix). You do not actually have to go back to the table\u2014it is easier to read the birth years simply off the individual names.

        Again, asserting birth years for all individuals can be a bit tedious. The reader\ncan find a convenience snapshot of the ontology at this stage at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n

        We now have an ABox with individuals with fact assertions to data indicating a birth year. We can, if we wish, also add a class restriction to the Person class saying that each and every instance of the class Person holds a data property to an integer and that this property is called \u2018hasBirthYear\u2019. As usual when deciding whether to place such a restriction upon a class, ask whether it is true that each and every instance of the class holds that property; this is exactly the same as we did for the object properties in Chapter 4. Everyone does have a birth year, even if it is not known.

        Once birth years have been added to our individuals, we can start asking some questions.

        Task 28: DL queries 1. Use a DL query to ask:
        • Person born after 1960;
        • Person born in the 1960s;
        • Person born in the 1800s;
        • Person that has fewer than three children;
        • Person that has more than three children.
          • The DL query for people born in the 1960s is:

            Person and hasBirthYear some int[>= 1960, < 1970]\n

            This kind of interval is known as a facet.

            "},{"location":"tutorial/fhkb/#711-counting-numbers-of-children","title":"7.1.1 Counting Numbers of Children","text":"

            The last two queries in the list do not work as expected. We have asked, for instance, for Person that have more than three children, but we get no members of Person in the answer, though we know that there are some in the FHKB (e.g., John_Bright_1930). This is because there is not enough information in the FHKB to tell that this person has more than three different people as children. As humans we can look at the four children of John Bright and know that they are different \u2013 for instance, they all have different birth years. The automated reasoner, however, does not know that a Person can only have one birth year.

            Task 29: Make a functional object property
            1. Make the property hasBirthYear functional.
            2. Ask the query for Person that has more than three children again.

            This time the query should work. All the other event year properties should be made functional, expect hasEventYear, as one individual can have many event years. As the children have different birth year and an individual can only hold one hasBirthYear property, then these people must be distinct entities.

            Of course, making birth year functional is not a reliable way of ensuring that the automated reasoner knows that the individual are different. It is possible for two Person to have the same birth year within the same family \u2013 twins and so on. Peter_William_Bright_1941 has three children, two of which are twins, so will not be a member of the class of people with at least three children. So, we use the different individuals axiom. Most tools, including Prot\u00e9g\u00e9, have a feature that allows all individuals to be made different.

            Task 30: Make all individuals different
            1. Make all individuals different;
            2. Ask the above queries again.

            From now on, every time you add individuals, make sure the different individuals axiom is updated.

            "},{"location":"tutorial/fhkb/#72-the-open-world-assumption","title":"7.2 The Open World Assumption","text":"

            We have met again the open world assumption and its importance in the FHKB. In the use of the functional characteristic on the hasBirthYear property, we saw one way of constraining the interpretation of numbers of children. We also introduced the \u2018different individuals\u2019 axiom as a way of making all individuals in a knowledge base distinct. There are more questions, however, for which we need more ways of closing down the openness of OWL 2.

            Take the questions:

            • People that have exactly two children;
            • People that have only brothers;
            • People that have only female children.

            We can only answer these questions if we locally close the world.We have said that David and Margaret have two children, Richard and Robert, but we have not said that there are not any others. As usual, try not to apply your domain knowledge too much; ask yourself what the automated reasoner actually knows. As we have the open world assumption, the reasoner will assume, unless otherwise said, that there could be more children; it simply doesn\u2019t know.

            Think of a railway journey enquiry system. If I ask a standard closed world system about the possible routes by rail, between Manchester and Buenos Aires, the answer will be \u2019none\u2019, as there are none described in the system. With the open world assumption, if there is no information in the system then the answer to the same question will simply be \u2018I don\u2019t know\u2019. We have to explicitly say that there is no railway route from Manchester to Buenos Aires for the right answer to come back.

            We have to do the same thing in OWL. We have to say that David and Margaret have only two children. We do this with a type assertion on individuals. So far we have only used fact assertions. A type assertion to close down David Bright\u2019 parentage looks like this:

            isParentOf only {Robert_David_Bright_1965,Richard_John_Bright_1962 }\n

            This has the same meaning as the closure axioms that you should be familiar with on classes. We are saying that the only fillers that can appear on the right-hand-side of the isParentOf property on this individual are the two individuals for Richard and Robert. We use the braces to represent the set of these two individuals.

            Task 31: Make a closure axiom
            1. Add the closure assertion above to David Bright;
            2. Issue the DL query isParentOf exactly 2 Person.

            The last query should return the answer of David Bright. Closing down the whole FHKB ABox is a chore and would really have to be done programmatically. OWL scripting languages such as the Ontology Preprocessing Language8 (OPPL) [2] can help here. Also going directly to the OWL API [1]9, if you know what you are doing, is another route.

            Adding all these closure type assertions can slow down the reasoner; so think about\nthe needs of your system \u2013 just adding it \u2018because it is right\u2019 is not necessarily the\nright route.\n

            8 http://oppl2.sourceforge.net

            9 http://owlapi.sourceforge.net/

            "},{"location":"tutorial/fhkb/#73-adding-given-and-family-names","title":"7.3 Adding Given and Family Names","text":"

            We also want to add some other useful data facts to people \u2013 their names. We have been putting names as part of labels on individuals, but data fact assertions make sense to separate out family and given names so that we can ask questions such as \u2018give me all people with the family name Bright and the first given name of either James or William\u2019. A person\u2019s name is a fact about that person and is more, in this case, than just a label of the representation of that person. So, we want family names and given names. A person may have more than one given name \u2013 \u2018Robert David\u2019, for instance \u2013 and an arbitrary number of given names can be held. For the FHKB, we have simply created two data properties of hasFirstGivenName and hasSecondGivenName). Ideally, it would be good to have some index on the property to given name position, but OWL has no n-ary relationships. Otherwise, we could reify the hasGivenName property into a class of objects, such as the following:

            Class: GivenName\nSubClassOf:hasValue some String,\nhasPosition some Integer\n

            but it is really rather too much trouble for the resulting query potential.

            As already shown, we will use data properties relating instances of Person to strings. We want to distinguish family and given names, and then different positions of given names through simple conflating of position into the property name. Figure 7.1 shows the intended data property hierarchy.

            Figure 7.1: The event year and name data property hierarchies in the FHKB.

            Do the following:

            Task 32: Data properties
            1. Create the data properties as described in Figure 7.1;
            2. Give the hasName property the domain of Person and the range of String;
            3. Make the leaf properties of given names functional;
            4. Add the names shown in Table A.1 (appendix); Again, it may be easier to read the names of the individual names.
            5. Ask the questions:
              • all the people with the first given name \u2018James\u2019;
              • all the people with the first given name \u2018William\u2019;
            6. All the people with the given name \u2018William\u2019;
            7. All the people with the given name \u2018William\u2019 and the family name \u2018Bright\u2019.

            The name data property hierarchy and the queries using those properties displays what now should be familiar. Sub-properties that imply the super-property. So, when we ask hasFirstGivenName value \"William\" and then the query hasGivenName value value \"William\" we can expect different answers. There are people with \u2018William\u2019 as either first or second given name and asking the question with the super-property for given names will collect both first and second given names.

            "},{"location":"tutorial/fhkb/#74-summary","title":"7.4 Summary","text":"

            We have used data properties that link objects to data such as string, integer, floats and Booleans etc. OWL uses the XML data types. We have seen a simple use of data properties to simulate birth years. The full FHKB also uses them to place names (given and family) on individuals as strings. This means one can ask for the Person with the given name \"James\", of which there are many in the FHKB.

            Most importantly we have re-visited the open world assumption and its implications for querying an OWL ABox. We have looked at ways in which the ABox can be closed down \u2013 unreliably via the functional characteristic (in this particular case) and more generally via type assertions.

            All the DL queries used in this chapter can also serve as defined classes in the TBox. It is a useful exercise to progressively add more defined classes to the FHKB TBox. Make more complex queries, make them into defined classes and inspect where they appear in the class hierarchy.

            The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).\n

            The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 1891.157 sec (1.00000 % of final), by\nPellet 2.2.0 1.134 sec (0.00917 % of final) and by FaCT++ 1.6.4 is approximately\n0.201 sec (0.006 % of final). 0 sec indicates failure or timeout.\n

            Note that we now cover the whole range of expressivity of OWL 2. HermiT at\nleast is impossibly slow by now. This may be because HermiT does more work\nthan the others. For now, we recommend to use either Pellet or FaCT++.\n
            "},{"location":"tutorial/fhkb/#chapter-8","title":"Chapter 8","text":""},{"location":"tutorial/fhkb/#cousins-in-the-fhkb","title":"Cousins in the FHKB","text":"

            In this Chapter you will

            1. Revise or get to know about degrees and removes of cousin;
            2. Add the properties and sub-property chains for first and second cousins;
            3. Add properties and sub-property chains for some removes of cousins;
            4. Find out that the siblings debacle haunts us still;
            5. Add a defined class that does first cousins properly.

            There is a snapshot of the ontology as required at this point in the tutorial available\nat http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n

            Be warned; from here on the reasoner can start running slowly! Please see warning\nat the beginning of the last chapter for more information.\n
            "},{"location":"tutorial/fhkb/#81-introducing-cousins","title":"8.1 Introducing Cousins","text":"

            Cousins can be confusing, but here is a brief summary:

            • First cousins share a grandparent, but are not siblings;
            • Second cousins share a great grandparent, but are not first cousins or siblings;
            • Degrees such as first and second cousin give the distance to the nearest common ancestor;
            • Removes give differences in generation. So, my Dad\u2019s first cousins (his generation) are my (Robert David Bright\u2019s) first cousins once removed.

            Simply, my first cousins are my parent\u2019s sibling\u2019s children. As usual, we can think about the objects and put in place some sub-property chains.

            "},{"location":"tutorial/fhkb/#82-first-cousins","title":"8.2 First Cousins","text":"

            Figure 8.1: Tracing out the sub-property chain for cousins going from a child to a parent, to its sibling, and down to its child, a cousin

            Figure 8.1 shows the sub-property chain for first cousins. As usual, think at the object level; to get to the first cousins of Robert David Bright, we go to the parents of Robert David Bright, to their siblings and then to their children. We go up, along and down. The OWL for this could be:

            ObjectProperty: hasFirstCousin\nSubPropertyOf: hasCousin\nSubPropertyChain: hasParent o hasSibling o hasChild\nCharacteristics: Symmetric\n

            Note that we follow the definitions in Section 8.1 of first cousins sharing a grandparent, but not a parent. The sub-property chain goes up to children of a grandparent (a given person\u2019s parents), along to siblings and down to their children. We do not want this property to be transitive. One\u2019s cousins are not necessarily my cousins. The blood uncles of Robert David Bright have children that are his cousins. These first cousins, however, also have a mother that is not a blood relation of Robert David Bright and the mother\u2019s sibling\u2019s children are not cousins of Robert David Bright.

            We do, however, want the property to be symmetric. One\u2019s cousins have one\u2019s-self as a cousin.

            We need to place the cousin properties in the growing object property hierarchy. Cousins are obviously blood relations, but not ancestors, so they go off to one side, underneath hasBloodrelation. We should group the different removes and degree of cousin underneath one hasCousin property and this we will do.

            Do the following:

            Task 33: First cousins
            1. Add the property of hasCousin to the hierarchy underneath hasBloodrelation;
            2. Add hasFirstCousin underneath this property;
            3. Add the sub-property chain as described above;
            4. Run the reasoner and look at the first cousins of Robert David Bright.
              1. You should see the following people as first cousins of Robert David Bright: Mark Anthony Heath, Nicholas Charles Heath, Mark Bright, Ian Bright, Janet Bright, William Bright, James Bright, Julie Bright, Clare Bright, Richard John Bright and Robert David Bright. The last two, as should be expected, are first cousins of Robert David Bright and this is not correct. As David Bright will be his own brother, his children are his own nieces and nephews and thus the cousins of his own children. Our inability to infer siblings correctly in the FHKB haunts us still and will continue to do so.

                Although the last query for the cousins of Robert David Bright should return the\nsame results for every reasoner, we have had experiences where the results differ.\n
                "},{"location":"tutorial/fhkb/#83-other-degrees-and-removes-of-cousin","title":"8.3 Other Degrees and Removes of Cousin","text":"

                Other degrees of cousins follow the same pattern as for first cousins; we go up, along and down. For second cousins we go up from a given individual to children of a great grandparent, along to their siblings and down to their grandchildren. The following object property declaration is for second cousins (note it uses the isGrandparentOf and its inverse properties, though the parent properties could be used) :

                ObjectProperty: hasSecondCousin\nSubPropertyOf: hasCousin\nSubPropertyChain: hasGrandParent o hasSibling o isGrandParentOf\nCharacteristics: Symmetric\n

                \u2018 Removes \u2019 simply add in another \u2018leg\u2019 of either \u2018up\u2019 or \u2018down\u2019 either side of the \u2018along\u2019\u2014that is, think of the actual individuals involved and draw a little picture of blobs and lines\u2014then trace your finger up, along and down to work out the sub-property chain. The following object property declaration does it for first cousins once removed (note that this has been done by putting this extra \u2018leg\u2019 on to the hasFirstCousin property; the symmetry of the property makes it work either way around so that a given person is the first cousin once removed of his/her first cousins once removed):

                ObjectProperty: hasFirstCousinOnceRemoved\nSubPropertyOf: hasCousin\nSubPropertyChain: hasFirstCousin o hasChild\nCharacteristics: Symmetric\n

                To exercise the cousin properties do the following:

                Task 34: Cousin properties
                1. Add properties for second degree cousins;
                2. Add removes for first and second degree cousins;
                3. Run the reasoner and check what we know about Robert David Bright\u2019 other types of cousin.

                You should see that we see some peculiar inferences about Robert David Bright\u2019 cousins \u2013 not only are his brother and himself his own cousins, but so are his father, mother, uncles and so on. This makes sense if we look at the general sibling problem, but also it helps to just trace the paths around. If we go up from one of Robert David Bright\u2019 true first cousins to a grandparent and down one parent relationship, we follow the first cousin once removed path and get to one of Robert David Bright\u2019 parents or uncles. This is not to be expected and we need a tighter definition that goes beyond sub-property chains so that we can exclude some implications from the FHKB.

                "},{"location":"tutorial/fhkb/#84-doing-first-cousins-properly","title":"8.4 Doing First Cousins Properly","text":"

                As far as inferring first cousin facts for Robert David Bright, we have failed. More precisely, we have recalled all Robert David Bright\u2019s cousins, but the precision is not what we would desire. What we can do is ask for Robert David Bright\u2019 cousins, but then remove the children of Robert David Bright\u2019 parents. The following DL query achieves this:

                Person that hasFirstCousin valueRobert_David_Bright_1965\nand (not (hasFather valueDavid_Bright_1934) or not (hasMother valueMar-\ngaret_Grace_Rever_1934)\n

                This works, but only for a named individual. We could make a defined class for this query; we could also make a defined class FirstCousin, but it is not of much utility. We would have to make sure that people whose parents are not known to have siblings with children are excluded. That is, people are not \u2018first cousins\u2019 whose only first cousins are themselves and their siblings. The following class does this:

                Class: FirstCousin\nEquivalentTo: Person that hasFirstCousin some Person\n
                Task 35: Roberts first cousins
                1. Make a defined class FirstCousin as shown above;
                2. Make a defined class FirstCousinOfRobert;
                3. Create a DL query that looks at Robert_David_Bright_1965 first cousins and takes away the children of Robert_David_Bright_1965\u2019 parents as shown above.

                This gives some practice with negation. One is making a class and then \u2018taking\u2019 some of it away \u2013 \u2018these, but not those\u2019.

                "},{"location":"tutorial/fhkb/#85-summary","title":"8.5 Summary","text":"

                We have now expanded the FHKB to include most blood relationships. We have also found that cousins are hard to capture just using object properties and sub-property chains. Our broken sibling inferences mean that we have too many cousins inferred at the instance level. We can get cousins right at the class level by using our inference based cousins, then excluding some using negation. Perhaps not neat, but it works.

                We have reinforced that we can just add more and more relationships to individuals by just adding more properties to our FHKB object property hierarchy and adding more sub-property chains that use the object properties we have built up upon parentage and sibling properties; this is as it should be.

                The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).\n

                The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 0.000 sec (0.00000 % of final), by Pellet\n2.2.0 111.395 sec (0.90085 % of final) and by FaCT++ 1.6.4 is approximately 0.868\nsec (0.024 % of final). 0 sec indicates failure or timeout.\n
                "},{"location":"tutorial/fhkb/#chapter-9","title":"Chapter 9","text":""},{"location":"tutorial/fhkb/#marriage-in-the-fhkb","title":"Marriage in the FHKB","text":"

                In this chapter you will:

                1. Model marriages and relationships;
                2. Establish object properties for husbands, wives and various in-laws;
                3. Re-visit aunts and uncles to do them properly;
                4. Use more than one sub-property chain on a given property.

                There is a snapshot of the ontology as required at this point in the tutorial available\nat http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n

                Much of what is in this chapter is really revision; it is more of the same - making\nlots of properties and using lots of sub-property chains. However, it is worth it as\nit will test your growing skills and it also makes the reasoners and yourself work\nhard. There are also some good questions to ask of the FHKB as a result of adding\nmarriages.\n
                "},{"location":"tutorial/fhkb/#91-marriage","title":"9.1 Marriage","text":"

                Marriage is a culturally complex situation to model. The FHKB started with a conservative model of a marriage involving only one man and one woman.10 Later versions are more permissive; a marriage simply has a minimum of two partners. This leaves it open to numbers and sex of the people involved. In fact, \u2018marriage\u2019 is probably not the right name for it. Using BreedingRelationship as a label (the one favoured by the main author\u2019s mother) may be a little too stark and might be a little exclusive.... In any case, some more generic name is probably better and various subclasses of the FHKB\u2019s Marriage class are probably necessary.

                10 There being no funny stuff in the Stevens family.

                To model marriage do the following:

                Task 36: Marriage
                1. Create a class Marriage, subclass of DomainEntity;
                2. Create the properties:
                  • hasPartner(domain Marriage and range Person) and isPartnerIn
                  • hasFemalePartner(domain Marriage and range Woman, sub-property of hasPartner) and its inverse isFemalePartnerIn;
                  • a sub-property of hasPartner has MalePartner (domain Marriage and range Man)and its inverse isMalePartnerIn;
                3. Create the data property hasMarriageYear, making us a sub-property of hasEventYear,make it functional;
                4. Create an individual m001 with the label Marriage of David and Margaret and add the facts:
                  • hasMalePartner David_Bright_1934;
                  • hasFemalePartner Margaret_Grace_Rever_1934
                  • hasMarriageYear 1958;
                5. Create an individual m002 with the label Marriage of John and Joyce and add the facts:
                  • hasMalePartner John_Bright_1930;
                  • hasFemalePartner Joyce_Gosport(you may have to add Joyce if you did not already did that);
                  • hasMarriageYear 1955;
                6. Create an individual m003 with the label Marriage of Peter and Diana and add the facts:
                  • hasMalePartner Peter_William_Bright_1941;
                  • hasFemalePartner Diana_Pool(you may have to add Diana if you did not already did that);
                  • hasMarriageYear 1964;
                7. We have the basic infrastructure for marriages. We can ask the usual kinds of questions; try the following:

                  Task 37: DL queries
                  1. Ask the following DL queries:
                    • The Women partners in marriages;
                    • Marriages that happened before 1960 (see example below);
                    • Marriages that happened after 1960;
                    • Marriages that involved a man with the family name \u2018Bright\u2019.
                    • DL query: Marriage and hasMarriageYear some int[<= 1960]\n
                      "},{"location":"tutorial/fhkb/#911-spouses","title":"9.1.1 Spouses","text":"

                      This marriage infrastructure can be used to infer some slightly more interesting things for actual people. While we want marriage objects so that we can talk about marriage years and even locations, should we want to, we also want to be able to have the straight-forward spouse relationships one would expect. We can use sub-property chains in the usual manner; do the following:

                      Task 38: Wifes and Husbands
                      1. Create a property hasSpouse with two sub-properties hasHusband and hasWife.
                      2. Create the inverses isSpouseOf, isWifeOf and isHusbandOf.
                      3. To the hasWife property, add the sub-property chain isMalePartnerIn o hasFemalePartner.
                      4. Follow the same pattern for the hasHusband property.

                        Figure 9.1 shows what is happening with the sub-property chains. Note that the domains and ranges of the spouse properties come from the elements of the sub-property chains. Note also that the hasSpouse relationship will be implied from its sub-property chains.

                        The following questions can now be asked:

                        • Is wife of David Bright;
                        • Has a husband born before 1940;
                        • The wife of an uncle of William Bright 1970.

                        Figure 9.1: The sub-property chain path used to infer the spouse relationships via the marriage partnerships.

                        and many more. This is really a chance to explore your querying abilities and make some complex nested queries that involve going up and down the hierarchy and tracing routes through the graph of relationships between the individuals you\u2019ve inferred.

                        "},{"location":"tutorial/fhkb/#92-in-laws","title":"9.2 In-Laws","text":"

                        Now we have spouses, we can also have in-laws. The path is simple: isSpouseOf o hasMother implies hasMotherInLaw. The path involved in mother-in-laws can be seen in Figure 9.2. The following OWL code establishes the sub-property chains for hasMotherInLaw:

                        ObjectProperty: hasMotherInLaw\nSubPropertyOf: hasParentInLaw\nSubPropertyChain: isSpouseOf o hasMother\nDomain: Person\nRange: Woman\nInverseOf: isMotherInLawOf\n

                        Figure 9.2: Tracing out the path between objects to make the sub-property chain for mother-in-laws

                        Do the following to make the parent in-law properties:

                        Task 39: Parents in-law
                        1. Create hasParentInLaw with two sub-properties of hasMotherInLaw and hasFatherInLaw;
                        2. Create the inverses, but remember to let the reasoner infer the hierarchy on that side of the hierarchy;
                        3. Add the sub-property chains as described in the pattern for hasMotherInLaw above;
                        4. Run the reasoner and check that the mother-in-law of Margaret Grace Rever is Iris Ellen Archer.
                        "},{"location":"tutorial/fhkb/#93-brothers-and-sisters-in-law","title":"9.3 Brothers and Sisters In-Law","text":"

                        Brothers and sisters in law have the interesting addition of having more than one path between objects to establish a sister or brother in law relationship. The OWL code below establishes the relationships for \u2018is sister in law of\u2019:

                        ObjectProperty: hasSisterInLaw\nSubPropertyOf: hasSiblingInLaw\nSubPropertyChain: hasSpouse o hasSister\nSubPropertyChain: hasSibling o isWifeOf\n

                        A wife\u2019s husband\u2019s sister is a sister in law of the wife. Figure 9.3 shows the two routes to being a sister-in-law. In addition, the wife is a sister in law of the husband\u2019s siblings. One can add as many sub-property chains to a property as one needs. You should add the properties for hasSiblingInLawOf and its obvious sub-properties following the inverse of the pattern above.

                        Task 40: Siblings in-law
                        1. Create the relationships for siblings-in-law as indicated in the owl code above.

                        By now, chances are high that the realisation takes a long time. We recommend to\nremove the very computationally expensive restriction `hasParent` exactly 2 Person\non the `Person` class, if you have not done it so far.\n

                        Figure 9.3: The two routes to being a sister-in-law.

                        "},{"location":"tutorial/fhkb/#94-aunts-and-uncles-in-law","title":"9.4 Aunts and Uncles in-Law","text":"

                        The uncle of Robert David Bright has a wife, but she is not the aunt of Robert David Bright, she is the aunt-in-law. This is another kith relationship, not a kin relationship. The pattern has a familiar feel:

                        ObjectProperty: isAuntInLawOf\nSubPropertyOf: isInLawOf\nSubPropertyChain: isWifeOf o isBrotherOf o isParentOf\n
                        Task 41: Uncles and aunts in-law
                        1. Create hasAuntInLaw and hasUncleInLaw in the usual way;
                        2. Test in the usual way;
                        3. Tidy up the top of the property hierarchy so that it looks like Figure 9.4. We have a top property of hasRelation and two sub-properties of isBloodRelationOf and isInLawOf to establish the kith and kin relationships respectively;
                        4. All the properties created in this chapter (except for spouses) should be underneath isInLawOf.

                        Figure 9.4: The object property hierarchy after adding the various in-law properties.

                        "},{"location":"tutorial/fhkb/#95-summary","title":"9.5 Summary","text":"

                        This has really been a revision chapter; nothing new has really been introduced. We have added a lot of new object properties and one new data property. The latest object property hierarchy with the \u2018in-law\u2019 branch can be seen in Figure 9.4. Highlights have been:

                        • Having an explicit marriage object so that we can say things about the marriage itself, not just the people in the marriage;
                        • We have seen that more than one property chain can be added to a property;
                        • We have added a lot of kith relationships to join the kin or blood relationships;
                        • As usual, the reasoner can establish the hierarchy for the inverses and put a lot of the domain and ranges in for free.

                        The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).\n

                        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 0.000 sec (0.00000 % of final), by Pellet\n2.2.0 123.655 sec (1.00000 % of final) and by FaCT++ 1.6.4 is approximately 1.618\nsec (0.046 % of final). 0 sec indicates failure or timeout.\n
                        "},{"location":"tutorial/fhkb/#chapter-10","title":"Chapter 10","text":""},{"location":"tutorial/fhkb/#extending-the-tbox","title":"Extending the TBox","text":"

                        In this chapter you will:

                        1. Just add lots of defined classes for all the aspects we have covered in this FHKB tutorial;
                        2. You will learn that the properties used in these defined classes must be chosen with care.

                        There is a snapshot of the ontology as required at this point in the tutorial available\nat http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial\n
                        "},{"location":"tutorial/fhkb/#101-adding-defined-classes","title":"10.1 Adding Defined Classes","text":"

                        Add the following defined classes:

                        Task 42: Adding defined classes
                        1. Relation and blood relation;
                        2. Forefather and Foremother;
                        3. Grandparent, Grandfather and Grandmother;
                        4. GreatGrandparent, GreatGrandfather and GreatGrandmother;
                        5. GreatGrandparentOfRobert, GreatGrandfatherOfRobert and GreatGrandMotherOfRobert
                        6. Daughter, Son, Brother, Sister, Child;
                        7. Aunt, Uncle, AuntInLaw, UncleInLaw, GreatAunt and GreatUncle;
                        8. FirstCousin and SecondCousin;
                        9. First cousin once removed;
                        10. InLaw, MotherInLaw, FatherInLaw, ParentInLaw, SiblingInLaw, SisterInLaw, BrotherInLaw;
                        11. Any defined class for any property in the hierarchy and any nominal variant of these classes.

                        The three classes of Child, Son and Daughter are of note. They are coded in the following way:

                        Class: Child EquivalentTo: Person that hasParent Some Person\nClass: Son EquivalentTo: Man that hasParent Some Person\nClass: Daughter EquivalentTo: Woman that hasParent Some Person\n

                        After running the reasoner, you will find that Person is found to be equivalent to Child; Daughter is equivalent to Woman and that Son is equivalent to Man. This does, of course, make sense \u2013 each and every person is someone\u2019s child, each and every woman is someone\u2019s daughter. We will forget evolutionary time-scales where this might be thought to break down at some point \u2013 all Person individuals are also Descendant individuals, but do we expect some molecule in some prebiotic soup to be a member of this class?

                        Nevertheless, within the scope of the FHKB, such inferred equivalences are not unreasonable. They are also instructive; it is possible to have different intentional descriptions of a class and for them to have the same logical extents. You can see another example of this happening in the amino acids ontology, but for different reasons.

                        Taking Grandparent as an example class, there are two ways of writing the defined class:

                        Class: Grandparent EquivalentTo: Person and isGrandparentOf some Person\nClass: Grandparent EquivalentTo: Person and (isParentOf some (Person and (is-\nParentOf some Person))\n

                        Each comes out at a different place in the class hierarchy. They both capture the right individuals as members (that is, those individuals in the ABox that are holding a isGrandparentOf property), but the class hierarchy is not correct. By definition, all grandparents are also parents, but the way the object property hierarchy works means that the first way of writing the defined class (with the isGrandparentOf property) is not subsumed by the class Parent. We want this to happen in any sensible class hierarchy, so we have to use the second pattern for all the classes, spelling out the sub-property path that implies the property such as isGrandparentOf within the equivalence axiom.

                        The reason for this need for the \u2018long-form\u2019 is that the isGrandparentOf does not imply the isParentOf property. As described in Chapter 3 if this implication were the case, being a grandparent of Robert David Bright, for instance, would also imply that the same Person were a parent of Robert David Bright; an implication we do not want. As these two properties (isParentOf and isGrandparentOf) do not subsume each other means that the defined classes written according to pattern one above will not subsume each other in the class hierarchy. Thus we use the second pattern. If we look at the class for grandparents of Robert:

                        Class: GrandparentOfRobert\nEquivalentTo: Person that isParentOf some (Person that isParentOf value Robert\nDavid Bright)\n

                        If we make the equivalent class for Richard John Bright, apply the reasoner and look at the hierarchy, we see that the two classes are not logically equivalent, even though they have the same extents of William George Bright, Iris Ellen Archer, Charles Herbert Rever and Violet Sylvia Steward. We looked at this example in Section 6.2, where there is an explanation and solutions.

                        "},{"location":"tutorial/fhkb/#102-summary","title":"10.2 Summary","text":"

                        We can add defined classes based on each property we have put into the object property hierarchy. We see the expected hierarchy; as can be seen from Figure 10.1 it has an obvious symmetry based on sex. We also see a lot of equivalences inferred \u2013 all women are daughters, as well as women descendants. Perhaps not the greatest insight ever gained, but it at least makes sense; all women must be daughters. It is instructive to use the explanation feature in Prot\u00e9g\u00e9 to look at why the reasoner has made these inferences. For example, take a look at the class hasGrandmother some Woman \u2013 it is instructive to see how many there are.

                        Like the Chapter on marriage and in-law (Chapter 9), this chapter has largely been revision. One thing of note is, however, that we must not use the object properties that are inferred through sub-property chains as definitions in the TBox; we must spell out the sub-property chain in the definition, otherwise the implications do not work properly.

                        One thing is almost certain; the resulting TBox is rather complex and would be almost impossible to maintain by hand.

                        Figure 10.1: The full TBox hierarchy of the FHKB

                        The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).\n

                        The time to reason with the FHKB at this point (in Prot\u00e9g\u00e9) on a typical desktop\nmachine by HermiT 1.3.8 is approximately 0.000 sec (0.00000 % of final), by Pellet\n2.2.0 0.000 sec (0.00000 % of final) and by FaCT++ 1.6.4 is approximately 35.438\nsec (1.000 % of final). 0 sec indicates failure or timeout.\n
                        "},{"location":"tutorial/fhkb/#chapter-11","title":"Chapter 11","text":""},{"location":"tutorial/fhkb/#final-remarks","title":"Final remarks","text":"

                        If you have done all the tasks within this tutorial, then you will have touched most parts of OWL 2. Unusually for most uses of OWL we have concentrated on individuals, rather than just on the TBox. One note of warning \u2013 the full FHKB has some 450 members of the Bright family and takes a reasonably long time to classify, even on a sensible machine. The FHKB is not scalable in its current form.

                        One reason for this is that we have deliberately maximised inference. We have attempted not to explicitly type the individuals, but drive that through domain and range constraints. We are making the property hierarchy do lots of work. For the individual Robert David Bright, we only have a couple of assertions, but we infer some 1 500 facts between Robert David Bright and other named individuals in the FHKB\u2013displaying this in Prot\u00e9g\u00e9 causes problems. We have various complex classes in the TBox and so on.

                        We probably do not wish to drive a genealogical application using an FHKB in this form. Its purpose is educational. It touches most of OWL 2 and shows a lot of what it can do, but also a considerable amount of what it cannot do. As inference is maximised, the FHKB breaks most of the OWL 2 reasoners at the time of writing.However, it serves its role to teach about OWL 2.

                        OWL 2 on its own and using it in this style, really does not work for family history. We have seen that siblings and cousins cause problems. rules in various forms can do this kind of thing easily\u2014it is one of the primary examples for learning about Prolog. Nevertheless, the FHKB does show how much inference between named individuals can be driven from a few fact assertions and a property hierarchy. Assuming a powerful enough reasoner and the ability to deal with many individuals, it would be possible to make a family history application using the FHKB; as long as one hid the long and sometimes complex queries and manipulations that would be necessary to \u2018prune\u2019 some of the \u2018extra\u2019 facts found about individuals. However, the FHKB does usefully show the power of OWL 2, touch a great deal of the language and demonstrate some of its limitations.

                        "},{"location":"tutorial/fhkb/#appendix-a","title":"Appendix A","text":""},{"location":"tutorial/fhkb/#fhkb-family-data","title":"FHKB Family Data","text":"

                        Table A.1: The list of individuals in the FHKB

                        Person First given name Second given name Family name Birth year Mother Father Alec John Archer 1927 Alec John Archer 1927 Violet Heath 1887 James Alexander Archer 1882 Charles Herbert Rever 1895 Charles Herbert Rever 1895 Elizabeth Frances Jessop 1869 William Rever 1870 Charlotte Caroline Jane Bright 1894 Charlotte Caroline Jane Bright 1894 Charlotte Hewett 1863 Henry Edmund Bright 1862 Charlotte Hewett 1863 Charlotte none Hewett 1863 not specified not specified Clare Bright 1966 Clare none Bright 1966 Diana Pool Peter William Bright 1941 Diana Pool Diana none Pool none not specified not specified David Bright 1934 David none Bright 1934 Iris Ellen Archer 1906 William George Bright 1901 Dereck Heath Dereck none Heath 1927 not specified not specified Eileen Mary Rever 1929 Eileen Mary Rever 1929 Violet Sylvia Steward 1894 Charles Herbert Rever 1895 Elizabeth Frances Jessop 1869 Elizabeth Frances Jessop 1869 not specified not specified Ethel Archer 1912 Ethel none Archer 1912 Violet Heath 1887 James Alexander Archer 1882 Frederick Herbert Bright 1889 Frederick Herbert Bright 1889 Charlotte Hewett 1863 Henry Edmund Bright 1862 Henry Edmund Bright 1862 Henry Edmund Bright 1862 not specified not specified Henry Edmund Bright 1887 Henry Edmund Bright 1887 Charlotte Hewett 1863 Henry Edmund Bright 1862 Ian Bright 1959 Ian none Bright 1959 Joyce Gosport John Bright 1930 Iris Ellen Archer 1906 Iris Ellen Archer 1906 Violet Heath 1887 James Alexander Archer 1882 James Alexander Archer 1882 James Alexander Archer 1882 not specified not specified James Bright 1964 James none Bright 1964 Diana Pool Peter William Bright 1941 James Frank Hayden Bright 1891 James Frank Bright 1891 Charlotte Hewett 1863 Henry Edmund Bright 1862 Janet Bright 1964 Janet none Bright 1964 Joyce Gosport John Bright 1930 John Bright 1930 John none Bright 1930 Iris Ellen Archer 1906 William George Bright 1901 John Tacey Steward 1873 John Tacey Steward 1873 not specified not specified Joyce Archer 1921 Joyce none Archer 1921 Violet Heath 1887 James Alexander Archer 1882 Joyce Gosport Joyce none Gosport not specified not specified not specified Julie Bright 1966 Julie none Bright 1966 Diana Pool Peter William Bright 1941 Kathleen Minnie Bright 1904 Kathleen Minnie Bright 1904 Charlotte Hewett 1863 Henry Edmund Bright 1862 Leonard John Bright 1890 Leonard John Bright 1890 Charlotte Hewett 1863 Henry Edmund Bright 1862 Lois Green 1871 Lois none Green 1871 not specified not specified Margaret Grace Rever 1934 Margaret Grace Rever 1934 Violet Sylvia Steward 1894 Charles Herbert Rever 1895 Mark Anthony Heath 1960 Mark Anthony Heath 1960 Eileen Mary Rever 1929 Dereck Heath Mark Bright 1956 Mark none Bright 1956 Joyce Gosport John Bright 1930 Nicholas Charles Heath 1964 Nicholas Charles Heath 1964 Eileen Mary Rever 1929 Dereck Heath Nora Ada Bright 1899 Nora Ada Bright 1899 Charlotte Hewett 1863 Henry Edmund Bright 1862 Norman James Archer 1909 Norman James Archer 1909 Violet Heath 1887 James Alexander Archer 1882 Peter William Bright 1941 Peter William Bright 1941 Iris Ellen Archer 1906 William George Bright 1901 Richard John Bright 1962 Richard John Bright 1962 Margaret Grace Rever 1934 David Bright 1934 Robert David Bright 1965 Robert David Bright 1965 Margaret Grace Rever 1934 David Bright 1934 Violet Heath 1887 Violet none Heath 1887 not specified not specified Violet Sylvia Steward 1894 Violet Sylvia Steward 1894 Lois Green 1871 John Tacey Steward 1873 William Bright 1970 William none Bright 1970 Joyce Gosport John Bright 1930 William George Bright 1901 William George Bright 1901 Charlotte Hewett 1863 Henry Edmund Bright 1862 William Rever 1870 William none Rever 1870 not specified not specified"},{"location":"tutorial/fhkb/#bibliography","title":"Bibliography","text":"

                        [1] M. Horridge and S. Bechhofer. The owl api: a java api for working with owl 2 ontologies. Proc. of OWL Experiences and Directions , 2009, 2009.

                        [2] Luigi Iannone, Alan Rector, and Robert Stevens. Embedding knowledge patterns into owl. In European Semantic Web Conference (ESWC09) , pages 218\u2013232, 2009.

                        [3] Dmitry Tsarkov, Uli Sattler, Margaret Stevens, and Robert Stevens. A Solution for the Man-Man Problem in the Family History Knowledge Base. In Sixth International Workshop on OWL: Experiences and Directions 2009 , 2009.

                        "},{"location":"tutorial/github-fundamentals/","title":"GitHub Fundamentals for OBO Engineers","text":""},{"location":"tutorial/github-fundamentals/#introduction-to-github","title":"Introduction to GitHub","text":""},{"location":"tutorial/github-fundamentals/#back-to-getting-started","title":"Back to Getting Started","text":""},{"location":"tutorial/github-fundamentals/#back-to-main-repo","title":"Back to Main Repo","text":""},{"location":"tutorial/github-fundamentals/#overview","title":"Overview:","text":"
                        • Getting started
                        • Organization
                        • Markdown
                        • Content types
                        "},{"location":"tutorial/github-fundamentals/#getting-started","title":"Getting started","text":"

                        GitHub is increasingly used by software developers, programmers and project managers for uploading and sharing content, as well as basic project management. You build a profile, upload projects to share and connect with other users by \"following\" their accounts. Many users store programs and code projects, but you can also upload text documents or other file types in your project folders to share publicly (or privately). It is capable of storing any file type from text, to structured data, to software. And more features are being added by the day. The real power of Git, however, is less about individuals publishing content (many places can do that, including google docs etc). It is more about that content being easily shared, built upon, and credited in a way that is robust to the realities of distributed collaboration. You don't have to know how to code or use the command line. It is a powerful way to organize projects with multiple participants.

                        "},{"location":"tutorial/github-fundamentals/#organization","title":"Organization","text":"

                        Git supports the following types of primary entities:

                        • Individual: A person who contributes to GitHub (that's you!)
                        • Example individual http://github.com/nicolevasilevsky
                        • Organization: An entity that may correspond to an actual organization (such as a university) or to a meaningful grouping of repositories. Organizations are like individuals except that they can establish teams.
                        • Example organization: https://github.com/monarch-initiative
                        • Repository: A collection of versioned files (of any type)
                        • Example repository https://github.com/monarch-initiative/mondo/
                        • Teams: A group of individuals assembled by the administrators of an organization. An individual may participate in many teams and organizations, however a team is always bound to a single organization. Nesting teams saves time; instructions here.

                        The relationships between any combination of these entities is many-to-many, with the nuanced exception of repositories. For our purposes today we will oversimplify by saying that a repositoy belongs either to a single organization or to a single individual.

                        "},{"location":"tutorial/github-fundamentals/#markdown","title":"Markdown","text":"

                        Content in GitHub is written using Markdown, a text-to-HTML conversion tool for web writers (ref).

                        For more help with Markdown, see this GitHub guide.

                        Raw markup syntax As rendered Header - use # for H1, ## for H2, etc. # Header, ## Header (note, the header is not displaying properly in this table) Emphasis, aka italics, with *asterisks* or _underscores_. Emphasis, aka italics, with asterisks or underscores. Strong emphasis, aka bold, with **asterisks** or __underscores__. Strong emphasis, aka bold, with asterisks or underscores. Combined emphasis with **asterisks and _underscores_**. Combined emphasis with asterisks and underscores. Strikethrough uses two tildes. ~~Scratch this.~~ Strikethrough uses two tildes. ~~Scratch this.~~

                        Lists: To introduce line breaks in markdown, add two spaces For a bulleted list, use * or - (followed by a space)

                        Here is an example of a list: One Two Three

                        Here is an example of a bulleted list:

                        • One
                        • Two
                        • Three
                        "},{"location":"tutorial/github-fundamentals/#content-types","title":"Content types","text":"

                        GitHub can store any kind of content, provided it isn't too big. (And now even this is possible). However, it is more capable for some filetypes than it is for others. Certain filetypes can be viewed 'natively' within the GitHub interface. These are:

                        • Images: png, jpg, svg
                        • GEOJSON
                        • CSV, TSV (note that files named type '.tab' will not render properly in the UI.)
                        • Markdown
                        • Software code (eg. including json, HTML, xml etc)
                        "},{"location":"tutorial/github-fundamentals/#task-create-a-new-github-repository","title":"Task - create a new GitHub repository","text":"
                        • Create your GitHub account if you do not already have one
                        • Customize your avatar if you haven't already
                        • Go to settings and upload any picture (it doesn't have to be your face)
                        • Create a repository
                        "},{"location":"tutorial/github-fundamentals/#task-update-the-content-in-your-readme","title":"Task - update the content in your README","text":"
                        • Go back to the repository you just created
                        • Click the pencil icon in the right corner of your README.md file
                        • Add some content to your file that includes a header, italics, bold, strikethrough, and lists
                        • You can preview your changes before committing by clicking 'Preview changes'.
                        • Commit your changes by clicking the commit button at the bottom of the page.
                        "},{"location":"tutorial/github-fundamentals/#task-add-content-to-your-repository","title":"Task - add content to your repository","text":"
                        • Click on the code button
                        • Click upload file
                        • Upload a file by dragging and dropping or browse for file
                        • Trying uploading an Excel file vs a TSV or CSV file. How are these displayed differently?
                        "},{"location":"tutorial/github-fundamentals/#additional-resources","title":"Additional Resources","text":"
                        • Frequently Asked Questions
                        • Git and GitHub for Documentation
                        • Markdown Cheatsheet
                        • Git 101: Git and GitHub for Beginners
                        • Mastering Issues (10 min read)
                        • Nomi's intro to GitHub slides
                        • Udemy course: Command Line Essentials: Git Bash for Windows
                        • Udemy course: Git: Become an Expert in Git & GitHub in 4 Hours
                        • Google: Introduction to Git and GitHub
                        • Udemy: Git Started with GitHub
                        "},{"location":"tutorial/github-fundamentals/#acknowledgements","title":"Acknowledgements","text":"

                        Adopted from CD2H MTIP tutorial

                        "},{"location":"tutorial/github-issues/","title":"GitHub Issue for OBO Engineers","text":""},{"location":"tutorial/github-issues/#intro-to-managing-and-tracking-issues-in-github","title":"Intro to managing and tracking issues in GitHub","text":""},{"location":"tutorial/github-issues/#overview","title":"Overview","text":"
                        • How to create issues
                        • How to assign issues
                        • How to communicate about issues
                        • How to organize issues
                        • How to query issues
                        • How to close issues
                        • How to assign teams
                        • Where to go when you need help
                        • Miscellany that is good to know
                        "},{"location":"tutorial/github-issues/#create-issues","title":"Create issues","text":"

                        Back to top

                        Why: \"Issues are a great way to keep track of tasks, enhancements, and bugs for your projects or for anyone else's. As long as you are a registered GitHub user you can log an issue, or comment on an issue for any open repo on GitHub. Issues are a bit like email\u2014except they can be shared, intelligently organized, and discussed with the rest of your team. GitHub\u2019s tracker is called Issues, and has its own section in every repository.\" (From: https://guides.github.com/features/issues/)

                        How:

                        How to create an issue in GitHub:

                        • We will practice creating tickets in this repository https://github.com/nicolevasilevsky/c-path-practice
                        • Click \"issues\"
                        • Click \"New Issue\" (note the word 'issue' and 'ticket' are frequently used interchangeably)
                        • Write an informative title
                        • Write a detailed explanation of your issue
                        • In the case of reporting software bugs, provide some context in which the issue was encountered (e.g. bug detected when using Google Chrome on a Mac OS)
                        • If you know the sub-tasks that are involved, list these using - [ ] markdown syntax before each bullet. Note, you can also add sub-tasks by clicking the 'add a task list' button in the tool bar. The status of the tasks in an issue (eg. https://github.com/nicolevasilevsky/c-path-practice/issues/1 will then be reflected in any summary view. Eg. https://github.com/nicolevasilevsky/c-path-practice/issues.
                        • Click Submit new issue
                        • Edit the issue (if needed) (Note that post-hoc edits will not propagate to email notifications).

                        Your turn:

                        Follow the instructions above to create a ticket about a hypothetical issue (such as an improvement to this tutorial) that includes a sub-task list.

                        "},{"location":"tutorial/github-issues/#assign-issues","title":"Assign issues","text":"

                        Back to top

                        Assign issues to people

                        • On the top right hand side, click \"Assignees\"
                        • You can assign issues to yourself or other people who are part of the repository
                        • In the box, start typing type their name or GitHub handle
                        • It is possible to assign up to 10 handles at once (assignment to a team is currently not supported)

                        Add labels

                        • On the top right hand side, click \"Labels\"
                        • Assign a relevant label to your ticket
                        • Note, by default, every GitHub repo comes with some standard labels
                        • You can also create new labels that are specific to your project. For example see the labels on the Mondo GitHub tracker

                        New Labels

                        • In GitHub, navigate to the Issues page or the pull requests tab
                        • Click Labels button next to the search field
                        • Click New Label to create a new label, or click Edit to edit an existing one.
                        • In the text box, type your new label name.
                        • Select a color for the label from the color bar. You can customize this color by editing the hexadecimal number above the color bar. For a list of hexadecimal numbers see HTML color codes
                        • Click Create Label to save the new label.

                        Your turn:

                        On the ticket you previously created:

                        • Assign the ticket to someone
                        • Add a label for an enhancement
                        • Create a new label and add it to the ticket
                        "},{"location":"tutorial/github-issues/#communicate-about-issues","title":"Communicate about issues","text":"

                        Back to top

                        Comment on issues

                        • Click on an issue in the issue tracker in the https://github.com/nicolevasilevsky/c-path-practice/issues repo
                        • Scroll to the bottom of the issue, and add content in the \"Leave a comment\" field
                        • Use the top tool bar to format your text, add bold, italic, lists etc.
                        • Preview your text to see how your formatting looks
                        • Click Comment.

                        Close issues

                        • If an issue has been addressed, click Close Issue. Best practice is to point to the work (whether code, documentation, etc) that has been done to close it.
                        • Only close the ticket if the issue has been resolved, usually someone will write a comment describing the action they did to close the issue and click Close Issue.
                        • The issue will no longer be dispalyed in the list of open issue, but will be archived.
                        • When making a change to code or documentation in GitHub, it is possible to automatically couple a change to an issue and close it. Just use 'fixes' or 'closes' followed by the issue number.

                        Use direct @ mentions

                        • You can mention someone in a issue without assigning it to them
                        • In the comments section, type @github handle. For example, to mention Nicole, you would type @nicolevasilevsky. You can either start typing their name or GitHub handle and GitHub will autosuggest their handle.

                        Link documents

                        You can link documents and files by:

                        • copy and pasting URL
                        • you can attach files by dragging and dropping
                        • You can link one issue to another in the same repo by typing '#' followed by the title of the ticket
                        • This approach also works across repos but you need to use the full URL (no autocomplete available). Doing this will also cause the referent issue to display that it has been referenced.

                        Cross reference to another ticket

                        • If your ticket is a duplicate or related to another ticket, you can cross reference another ticket
                        • Type # and you will see a list of other tickets in that repo
                        • Type #TicketNumber and that will link to the other ticket.

                        Before saving your changes, you can preview the comment to ensure the correct formatting.

                        Your turn:

                        • Follow the instructions above to comment on a ticket that someone created.
                        • Mention Nicole
                        • Attach a picture (such as a picture you copy from the internet, or attach a picture you have saved on your computer)
                        • Include a comment that says, 'related to #1' and link to ticket #1
                        "},{"location":"tutorial/github-issues/#organize-issues","title":"Organize issues","text":"

                        Back to top

                        Milestones

                        • To create a milestone, navigate to the issues page in your repository
                        • Next to the search field, click Milestones
                        • Click New Milestone to create a new milestone, click Edit to edit an existing one
                        • Create a milestone that is broad enough to be meaningful, but specific enough to be actionable.
                        • Set a due date for the milestone (note that specific tasks can not be formally assigned due dates, though you can mention a desired due date in the narrative text of a ticket.
                        • Each ticket can only be associated to ONE milestone, however it can have as many labels as appropriate.
                        • A given issue can be part of multiple \"project\" boards (see below)

                        Your turn

                        Create a new milestone, and add the milestone to an existing ticket.

                        Projects

                        • Projects is a lot like Trello, it uses cards on a list that you can name and organize as you see fit.
                        • You can create as many projects within a repository as you like

                        To create project:

                        • Click on Projects
                        • Click New Project
                        • Name the project
                        • Write a description of the project
                        • Create columns and give them names
                        • Add 'cards' to the columns

                        Your turn

                        Create a new project and add columns and add cards to the columns.

                        "},{"location":"tutorial/github-issues/#query-issues","title":"Query issues","text":"

                        Back to top

                        Once you start using GitHub for lots of things it is easy to get overwhelmed by the number of issues. The query dashboard https://github.com/issues allows you to filter on tickets.

                        • All issues assigned to me: https://github.com/issues/assigned
                        • All issues on which I am @ mentioned: https://github.com/issues/mentioned

                        More complex queries are also possible.

                        • All issues either assigned to me OR on which I have commented OR am mentioned: https://github.com/issues?utf8=%E2%9C%93&q=is%3Aopen+is%3Aissue+involves%3Anicolevasilevsky+

                        Note, you must be signed in to GitHub to view the above links.

                        Further reading on Issue querys

                        "},{"location":"tutorial/github-issues/#nofifications","title":"Nofifications","text":"
                        • When you join a repository, by default, you are 'watching' all activity. You can change the setting to 'Participating and @mentions' to only get notifications that mention you
                        • You can set rules in your email to filter for emails that mention you, ie @username.
                        "},{"location":"tutorial/github-issues/#help","title":"Help","text":"

                        Back to top

                        • You may find the answers you seek in StackOverflow, although it is primarily geared towards programmers.
                        • GitHub kind of monitors https://github.com/isaacs/github/issues/ but not with any rigor.
                        • To be safe, contact GitHub directly at https://github.com/contact, but recognize that they support literally millions of users and responsiveness is not guaranteed. Forums like isaacs sometimes offer some help because other users can help identify workarounds, for instance, as shown here.
                        "},{"location":"tutorial/github-issues/#acknowledgements","title":"Acknowledgements","text":"

                        Adopted from CD2H MTIP tutorial

                        "},{"location":"tutorial/intro-cli-1/","title":"Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 1","text":"

                        As a modern ontology curator, you are an engineer - you are curating computable knowledge, testing the integrity of your curation using quality control testing, and are responsible for critical components of modern knowledge systems that directly affect user experience - the ontologies.

                        Scientific computing is a big, scary world comprising many different tools, methodologies, training resources and philosophies, but nearly all modern workflows share one key aspect: the ability to execute commands that help you find and manipulate data with the command line. Some examples of that include:

                        1. Running and Ontology Development Kit (ODK) commands like sh run.sh make prepare_release
                        2. Creating a new branch in git and committing changes
                        3. Downloading a file with curl or wget
                        4. Finding which file in my ontology repository mentions HP:0000118 to figure out where that \"weird axiom is coming from\"
                        5. Searching for strange symbols in the ontology
                        6. Filtering and sorting text files

                        Here we are doing a basic hands on tutorial which will walk you through the must-know commands. For a more comprehensives introduction into thinking about automation please see our lesson on Automating Ontology Development Workflows: Make, Shell and Automation Thinking

                        The tutorial uses example tailored for users of UNIX systems, like Mac and Linux. Users of Windows generally have analogous steps - wherever we talk about an sh file in the following there exists a corresponding bat file that can be run in the windows powershell, or CMD.

                        "},{"location":"tutorial/intro-cli-1/#prerequisites","title":"Prerequisites","text":"

                        You have:

                        • a Mac or Linux Operating system
                        • alternatively, you have the Ontology Development Kit installed and learned how to \"get inside a running container\".
                        "},{"location":"tutorial/intro-cli-1/#monarch-obo-training-tutorial","title":"Monarch OBO Training Tutorial","text":"

                        Intro to Command Lind Interface Part 1

                        "},{"location":"tutorial/intro-cli-1/#tutorial","title":"Tutorial","text":"
                        1. Baby steps: whoami, ls and cd
                        2. Working with files and directories
                        3. Downloading and searching files
                        4. The Dark Art of Piping and Redirects
                        5. Tutorial videos
                        6. Further reading
                        "},{"location":"tutorial/intro-cli-1/#baby-steps-whoami-pwd-and-ls","title":"Baby steps: whoami, pwd and ls","text":"

                        We are not going to discuss here in any detail what the command line is. We will focus on what you can do with it: for more information skip to the further reading section.

                        The basic idea behind the command line is that you run a command to achieve a goal. Among the most common goals relevant to you as a semantic engineer will be:

                        1. Navigating the file system (changing directories, logging into remote servers and more)
                        2. Reading and writing files
                        3. Searching stuff

                        Most commands result in some kind of printed statement. Lets try one. Open your terminal (a terminal is the program you use to enter commands. For a nice overview of how shell, terminal, command line and console relate, see here). On Mac, you can type CMD+Space to search for programs and then type \"terminal\". For this tutorial we use the default Terminal.app, but there are many others, including iterm2. For this introduction, it does not matter which terminal you use. When first opening the terminal you will see something like this:

                        or

                        Note that your terminal window may look slightly different, depending on your configuration. More on that later.

                        Let's type our first command and hit enter:

                        whoami\n

                        On my machine I get

                        (base) matentzn@mbp.local:~ $ whoami\nmatentzn\n

                        This does not seem like a useful command, but sometimes, we forget who we are, and it is good to be reminded. So, what happened here? We ran a command, named whoami and our command line executed that command which is implemented somewhere on our machine as a program. That program simply determined who I am in some way, and then printed the result again.

                        Ok so, lets lets look a bit closer at the command prompt itself:

                        matentzn@mbp.local:~ $\n

                        Two interesting things to not here for today:

                        1. The ~. This universally (on all Unix systems) refers to your user directory on your computer. In this case here, it tells you that in your terminal, you are \"in your user directory\".
                        2. The $ sign. It simply denotes where your command line starts (everything before the $ is information provided to you, everything will be about your commands). Make sure that you do not accidentally copy based the $ sign from the examples on the web into your command prompt:
                        (base) matentzn@mbp.local:~ $ $ whoami\n-bash: $: command not found\n(base) matentzn@mbp.local:~ $\n

                        whoami did not do anything.

                        Ok, based on the ~ we know that we are \"in the user home directory\". Let as become a bit more confident about that and ask the command prompt where we are:

                        matentzn@mbp.local:~ $ pwd\n/Users/matentzn\n

                        The pwd command prints out the full path of our current location in the terminal. As you can see, the default location when opening the command prompt is, indeed, the home director, located in /Users/matentzn. We will use it later again.

                        A word about paths. /Users/matentzn is what we call a path. On UNIX systems, / separates one directory from another. So matentzn is a directory inside of the Users directory.

                        Let us now take a look what our current directory contains (type ls and hit enter):

                        matentzn@mbp.local:~ $ ls\nApplications    Library ...\n

                        This command will simply list all of the files in your directory as a big list. We can do this a bit nicer:

                        matentzn@mbp.local:~ $ ls -l\ntotal 80000\ndrwx------@   4 matentzn  staff       128 31 Jul  2020 Applications\ndrwx------@  26 matentzn  staff       832 12 Sep  2021 Desktop\n

                        -l is a short command line option which allows you specify that you would like print the results in a different format (a long list). We will not go into any detail here what this means but a few things to not in the output: You can see some pieces of information that are interesting, like when the file or directory was last modified (i.e. 31. July 2020), who modified it (me) and, of course, the name e.g. Applications.

                        Before we move on to the next section, let us clear the current terminal from all the command outputs we ran:

                        clear\n

                        Your command prompt should now be empty again.

                        "},{"location":"tutorial/intro-cli-1/#working-with-files-and-directories","title":"Working with files and directories","text":"

                        In the previous section we learned how to figure out who we are (whoami), where we are (pwd) and how to see what is inside the current directory (ls -l) and how to clear all the output (clear).

                        Let us know look at how we can programmatically create a new directory and change the location in our terminal.

                        First let us create a new directory:

                        mkdir tutorial-my\n

                        Now if we list the contents of our current directory again (ls -l), we will see our newly created directory listed! Unfortunately, we just realised that we chose the wrong name for our directory! It should have been my-tutorial instead of tutorial-my! So, let us rename it. In the command prompt, rather than \"renaming\" files and directories, we \"move\" them (mv).

                        mv tutorial-my my-tutorial\n

                        Now, lets enter our newly created directory using the _c_hange _d_irectory command (cd), and create another sub-directory in my-tutorial, called \"data\" (mkdir data):

                        cd my-tutorial\nmkdir data\n

                        You can check again with ls -l. If you see the data directory listed, we are all set! Feel free to run clear again to get rid of all the current output on the command prompt.

                        Let us also enter this directory now: cd data.

                        If we want to leave the directory again, feel free to do that like this:

                        cd ..\n

                        The two dots (..) mean: \"parent directory.\" This is very important to remember during your command line adventures: .. stands for \"parent directory\", and . stands for \"current/this directory\" (see more on that below).

                        Now, let's get into something more advanced: downloading files.

                        "},{"location":"tutorial/intro-cli-1/#downloading-and-searching-files","title":"Downloading and searching files","text":"

                        Our first task is to download the famous Human Phenotype Ontology Gene to Phenotype Annotations (aka HPOA). As you should already now, whenever we download ontologies, or ontology related files, we should always use a persistent URL, if available! This is the one for HPOA: http://purl.obolibrary.org/obo/hp/hpoa/genes_to_phenotype.txt.

                        There are two very popular commands for downloading content: curl and wget. I think most of my colleagues prefer curl, but I like wget because it simpler for beginners. So I will use it here. Lets us try downloading the file!

                        wget http://purl.obolibrary.org/obo/hp/hpoa/genes_to_phenotype.txt -O genes_to_phenotype.txt\n

                        The -O parameter is optional and specifies a filename. If you do not add the parameter, wget will try to guess the filename from the URL. This does not always go so well with complex URLs, so I personally recommend basically always specifying the -O parameter.

                        You can also use the curl equivalent of the wget command;

                        curl -L http://purl.obolibrary.org/obo/hp/hpoa/genes_to_phenotype.txt --output genes_to_phenotype.txt\n

                        Try before reading on: Exercises!

                        1. Move the downloaded file genes_to_phenotype.txt to the data directory you previously created.
                        2. Change into the data directory.
                        3. Download the OBO format version of the Human Phenotype Ontology from its PURL.

                        Do not move on to the next step unless your data directory looks similar to this:

                        matentzn@mbp.local:~/my-tutorial/data $ pwd\n/Users/matentzn/my-tutorial/data\nmatentzn@mbp.local:~/my-tutorial/data $ ls -l\ntotal 53968\n-rw-r--r--  1 matentzn  staff  19788987 11 Jun 19:09 genes_to_phenotype.txt\n-rw-r--r--  1 matentzn  staff   7836327 27 Jun 22:50 hp.obo\n

                        Ok, let us look at the first 10 lines of genes_to_phenotype.txt using the head command:

                        head genes_to_phenotype.txt\n

                        head is a great command to familiarise yourself with a file. You can use a parameter to print more or less lines:

                        head -3 genes_to_phenotype.txt\n

                        This will print the first 3 lines of the genes_to_phenotype.txt file. There is another analogous command that allows us to look at the last lines off a file:

                        tail genes_to_phenotype.txt\n

                        head, tail. Easy to remember.

                        Next, we will learn the most important of all standard commands on the command line: grep. grep stands for \"Global regular expression print\" and allows us to search files, and print the search results to the command line. Let us try some simple commands first.

                        grep diabetes genes_to_phenotype.txt\n

                        You will see a list of hundreds of lines out output. Each line corresponds to a line in the genes_to_phenotype.txt file which contains the word \"diabetes\".

                        grep is case sensitive. It wont find matches like Diabetes, with capital D!\n\nUse the `-i` parameter in the grep command to instruct grep to\nperform case insensitive matches.\n

                        There is a lot more to grep than we can cover here today, but one super cool thing is searching across an entire directory.

                        grep -r \"Elevated circulating follicle\" .\n

                        Assuming you are in the data directory, you should see something like this:

                        ./genes_to_phenotype.txt:190    NR0B1   HP:0008232  Elevated circulating follicle stimulating hormone level -   HP:0040281      orphadata   ORPHA:251510\n./genes_to_phenotype.txt:57647  DHX37   HP:0008232  Elevated circulating follicle stimulating hormone level -       -   mim2gene    OMIM:273250\n...... # Removed other results\n./hp.obo:name: Elevated circulating follicle stimulating hormone level\n

                        There are two new aspects to the command here:

                        1. The -r option (\"recursive\") allows is to search a directory and all directories within in.
                        2. The . in the beginning. Remember, in the previous use of the grep command we had the name of a file in the place where now the . is. The . means \"this directory\" - i.e. the directory you are in right now (if lost, remember pwd).

                        As you can see, grep does not only list the line of the file in which the match was found, it also tells us which filename it was found in! We can make this somewhat more easy to read as well by only showing filenames using the -l parameter:

                        matentzn@mbp.local:~/my-tutorial/data $ grep -r -l \"Elevated circulating follicle\" .\n./genes_to_phenotype.txt\n./hp.obo\n

                        "},{"location":"tutorial/intro-cli-1/#the-dark-art-of-piping-and-redirects","title":"The Dark Art of Piping and Redirects","text":"

                        The final lesson for today is about one of the most powerful features of the command line: the ability to chain commands together. Let us start with a simple example (make sure you are inside the data directory):

                        grep -r \"Elevated circulating follicle\" . | head -3\n

                        This results in:

                        ./genes_to_phenotype.txt:190    NR0B1   HP:0008232  Elevated circulating follicle stimulating hormone level -   HP:0040281      orphadata   ORPHA:251510\n./genes_to_phenotype.txt:57647  DHX37   HP:0008232  Elevated circulating follicle stimulating hormone level -       -   mim2gene    OMIM:273250\n./genes_to_phenotype.txt:57647  DHX37   HP:0008232  Elevated circulating follicle stimulating hormone level -   HP:0040281      orphadata   ORPHA:251510\n

                        So, what is happening here? First, we use the grep command to find \"Elevated circulating follicle\" in our data directory. As you may remember, there are more than 10 results for this command. So the grep command now wants to print these 10 results for you, but the | pipe symbol intercepts the result from grep and passes it on to the next command, which is head. Remember head and tail from above? Its exactly the same thing, only that, rather than printing the first lines of a file, we print the first lines of the output of the previous command. You can do incredible things with pipes. Here a taster which is beyond this first tutorial, but should give you a sense:

                        grep \"Elevated circulating follicle\" genes_to_phenotype.txt | cut -f2 | sort | uniq | head -3\n

                        Output:

                        AR\nBNC1\nC14ORF39\n

                        What is happening here?

                        1. grep is looking for \"Elevated circulating follicle\" in all files in the directory, then \"|\" is passing the output on to
                        2. cut, which extracts the second column of the table (how cool?), then \"|\" is passing the output on to
                        3. sort, which sorts the output, then \"|\" is passing the output on to
                        4. uniq, which removes all duplicate values from the output, then \"|\" is passing the output on to
                        5. head, which is printing only the first 3 rows of the result.

                        Another super cool use of piping is searching your command history. Try running:

                        history\n

                        This will show you all the commands you have recently run. Now if you want to simply look for some very specific commands that you have run in the past you can combine history with grep:

                        history | grep follicle\n

                        This will print every command you ran in the last hour that contains the word \"follicle\". Super useful if you, like me, keep forgetting your commands!

                        The last critical feature of the command line we cover today is the \"file redirect\". Instead of printing the output to file, we may chose to redirect the results to a file instead:

                        matentzn@mbp.local:~/my-tutorial/data $ grep \"Elevated circulating follicle\" genes_to_phenotype.txt | cut -f2 | sort | uniq | head -3 > gene.txt\nmatentzn@mbp.local:~/my-tutorial/data $ head gene.txt\nAR\nBNC1\nC14ORF39\n

                        > gene.txt basically tells the command line: instead of printing the results to the command line, \"print\" them into a file which is called gene.txt.

                        "},{"location":"tutorial/intro-cli-1/#videos","title":"Videos","text":""},{"location":"tutorial/intro-cli-1/#sam-bail-intro-to-terminal","title":"Sam Bail: Intro to Terminal","text":"

                        Sam also did here PhD in and around ontologies but has moved entirely to data engineering since. I really liked her 1 hour introduction into the terminal, this should fill some of the yawning gaps in this introduction here.

                        "},{"location":"tutorial/intro-cli-1/#further-reading","title":"Further reading","text":"
                        • Automating Ontology Development Workflows: Make, Shell and Automation Thinking
                        • Data Science at the Command Line: Free online book that covers everything you need to know to be a command line magician
                        • A whirlwind introduction to the command line by James Overton
                        "},{"location":"tutorial/intro-cli-2/","title":"Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 2","text":"

                        Today we will pick up where we left off after the first CLI tutorial, and discuss some more usages of the command line. In particular, we will:

                        • Introduce you into the art of managing your shell profile
                        • Learn how to manage your path
                        • Talk about how to make your shell hacking more efficient with aliases and functions.
                        "},{"location":"tutorial/intro-cli-2/#prerequisites","title":"Prerequisites","text":"

                        You have:

                        • Completed the first CLI tutorial
                        • (Optional) installed the amazing ohmyzsh! - advanced CLI for managing your ZSH profile. Important: Before installing ohmyzsh, back up you ~/.zshrc file in case you have had any previous customisations you wish to preserve.
                        "},{"location":"tutorial/intro-cli-2/#monarch-obo-training-tutorial","title":"Monarch OBO Training Tutorial","text":"

                        Introduction to Command Line Interface Part 2

                        "},{"location":"tutorial/intro-cli-2/#preparation","title":"Preparation","text":"
                        • Install https://ohmyz.sh/ (optional)
                        • For advanced windows users with docker installed, you can:
                        • Follow the instructions here to set yourself up for ODK development.
                        • Place odk.bat as instructed above in some directory on your machine (the path to the odk.bat file should have no spaces!)
                        • Create a new file .bash_profile in the same directory as your odk.bat file.
                        • Add something like -v %cd%\\.bash_profile:/root/.bash_profile to the odk.bat file (this is mounting the .bash_profile file inside your ODK container). There is already a similar -v statement in this file, just copy it right after
                        • Enter the ODK using odk.bat bash on your CMD (first, cd to the directory containing the odk.bat file).
                        • Now you can follow most of this tutorial here as well.
                        "},{"location":"tutorial/intro-cli-2/#tutorial","title":"Tutorial","text":"
                        • ohmyzsh! - advanced CLI (OPTIONAL)
                        • Managing the \"Path\": A first peak at your shell profile
                        • Managing aliases and functions in your bash profile
                        "},{"location":"tutorial/intro-cli-2/#ohmyzsh-advanced-cli-optional","title":"ohmyzsh! - advanced CLI (OPTIONAL)","text":"

                        If you have not done so, install https://ohmyz.sh/. It is not strictly speaking necessary to use ohmyzsh to follow the rest of this tutorial, but it is a nice way to managing your Zsh (z-shell) configuration. Note that the ODK is using the much older bash, but it should be fine for you to work with anyways.

                        "},{"location":"tutorial/intro-cli-2/#managing-the-path-a-first-peak-at-your-shell-profile","title":"Managing the \"Path\": A first peak at your shell profile","text":"

                        As Semantic Engineers or Ontology Curators we frequently have to install custom tools like ROBOT, owltools, and more on our computer. These are frequently downloaded from the internet as \"binaries\", for example as Java \"jar\" files. In order for our shell to \"know\" about these downloaded programs, we have to \"add them to the path\".

                        Let us first look at what we currently have loaded in our path:

                        echo $PATH\n

                        What you see here is a list of paths. To read this list a bit more easily, let us remember our lesson on piping commands:

                        echo $PATH | tr ':' '\\n'  | sort\n

                        What we do here:

                        1. Using the echo command to print the contents of the $PATH variable. In Unix systems, the $signifies the beginning of a variable name (if you are curious about what other \"environment variables\" are currently active on your system, use theprintenvcommand). The output of theecho command is piped to the next command (tr).
                        2. The tr \u2013 translate characters command copies the input of the previous command to the next with substitution or deletion of selected characters. Here, we substitute the : character, which is used to separate the different directory paths in the $PATH variable, with \"\\n\", which is the all important character that denotes a \"new line\".
                        3. Just because, we also sort the output alphabetically to make it more readable.

                        So, how do we change the \"$PATH\"? Let's try and install ROBOT and see! Before we download ROBOT, let us think how we will organise our custom tools moving forward. Everyone has their own preferences, but I like to create a tools directory right in my Users directory, and use this for all my tools moving forward. In this spirit, lets us first go to our user directory in the terminal, and then create a \"tools\" directory:

                        cd ~\nmkdir -p tools\n

                        The -p parameter simply means: create the tools directory only if it does not exist. Now, let us go inside the tools directory (cd ~/tools) and continue following the instructions provided here.

                        First, let us download the latest ROBOT release using the curl command:

                        curl -L https://github.com/ontodev/robot/releases/latest/download/robot.jar > robot.jar\n

                        ROBOT is written in the Java programming language, and packaged up as an executable JAR file. It is still quite cumbersome to directly run a command with that JAR file, but for the hell of it, let us just do it (for fun):

                        java -jar robot.jar --version\n

                        If you have worked with ROBOT before, this looks quite a bit more ugly then simply writing:

                        robot --version\n

                        If you get this (or a similar) error:

                        zsh: permission denied: robot\n

                        You will have to run the following command as well, which makes the robot wrapper script executable:

                        chmod +x ~/tools/robot\n

                        So, how can we achieve this? The answer is, we download a \"wrapper script\" and place it in the same folder as the Jar. Many tools provide such wrapper scripts, and they can sometimes do many more things than just \"running the jar file\". Let us know download the latest wrapper script:

                        curl https://raw.githubusercontent.com/ontodev/robot/master/bin/robot > robot\n

                        If everything went well, you should be able to print the contents of that file to the terminal using cat:

                        cat robot\n

                        You should see something like:

                        #!/bin/sh\n\n## Check for Cygwin, use grep for a case-insensitive search\nIS_CYGWIN=\"FALSE\"\nif uname | grep -iq cygwin; then\n    IS_CYGWIN=\"TRUE\"\nfi\n\n# Variable to hold path to this script\n# Start by assuming it was the path invoked.\nROBOT_SCRIPT=\"$0\"\n\n# Handle resolving symlinks to this script.\n# Using ls instead of readlink, because bsd and gnu flavors\n# have different behavior.\nwhile [ -h \"$ROBOT_SCRIPT\" ] ; do\n  ls=`ls -ld \"$ROBOT_SCRIPT\"`\n  # Drop everything prior to ->\n  link=`expr \"$ls\" : '.*-> \\(.*\\)$'`\n  if expr \"$link\" : '/.*' > /dev/null; then\n    ROBOT_SCRIPT=\"$link\"\n  else\n    ROBOT_SCRIPT=`dirname \"$ROBOT_SCRIPT\"`/\"$link\"\n  fi\ndone\n\n# Directory that contains the this script\nDIR=$(dirname \"$ROBOT_SCRIPT\")\n\nif [ $IS_CYGWIN = \"TRUE\" ]\nthen\n    exec java $ROBOT_JAVA_ARGS -jar \"$(cygpath -w $DIR/robot.jar)\" \"$@\"\nelse\n    exec java $ROBOT_JAVA_ARGS -jar \"$DIR/robot.jar\" \"$@\"\nfi\n

                        We are not getting into the details of what this wrapper script does, but note that, you can fine the actually call the the ROBOT jar file towards the end: java $ROBOT_JAVA_ARGS -jar \"$DIR/robot.jar\" \"$@\". The cool thing is, we do not need to ever worry about this script, but it is good for use to know, as Semantic Engineers, that it exists.

                        Now, we have downloaded the ROBOT jar file and the wrapper script into the ~/tools directory. The last step remaining is to add the ~/tools directory to your path. It makes sense to try to at least understand the basic idea behind environment variables: variables that are \"loaded\" or \"active\" in your environment (your shell). The first thing you could try to do is change the variable right here in your terminal. To do that, we can use the export command:

                        export PATH=$PATH:~/tools\n

                        What you are doing here is using the export command to set the PATH variable to $PATH:~/tools, which is the old path ($PATH), a colon (:) and the new directory we want to add (~/tools). And, indeed, if we now look at our path again:

                        echo $PATH | tr ':' '\\n'  | sort\n

                        We will see the path added. We can now move around to any directory on our machine and invoke the robot command. Try it before moving on!

                        Unfortunately, the change we have now applied to the $PATH variable is not persistent: if you open a new tab in your Terminal, your $PATH variable is back to what it was. What we have to do in order to make this persistent is to add the export command to a special script which is run every time the you open a new terminal: your shell profile.

                        There is a lot to say about your shell profiles, and we are taking a very simplistic view here that covers 95% of what we need: If you are using zsh your profile is managed using the ~/.zshrc file, and if you are using bash, your profile is managed using the ~/.bash_profile file. In this tutorial I will assume you are using zsh, and, in particular, after installing \"oh-my-zsh\". Let us look at the first 5 lines of the ~/.zshrc file:

                        head ~/.zshrc\n

                        If you have installed oh-my-zsh, the output will look something like:

                        # If you come from bash you might have to change your $PATH.\n# export PATH=$HOME/bin:/usr/local/bin:$PATH\n\n# Path to your oh-my-zsh installation.\nexport ZSH=\"$HOME/.oh-my-zsh\"\n\n# Set name of the theme to load --- if set to \"random\", it will\n# load a random theme each time oh-my-zsh is loaded, in which case,\n# to know which specific one was loaded, run: echo $RANDOM_THEME\n# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes\n

                        This ~/.zshrc profile script is loaded every time you open up a new shell. What we want to do is add our export command above to this script, so that it is running every time. That is the basic concept of a shell profile: providing a series of commands that is run every time a new shell (terminal window, tab) is opened.

                        For this tutorial, we use nano to edit the file, but feel free to use your text editor of choice. For example, you can open the profile file using TextEdit on Mac like this:

                        open -a TextEdit ~/.zshrc\n

                        We will proceed using nano, but feel free to use any editor.

                        nano ~/.zshrc\n

                        Using terminal-based editors like nano or, even worse, vim, involves a bit of a learning curve. nano is by far the least powerful and simple to use. If you typed the above command, you should see its contents on the terminal. The next step is to copy the following (remember, we already used it earlier)

                        export PATH=$PATH:~/tools\n

                        and paste it somewhere into the file. Usually, there is a specific section of the file that is concerned with setting up your path. Eventually, as you become more of an expert, you will start organising your profile according to your own preferences! Today we will just copy the command anywhere, for example:

                        # If you come from bash you might have to change your $PATH.\n# export PATH=$HOME/bin:/usr/local/bin:$PATH\nexport PATH=~/tutorial:$PATH\n# ..... other lines in the file\n

                        Note that the # symbol denotes the beginning of a \"comment\" which is ignored by the shell/CLI. After you have pasted the above, you use the following keyboard key-combinations to safe and close the file:

                        control + O\n

                        This saves the file. Confirm with Enter.

                        control + x\n

                        This closes the file. Now, we need to tell the shell we are currently in that it should reload our profile we have just edited. We do that using the source command.

                        source ~/.zshrc\n

                        Great! You should be able open a new tab in your terminal (with command+t on a Mac, for example) and run the following command:

                        robot --version\n

                        "},{"location":"tutorial/intro-cli-2/#managing-aliases-and-custom-commands-in-your-shell-profile","title":"Managing aliases and custom commands in your shell profile","text":"

                        This section will only give a sense of the kinds of things you can do with your shell profile - in the end you will have to jump into the cold water and build your skills up yourself. Let us start with a very powerful concept: aliases. Aliases are short names for your commands you can use if you use them repeatedly but are annoyed typing them out every time. For example, tired of typing out long paths all the time to jump between your Cell Ontology and Human Phenotype Ontology directories? Instead of:

                        cd /Users/matentzn/ws/human-phenotype-ontology/src/ontology\n

                        wouldn't it be nice to be able to use, instead,

                        cdhp\n

                        or, if you are continuously checking git status, why not implement a alias gits? Or activating your python environment (source ~/.pyenv/versions/oak/bin/activate) with a nice env-oak? To achieve this we do the following:

                        (1) Open your profile in a text editor of your choice, e.g.

                        nano ~/.zshrc\n

                        add the following lines:

                        alias cdt='cd ~/tools'\nalias hg='history | grep'\n

                        Save (control+o) and close (control+x) the profile. Reload the profile:

                        source ~/.zshrc\n

                        (Alternatively, just open a new tab in your Terminal.) Now, lets try our new aliases:

                        cdt\n

                        Will bring you straight to your tools directory you created in the previous lesson above.

                        hg robot\n

                        Will search your terminal command history for every command you have executed involving robot.

                        "},{"location":"tutorial/intro-cli-2/#list-of-ideas-for-aliases","title":"List of ideas for aliases","text":"

                        In the following, we provide a list of aliases we find super useful:

                        1. alias cdt='cd ~/tools' - add shortcuts to all directories you frequently visit!
                        2. alias orcid='echo '\\''https://orcid.org/0000-0002-7356-1779'\\'' | tr -d '\\''\\n'\\'' | pbcopy' - if you keep having to look up your ORCID, your favourite ontologies PURL or the your own zoom room, why not add a shortcut that copies it straight into your clipboard?
                        3. alias opent='open ~/tools' - why not open your favourite directory in finder without faving to search the User Interface? You can use the same idea to open your favourite ontology from wherever you are, i.e. alias ohp='open ~/ws/human-phenotype-ontology/src/ontology/hp-edit.owl'.
                        4. alias env-linkml='source ~/.pyenv/versions/linkml/bin/activate' - use simple shortcuts to active your python environments. This will become more important if you learn to master special python tools like OAK.
                        5. alias update_repo='sh run.sh make update_repo' - for users of ODK - alias all your long ODK commands!
                        "},{"location":"tutorial/intro-cli-2/#functions","title":"Functions","text":"

                        The most advanced thought we want to cover today is \"functions\". You can not only manage simple aliases, but you can actually add proper functions into your shell profile. Here is an example of one that I use:

                        ols() {\n    open https://www.ebi.ac.uk/ols/search?q=\"$1\"\n}\n

                        This is a simple function in my bash profile that I can use to search on OLS:

                        ols \"lung disorder\"\n

                        It will open this search straight in my browser.

                        rreport() {\n    robot report -i \"$1\" --fail-on none -o /Users/matentzn/tmp_data/report_\"$(basename -- $1)\".tsv\n}\n

                        This allows me to quickly run a robot report on an ontology.

                        rreport cl.owl\n

                        Why not expand the function and have it open in my atom text editor right afterwards?

                        rreport() {\n    robot report -i \"$1\" --fail-on none -o /Users/matentzn/tmp_data/report_\"$(basename -- $1)\".tsv && atom /Users/matentzn/tmp_data/report_\"$(basename -- $1)\".tsv\n}\n

                        The possibilities are endless. Some power-users have hundreds of such functions in their shell profiles, and they can do amazing things with them. Let us know about your own ideas for functions on the OBOOK issue tracker. Or, why not add a function to create a new, titled issue on OBOOK?

                        obook-issue() {\n  open https://github.com/OBOAcademy/obook/issues/new?title=\"$1\"\n}\n

                        and from now on run:

                        obook-issue \"Add my awesome function\"\n

                        "},{"location":"tutorial/intro-cli-2/#further-reading","title":"Further reading","text":"
                        • Automating Ontology Development Workflows: Make, Shell and Automation Thinking
                        • Data Science at the Command Line: Free online book that covers everything you need to know to be a command line magician
                        • A whirlwind introduction to the command line by James Overton
                        "},{"location":"tutorial/lexmatch-tutorial/","title":"Practical introduction to OAK Lexmatch","text":"

                        In this tutorial, we will learn to use a very basic lexical matching tool (OAK Lexmatch). The goal is not only to enable the learner to design their own matching pipelines, but also to to think about how they fit into their mapping efforts. Note that this tutorial is not about how to do proper matching: the goal here is simply to introduce you to the general workflow. Proper ontology matching is a major discipline with many tools, preprocessing and tuning approaches and often intricate interplay between matching tools and human curators. Today, you will just get a sense of the general method.

                        "},{"location":"tutorial/lexmatch-tutorial/#pre-requisites","title":"Pre-requisites","text":"
                        • Introduction to mapping curation with SSSOM
                        • ROBOT tutorial (extract)
                        • ROBOT tutorial (merge)
                        "},{"location":"tutorial/lexmatch-tutorial/#tutorial","title":"Tutorial","text":"

                        In this tutorial, you will learn how to match fruit juices in Wikidata with FOODON using a simple lexical matching tool (OAK). The idea is simple: We obtain the ontologies we like to match, ask OAK to generate the matches and then curate the results.

                        1. Setting up OAK, preparing the ontology: You will learn how to install OAK into a new Python environment, and create a simple Makefile to prepare your input ontology with ROBOT.
                        2. Download Ontologies and extract subsets: Prepare the data/ontologies you want to match.
                        3. Generate the matches with OAK: Generate the matches using a simple tool.
                        4. Curating matching results: Manually review the results of the mars

                        "},{"location":"tutorial/lexmatch-tutorial/#setting-up-oak-preparing-the-ontology","title":"Setting up OAK, preparing the ontology","text":"

                        Setting up oak is described in its documentation. Note that, aside from oak itself, you also need relation-graph, rdftab and riot installed, see https://incatools.github.io/ontology-access-kit/intro/tutorial07.html#without-docker. This tutorial requires OAK version 0.1.59 or higher.

                        Note that if you are using the ODK docker image, oaklib is already installed. In the following, we will use the ODK wrapper to ensure that everyone has a consistent experience. If you want to use the local (non-docker) setup, you have to follow the instructions above before continuing and ignore the sh odk.sh part of the commands.

                        "},{"location":"tutorial/lexmatch-tutorial/#important-for-users-of-odk-132","title":"IMPORTANT for users of ODK < 1.3.2:","text":"

                        ODK 1.3.1, the version still active on the 8th December 2022, does not have the latest dependencies of OAK installed. To follow the tutorial you have to use the ODK development snapshot.

                        Install the ODK Development snapshot:

                        docker pull obolibrary/odkfull:dev\n

                        After downloading https://raw.githubusercontent.com/OBOAcademy/obook/master/docs/resources/odk.sh into your local working directory, open it with a text editor and change:

                        docker ... obolibrary/odkfull ...\n

                        to

                        docker ... obolibrary/odkfull:dev ...\n

                        "},{"location":"tutorial/lexmatch-tutorial/#download-ontologies-and-extract-subsets","title":"Download Ontologies and extract subsets","text":"

                        First, we download FOODON ontology. You can do this in whatever way you want, for example with wget:

                        sh odk.sh wget http://purl.obolibrary.org/obo/foodon.owl -O foodon.owl\n

                        Next, we extract the subset of FOODON that is relevant to our task at hand: relevant terms about fruit juices. The right method of subset extraction will differ from task to task. For this tutorial, we are using ROBOT extract to obtain a MIREOT module containing all the fruit juices. We do this by selecting everything between fruit juice food product as the upper-term and fruit juices (apple juice, orange juice and grapefruit juice) as the lower-term of the FOODON subset.

                        sh odk.sh robot extract --method MIREOT --input foodon.owl --upper-term \"FOODON:00001140\" --lower-term \"FOODON:00001277\" --lower-term \"FOODON:00001059\" --lower-term \"FOODON:03306174 \" --output fruit_juice_food_foodon.owl\n

                        If you open fruit_juice_food_foodon.owl in Protege, you will see something similar to:

                        Next, we use OAK to extract juices and their labels from wikidata by selecting the descendants of juice from wikidata, store the result as a ttl file and then convert it to OWL using ROBOT.

                        sh odk.sh runoak -i wikidata: descendants wikidata:Q8492 -p i,p -o juice_wd.ttl -O rdf\nsh odk.sh robot convert -i juice_wd.ttl  -o juice_wd.owl\n

                        Note that you wont be able to see anything when opening juice_wd.owl in wikidata, because it does not have any OWL types (class, individual assertions) attached to it. However, you can convince yourself all is well by opening juice_wd.owl in a text editor, and see expressions such as:

                        <rdf:Description rdf:about=\"http://www.wikidata.org/entity/Q10374646\">\n    <rdfs:label>cashew apple juice</rdfs:label>\n</rdf:Description>\n

                        The last preparation step is merging the two subsets (from FOODON and wikidata) into a single file using ROBOT:

                        sh odk.sh robot merge -i fruit_juice_food_foodon.owl -i juice_wd.owl -o foodon_wd.owl\n

                        "},{"location":"tutorial/lexmatch-tutorial/#generate-the-matches-with-oak","title":"Generate the matches with OAK","text":"

                        Now we are ready to create our first set of matches. First, let's run oak's lexmatch command to generate lexical matches between the contents of the merged file:

                        sh odk.sh runoak -i sqlite:foodon_wd.owl lexmatch -o foodon_wd_lexmatch.tsv\n

                        This will generate an SSSOM tsv file with the mapped contents as shown below:

                        # curie_map:\n#   FOODON: http://purl.obolibrary.org/obo/FOODON_\n#   owl: http://www.w3.org/2002/07/owl#\n#   rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#\n#   rdfs: http://www.w3.org/2000/01/rdf-schema#\n#   semapv: https://w3id.org/semapv/\n#   skos: http://www.w3.org/2004/02/skos/core#\n#   sssom: https://w3id.org/sssom/\n#   wikidata: http://www.wikidata.org/entity/\n# license: https://w3id.org/sssom/license/unspecified\n# mapping_set_id: https://w3id.org/sssom/mappings/091390a2-6f64-436d-b2d1-309045ff150c\n
                        subject_id subject_label predicate_id object_id object_label mapping_justification mapping_tool confidence subject_match_field object_match_field match_string FOODON:00001059 apple juice skos:closeMatch wikidata:Q618355 apple juice semapv:LexicalMatching oaklib 0.5 rdfs:label rdfs:label apple juice FOODON:00001059 apple juice skos:closeMatch wikidata:Q618355 apple juice semapv:LexicalMatching oaklib 0.5 oio:hasExactSynonym rdfs:label apple juice FOODON:03301103 orange juice skos:closeMatch wikidata:Q219059 orange juice semapv:LexicalMatching oaklib 0.5 rdfs:label rdfs:label orange juice FOODON:03306174 grapefruit juice skos:closeMatch wikidata:Q1138468 grapefruit juice semapv:LexicalMatching oaklib 0.5 rdfs:label rdfs:label grapefruit juice wikidata:Q15823640 cherry juice skos:closeMatch wikidata:Q62030277 cherry juice semapv:LexicalMatching oaklib 0.5 rdfs:label rdfs:label cherry juice wikidata:Q18201657 must skos:closeMatch wikidata:Q278818 must semapv:LexicalMatching oaklib 0.5 rdfs:label rdfs:label must

                        This is great - we get a few mappings without much work. If you need some help interpreting this table, please refer to the SSSOM tutorials for details.

                        Just eyeballing the labels in our ontology with OAK:

                        sh odk.sh runoak -i sqlite:foodon_wd.owl terms | grep juice\n

                        We notice rows like:

                        ...\nFOODON:00001001 ! orange juice (liquid)\n...\n

                        It may be beneficial for us to pre-process the labels a bit before performing the matches, for example, by excluding comments in the labels provided in brackets (essentially removing (liquid)).

                        To do this, we will define a few simple mapping rules in a file called matcher_rules.yaml. OAK provides a standard for representing the matching rules. You can see an example here.

                        Here is an example file:

                        rules:\n- description: default\npostconditions:\npredicate_id: skos:closeMatch\nweight: 0.0\n\n- description: exact to exact\npreconditions:\nsubject_match_field_one_of:\n- oio:hasExactSynonym\n- rdfs:label\n- skos:prefLabel\nobject_match_field_one_of:\n- oio:hasExactSynonym\n- rdfs:label\n- skos:prefLabel\npostconditions:\npredicate_id: skos:exactMatch\nweight: 2.0\n\n- preconditions:\nsubject_match_field_one_of:\n- oio:hasExactSynonym\n- rdfs:label\nobject_match_field_one_of:\n- oio:hasBroadSynonym\npostconditions:\npredicate_id: skos:broadMatch\nweight: 2.0\n\n- synonymizer:\nthe_rule: Remove parentheses bound info from the label.\nmatch: r'\\([^)]*\\)'\nmatch_scope: \"*\"\nreplacement: \"\"\n\n- synonymizer:\nthe_rule: Replace \"'s\" by \"s\" in the label.\nmatch: r'\\'s'\nmatch_scope: \"*\"\nreplacement: \"s\"\n

                        As you can see, there are basically two kinds of rules: normal ones, and synonimizer ones. The normal rules provide preconditions and postconditions. For example, the second rule says: if an exact synonym, preferred label or label of the subject matches an exact synonym, preferred label or label of the object, then assert a skos:exactMatch. The synonimizer rules are preprocessing rules which are applied to the labels and synonyms prior to matching. Let's now run the matcher again:

                        sh odk.sh runoak -i sqlite:foodon_wd.owl lexmatch -R matcher_rules.yaml -o foodon_wd_lexmatch_with_rules.tsv \n

                        This will generate an SSSOM tsv file with a few more matches than the previous output (the exact matches may differ from version to version):

                        # curie_map:\n#   FOODON: http://purl.obolibrary.org/obo/FOODON_\n#   IAO: http://purl.obolibrary.org/obo/IAO_\n#   owl: http://www.w3.org/2002/07/owl#\n#   rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#\n#   rdfs: http://www.w3.org/2000/01/rdf-schema#\n#   semapv: https://w3id.org/semapv/\n#   skos: http://www.w3.org/2004/02/skos/core#\n#   sssom: https://w3id.org/sssom/\n#   wikidata: http://www.wikidata.org/entity/\n# license: https://w3id.org/sssom/license/unspecified\n# mapping_set_id: https://w3id.org/sssom/mappings/6b9c727f-9fdc-4a78-bbda-a107b403e3a9\n
                        subject_id subject_label predicate_id object_id object_label mapping_justification mapping_tool confidence subject_match_field object_match_field match_string subject_preprocessing object_preprocessing FOODON:00001001 orange juice (liquid) skos:exactMatch FOODON:00001277 orange juice (unpasteurized) semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label orange juice semapv:RegularExpressionReplacement semapv:RegularExpressionReplacement FOODON:00001001 orange juice (liquid) skos:exactMatch FOODON:03301103 orange juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label orange juice semapv:RegularExpressionReplacement FOODON:00001001 orange juice (liquid) skos:exactMatch wikidata:Q219059 orange juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label orange juice semapv:RegularExpressionReplacement FOODON:00001059 apple juice skos:exactMatch wikidata:Q618355 apple juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label apple juice FOODON:00001059 apple juice skos:exactMatch wikidata:Q618355 apple juice semapv:LexicalMatching oaklib 0.8 oio:hasExactSynonym rdfs:label apple juice FOODON:00001277 orange juice (unpasteurized) skos:exactMatch FOODON:03301103 orange juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label orange juice semapv:RegularExpressionReplacement FOODON:00001277 orange juice (unpasteurized) skos:exactMatch wikidata:Q219059 orange juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label orange juice semapv:RegularExpressionReplacement FOODON:00002403 food material skos:exactMatch FOODON:03430109 food (liquid, low viscosity) semapv:LexicalMatching oaklib 0.8 oio:hasExactSynonym rdfs:label food semapv:RegularExpressionReplacement FOODON:00002403 food material skos:exactMatch FOODON:03430130 food (liquid) semapv:LexicalMatching oaklib 0.8 oio:hasExactSynonym rdfs:label food semapv:RegularExpressionReplacement FOODON:03301103 orange juice skos:exactMatch wikidata:Q219059 orange juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label orange juice FOODON:03306174 grapefruit juice skos:exactMatch wikidata:Q1138468 grapefruit juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label grapefruit juice FOODON:03430109 food (liquid, low viscosity) skos:exactMatch FOODON:03430130 food (liquid) semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label food semapv:RegularExpressionReplacement semapv:RegularExpressionReplacement wikidata:Q15823640 cherry juice skos:exactMatch wikidata:Q62030277 cherry juice semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label cherry juice wikidata:Q18201657 must skos:exactMatch wikidata:Q278818 must semapv:LexicalMatching oaklib 0.8497788951776651 rdfs:label rdfs:label must

                        "},{"location":"tutorial/lexmatch-tutorial/#curate","title":"Curate","text":"

                        As we have described in detail in our introduction to Semantic Matching, it is important to remember that matching in its raw form should not be understood to result in semantic mappings: they are better understood as mapping candidates. Therefore, it is always to plan for a review of false positives and false negatives:

                        1. False positive review (wrong mappings). The goal here is to identify mappings that do not work for our use case, or do not use the correct semantic mapping relation. If you look carefully through the matched files, you'll notice that manual intervention is definitely required for the matches to be accurate. For example, orange juice [wikidata:Q219059] and orange juice (unpasteurized) [FOODON:00001277] may not be considered as the same thing in the sense of skos:exactMatch.
                        2. False negative review (missing mappings). The goal here is to understand if we can do anything to improve the matching process by tuning it. Here, we did a little bit of that earlier when we were looking at the labels of the wikidata and FOODON juice hierarchies.

                        For a more detailed introduction into manual mapping curation with SSSOM we recommend following this tutorial: https://mapping-commons.github.io/sssom/tutorial/.

                        "},{"location":"tutorial/linking-data/","title":"Tutorial: From Tables to Linked Data","text":"

                        These are the kinds of things that I do when I need to work with a new dataset. My goal is to have data that makes good sense and that I can integrate with other data using standard technologies: Linked Data.

                        "},{"location":"tutorial/linking-data/#0-before","title":"0. Before","text":"

                        The boss just sent me this new table to figure out:

                        datetime investigator subject species strain sex group protocol organ disease qualifier comment 1/1/14 10:21 AM JAO 12 RAT F 344/N FEMALE 1 HISTOPATHOLOGY LUNG ADENOCARCINOMA SEVERE 1/1/14 10:30 AM JO 31 MOUSE B6C3F1 MALE 2 HISTOPATHOLOGY NOSE INFLAMMATION MILD 1/1/14 10:45 AM JAO 45 RAT F 344/N MALE 1 HISTOPATHOLOGY ADRENAL CORTEX NECROSIS MODERATE

                        It doesn't seem too bad, but there's lots of stuff that I don't quite understand. Where to start?

                        "},{"location":"tutorial/linking-data/#1-getting-organized","title":"1. Getting Organized","text":"

                        Before I do anything else, I'm going to set up a new project for working with this data. Maybe I'll change my mind later and want to merge the new project with an existing project, but it never hurts to start from a nice clean state.

                        I'll make a new directory in a sensible place with a sensible name. In my case I have a ~/Repositories/ directory, with subdirectories for GitHub and various GitLab servers, a local directory for projects I don't plan to share, and a temp directory for projects that I don't need to keep. I'm not sure if I'm going to share this work, so it can go in a new subdirectory of local. I'll call it \"linking-data-tutorial\" for now.

                        Then I'll run git init to turn that directory into a git repository. For now I'm just going to work locally, but later I can make a repository on GitHub and push my local repository there.

                        Next I'll create a README.md file where I'll keep notes for myself to read later. My preferred editor is Kakoune.

                        So I'll open a terminal and run these commands:

                        $ cd ~/Repositories/local/\n$ mkdir linking-data-tutorial\n$ cd linking-data-tutorial\n$ git init\n$ kak README.md\n

                        In the README I'll start writing something like this:

                        # Linking Data Tutorial\n\nAn example of how to convert a dataset to Linked Data.\n\nThe source data is available from\n<https://github.com/jamesaoverton/obook/tree/master/03-RDF/data.csv>\n

                        Maybe this information should go somewhere else eventually, but the README is a good place to start.

                        \"Commit early, commit often\" they say, so:

                        $ git add README.md\n$ git commit -m \"Initial commit\"\n
                        "},{"location":"tutorial/linking-data/#2-getting-copies","title":"2. Getting Copies","text":"

                        Data has an annoying tendency to get changed. You don't want it changing out from under you while you're in the middle of something. So the next thing to do is get a copy of the data and store it locally. If it's big, you can store a compressed copy. If it's too big to fit on your local machine, well keep the best notes you can of how to get to the data, and what operations you're doing on it.

                        I'm going to make a cache directory and store all my \"upstream\" data there. I'm going to fetch the data and that's it -- I'm not going to edit these files. When I want to change the data I'll make copies in another directory. I don't want git to track the cached data, so I'll add /cache/ to .gitignore and tell git to track that. Then I'll use curl to download the file.

                        $ mkdir cache\n$ echo \"/cache/\" >> .gitignore\n$ git add .gitignore\n$ git commit -m \"Ignore /cache/ directory\"\n$ cd cache\n$ curl -LO \"https://github.com/jamesaoverton/obook/raw/master/03-RDF/data.csv\"\n$ ls\ndata.csv\n$ cd ..\n$ ls -a\n.gitignore data README.md\n
                        "},{"location":"tutorial/linking-data/#3-getting-my-bearings","title":"3. Getting My Bearings","text":"

                        The first thing to do is look at the data. In this case I have just one table in CSV format, so I can use any number of tools to open the file and look around. I bet the majority of people would reach for Excel. My (idiosyncratic) preference is VisiData.

                        What am I looking for? A bunch of different things:

                        • what do the rows represent?
                        • what columns do I have?
                        • for each column, what sorts of values do I have?

                        In my README file I'll make a list of the columns like this:

                        - datetime\n- investigator\n- subject\n- species\n- strain\n- sex\n- group\n- protocol\n- organ\n- disease\n- qualifier\n- comment\n

                        Then I'll make some notes for myself:

                        - datetime: American-style dates, D/M/Y or M/D/Y?\n- investigator: initials, ORCID?\n- subject: integer ID\n- species: common name for species, NCBITaxon?\n- strain: some sort of code with letters, numbers, spaces, some punctuation\n- sex: string female/male\n- group: integer ID\n- protocol: string, OBI?\n- organ: string, UBERON?\n- disease: string, DO/MONDO?\n- qualifier: string, PATO?\n- comment: ???\n

                        You can see that I'm trying to figure out what's in each column. I'm also thinking ahead to OBO ontologies that I know of that may have terms that I can use for each column.

                        "},{"location":"tutorial/linking-data/#4-getting-structured","title":"4. Getting Structured","text":"

                        In the end, I want to have nice, clean Linked Data. But I don't have to get there in one giant leap. Instead I'll take a bunch of small, incremental steps.

                        There's lots of tools I can use, but this time I'll use SQLite.

                        First I'll set up some more directories. I'll create a build directory where I'll store temporary files. I don't want git to track this directory, so I'll add it to .gitignore.

                        $ mkdir build/\n$ echo \"/build/\" >> .gitignore\n$ git add .gitignore\n$ git commit -m \"Ignore /build/ directory\"\n

                        I'll also add a src directory to store code. I do want to track src with git.

                        $ mkdir src\n$ kak src/data.sql\n

                        In src/data.sql I'll add just enough to import build/data.csv:

                        -- import build/data.csv\n.mode csv\n.import build/data.csv data_csv\n

                        This will create a build/data.db file and import build/data.csv into a data_csv table. Does it work?

                        $ sqlite3 build/data.db < src/data.sql\n$ sqlite3 build/data.db <<< \"SELECT * FROM data_csv LIMIT 1;\"\n2014-01-01 10:21:00-0500|JAO|12|RAT|F 344/N|FEMALE|1|HISTOPATHOLOGY|LUNG|ADENOCARCINOMA|SEVERE|\n

                        Nice!

                        Note that I didn't even specify a schema for data_csv. It uses the first row as the column names, and the type of every column is TEXT. Here's the schema I end up with:

                        $ sqlite3 build/data.db <<< \".schema data_csv\"\nCREATE TABLE data_csv(\n\"datetime\" TEXT,\n\"investigator\" TEXT,\n\"subject\" TEXT,\n\"species\" TEXT,\n\"strain\" TEXT,\n\"sex\" TEXT,\n\"group\" TEXT,\n\"protocol\" TEXT,\n\"organ\" TEXT,\n\"disease\" TEXT,\n\"qualifier\" TEXT,\n\"comment\" TEXT\n);\n

                        I'm going to want to update src/data.sql then rebuild the database over and over. It's small, so this will only take a second. If it was big, then I would copy a subset into build/data.csv for now so that I the script still runs in a second or two and I can iterate quickly. I'll write a src/build.sh script to make life a little easier:

                        #!/bin/sh\n\nrm -f build/*\ncp cache/data.csv build/data.csv\nsqlite3 build/data.db < src/data.sql\n

                        Does it work?

                        $ sh src/build.sh\n

                        Nice! Time to update the README:

                        ## Requirements\n\n- [SQLite3](https://sqlite.org/index.html)\n\n## Usage\n\nRun `sh src/build.sh`\n

                        I'll commit my work in progress:

                        $ git add src/data.sql src/build.sh\n$ git add --update\n$ git commit -m \"Load data.csv into SQLite\"\n

                        Now I have a script that executes a SQL file that loads the source data into a new database. I'll modify the src/data.sql file in a series of small steps until it has the structure that I want.

                        "},{"location":"tutorial/linking-data/#5-getting-clean","title":"5. Getting Clean","text":"

                        In the real world, data is always a mess. It takes real work to clean it up. And really, it's almost never perfectly clean.

                        It's important to recognize that cleaning data has diminishing returns. There's low hanging fruit: easy to clean, often with code, and bringing big benefits. Then there's tough stuff that requires an expert to work through the details, row by row.

                        The first thing to do is figure out the schema you want. I'll create a new data table and start with the default schema from data_csv. Notice that in the default schema all the column names are quoted. That's kind of annoying. But when I remove the quotation marks I realize that one of the column names is \"datetime\", but datetime is a keyword in SQLite! You can't use it as a column name without quoting. I'll rename it to \"assay_datetime\". I have the same problem with \"group\". I'll rename \"group\" to \"group_id\" and \"subject\" to \"subject_id\". The rest of the column names seem fine.

                        I want \"assay_datetime\" to be in standard ISO datetime format, but SQLite stores these as TEXT. The \"subject\" and \"group\" columns are currently integers, but I plan to make them into URIs to CURIEs. So everything will still be TEXT.

                        CREATE TABLE data(\nassay_datetime TEXT,\ninvestigator TEXT,\nsubject_id TEXT,\nspecies TEXT,\nstrain TEXT,\nsex TEXT,\ngroup_id TEXT,\nprotocol TEXT,\norgan TEXT,\ndisease TEXT,\nqualifier TEXT,\ncomment TEXT\n);\n

                        The dates currently look like \"1/1/14 10:21 AM\". Say I know that they were done on Eastern Standard Time. How do I convert to ISO dates like \"2014-01-01 10:21:00-0500\"? Well SQLite isn't the right tool for this. The Unix date command does a nice job, though:

                        $ date -d \"1/1/14 10:21 AM EST\" +\"%Y-%m-%d %H:%M:%S%z\"\n2014-01-01 10:21:00-0500\n

                        I can run that over each line of the file using awk. So I update the src/build.sh to rework the build/data.csv before I import:

                        #!/bin/sh\n\nrm -f build/*\n\nhead -n1 cache/data.csv > build/data.csv\ntail -n+2 cache/data.csv \\\n| awk 'BEGIN{FS=\",\"; OFS=\",\"} {\n  \"date -d \\\"\"$1\" EST\\\" +\\\"%Y-%m-%d %H:%M:%S%z\\\"\" | getline $1;\n  print $0\n}' \\\n>> build/data.csv\n\nsqlite3 build/data.db < src/data.sql\n

                        One more problem I could clean up is that \"JO\" should really be \"JAO\" -- that's just a typo, and they should both refer to James A. Overton. I could make that change in src/build.sh, but I'll do it in src/data.sql instead. I'll write a query to copy all the rows of data_csv into data and then I'll update data with some fixes.

                        -- copy from data_csv to data\nINSERT INTO data SELECT * FROM data_csv;\n\n-- clean data\nUPDATE data SET investigator=\"JAO\" WHERE investigator=\"JO\";\n

                        Honestly, it took me quite a while to write that awk command. It's a very powerful tool, but I don't use it enough to remember how it works. You might prefer to write yourself a Python script, or some R code. You could use that instead of this SQL UPDATE as well. I just wanted to show you two of the thousands of ways to do this. If there's a lot of replacements like \"JO\", then you might also consider listing them in another table that you can read into your script.

                        The important part is to automate your cleaning!

                        Why didn't I just edit cache/data.csv in Excel? In step 2 I saved a copy of the data because I didn't want it to change while I was working on it, but I do expect it to change! By automating the cleaning process, I should be able to just update cache/data.csv run everything again, and the fixes will be applied again. I don't want to do all this work manually every time the upstream data is updated.

                        I'll commit my work in progress:

                        $ git add --update\n$ git commit -m \"Start cleaning data\"\n

                        Cleaning can take a lot of work. This is example table is pretty clean already. The next hard part is sorting out your terminology.

                        "},{"location":"tutorial/linking-data/#6-getting-connected","title":"6. Getting Connected","text":"

                        It's pretty easy to convert a table structure to triples. The hard part is converting the table contents. There are some identifiers in the table that would be better as URLs, and there's a bunch of terminology that would be better if it was linked to an ontology or other system.

                        I'll start with the identifiers that are local to this data: subject_id and group_id. I can convert them to URLs by defining a prefix and then just using that prefix. I'll use string concatenation to update the table:

                        -- update subject and groupd IDs\nUPDATE data SET subject_id='ex:subject-' || subject_id;\nUPDATE data SET group_id='ex:group-' || group_id;\n

                        Now I'll check my work:

                        $ sqlite3 build/data.db <<< \"SELECT * FROM data_csv LIMIT 1;\"\n2014-01-01 10:21:00-0500|JAO|ex:subject-12|RAT|F 344/N|FEMALE|ex:group-1|HISTOPATHOLOGY|LUNG|ADENOCARCINOMA|SEVERE|\n

                        I should take a moment to tell you, that while I was writing the Turtle conversion code later in this essay, I had to come back here and change these identifiers. The thing is that Turtle is often more strict than I expect about identifier syntax. Turtle identifiers look like CURIEs, but they're actually QNames. CURIEs are pretty much just just URLs shortened with a prefix, so almost anything goes. QNames come from XML, and Turtle identifiers have to be valid XML element names.

                        I always remember that I need to stick to alphanumeric characters, and that I have to replace whitespace and punctuation with a - or _. I didn't remember that the local part (aka \"suffix\", aka \"NCName\") can't start with a digit. So I tried to use \"subject:12\" and \"group:1\" as my identifiers. That worked fine until I generated Turtle. The Turtle looked fine, so it took me quite a while to figure out why it looked very wrong when I converted it into RDXML format.

                        This kind of thing happens to me all the time. I'm almost always using a mixture of technologies based on different sets of assumptions, and there are always things that don't line up. That's why I like to work in small iterations, checking my work as I go (preferrably with automated tests), and keeping everything in version control. When I need to make a change like this one, I just circle back and iterate again.

                        The next thing is to tackle the terminology. First I'll just make a list of the terms I'm using from the relevant columns in build/term.tsv:

                        ```sh #collect $ sqlite3 build/data.db << EOF > build/term.tsv SELECT investigator FROM data UNION SELECT species FROM data UNION SELECT strain FROM data UNION SELECT strain FROM data UNION SELECT sex FROM data UNION SELECT protocol FROM data UNION SELECT organ FROM data UNION SELECT disease FROM data UNION SELECT qualifier FROM data; EOF

                        It's a lot of work to go through all those terms\nand find good ontology terms.\nI'm going to do that hard work for you\n(just this once!)\nso we can keep moving.\nI'll add this table to `src/term.tsv`\n\n| id                        | code           | label              |\n| ------------------------- | -------------- | ------------------ |\n| obo:NCBITaxon_10116       | RAT            | Rattus norvegicus  |\n| obo:NCBITaxon_10090       | MOUSE          | Mus musculus       |\n| ex:F344N                  | F 344/N        | F 344/N            |\n| ex:B6C3F1                 | B6C3F1         | B6C3F1             |\n| obo:PATO_0000383          | FEMALE         | female             |\n| obo:PATO_0000384          | MALE           | male               |\n| obo:OBI_0600020           | HISTOPATHOLOGY | histology          |\n| obo:UBERON_0002048        | LUNG           | lung               |\n| obo:UBERON_0007827        | NOSE           | external nose      |\n| obo:UBERON_0001235        | ADRENAL CORTEX | adrenal cortex     |\n| obo:MPATH_268             | ADENOCARCINOMA | adenocarcinoma     |\n| obo:MPATH_212             | INFLAMMATION   | inflammation       |\n| obo:MPATH_4               | NECROSIS       | necrosis           |\n| obo:PATO_0000396          | SEVERE         | severe intensity   |\n| obo:PATO_0000394          | MILD           | mild intensity     |\n| obo:PATO_0000395          | MODERATE       | moderate intensity |\n| orcid:0000-0001-5139-5557 | JAO            | James A. Overton   |\n\nAnd I'll add these prefixes to `src/prefix.tsv`:\n\n| prefix  | base                                        |\n| ------- | ------------------------------------------- |\n| rdf     | http://www.w3.org/1999/02/22-rdf-syntax-ns# |\n| rdfs    | http://www.w3.org/2000/01/rdf-schema#       |\n| xsd     | http://www.w3.org/2001/XMLSchema#           |\n| owl     | http://www.w3.org/2002/07/owl#              |\n| obo     | http://purl.obolibrary.org/obo/             |\n| orcid   | http://orcid.org/                           |\n| ex      | https://example.com/                        |\n| subject | https://example.com/subject/                |\n| group   | https://example.com/group/                  |\n\nNow I can import these tables into SQL\nand use the term table as a FOREIGN KEY constraint\non data:\n\n```sql\n.mode tabs\n\nCREATE TABLE prefix (\n  prefix TEXT PRIMARY KEY,\n  base TEXT UNIQUE\n);\n.import --skip 1 src/prefix.tsv prefix\n\nCREATE TABLE term (\n  id TEXT PRIMARY KEY,\n  code TEXT UNIQUE,\n  label TEXT UNIQUE\n);\n.import --skip 1 src/term.tsv term\n\nCREATE TABLE data(\n  assay_datetime TEXT,\n  investigator TEXT,\n  subject_id TEXT,\n  species TEXT,\n  strain TEXT,\n  sex TEXT,\n  group_id TEXT,\n  protocol TEXT,\n  organ TEXT,\n  disease TEXT,\n  qualifier TEXT,\n  comment TEXT,\n  FOREIGN KEY(investigator) REFERENCES term(investigator),\n  FOREIGN KEY(species) REFERENCES term(species),\n  FOREIGN KEY(strain) REFERENCES term(strain),\n  FOREIGN KEY(sex) REFERENCES term(sex),\n  FOREIGN KEY(protocol) REFERENCES term(protocol),\n  FOREIGN KEY(organ) REFERENCES term(organ),\n  FOREIGN KEY(disease) REFERENCES term(disease),\n  FOREIGN KEY(qualifier) REFERENCES term(qualifier)\n);\n\n-- copy from data_csv to data\nINSERT INTO data SELECT * FROM data_csv;\n\n-- clean data\nUPDATE data SET investigator='JAO' WHERE investigator='JO';\n\n-- update subject and groupd IDs\nUPDATE data SET subject_id='ex:subject-' || subject_id;\nUPDATE data SET group_id='ex:group-' || group_id;\n

                        I'll update the README:

                        See `src/` for:\n\n- `prefix.tsv`: shared prefixes\n- `term.tsv`: terminology\n

                        I'll commit my work in progress:

                        $ git add src/prefix.tsv src/term.tsv\n$ git add --update\n$ git commit -m \"Add and apply prefix and term tables\"\n

                        Now all the terms are linked to controlled vocabularies of one sort or another. If I want to see the IDs for those links instead of the \"codes\" I can define a VIEW:

                        CREATE VIEW linked_data_id AS\nSELECT assay_datetime,\ninvestigator_term.id AS investigator,\nsubject_id,\nspecies_term.id AS species,\nstrain_term.id AS strain,\nsex_term.id AS sex,\ngroup_id,\nprotocol_term.id AS protocol,\norgan_term.id AS organ,\ndisease_term.id AS disease,\nqualifier_term.id AS qualifier\nFROM data\nJOIN term as investigator_term ON data.investigator = investigator_term.code\nJOIN term as species_term ON data.species = species_term.code\nJOIN term as strain_term ON data.strain = strain_term.code\nJOIN term as sex_term ON data.sex = sex_term.code\nJOIN term as protocol_term ON data.protocol = protocol_term.code\nJOIN term as organ_term ON data.organ = organ_term.code\nJOIN term as disease_term ON data.disease = disease_term.code\nJOIN term as qualifier_term ON data.qualifier = qualifier_term.code;\n

                        I'll check:

                        $ sqlite3 build/data.db <<< \"SELECT * FROM linked_ids LIMIT 1;\"\n2014-01-01 10:21:00-0500|orcid:0000-0001-5139-5557|ex:subject-12|obo:NCBITaxon_10116|ex:F344N|obo:PATO_0000383|ex:group-1|obo:OBI_0600020|obo:UBERON_0002048|obo:MPATH_268|obo:PATO_0000396\n

                        I can also define a similar view for their \"official\" labels:

                        CREATE VIEW linked_data_label AS\nSELECT assay_datetime,\ninvestigator_term.label AS investigator,\nsubject_id,\nspecies_term.label AS species,\nstrain_term.label AS strain,\nsex_term.label AS sex,\ngroup_id,\nprotocol_term.label AS protocol,\norgan_term.label AS organ,\ndisease_term.label AS disease,\nqualifier_term.label AS qualifier\nFROM data\nJOIN term as investigator_term ON data.investigator = investigator_term.code\nJOIN term as species_term ON data.species = species_term.code\nJOIN term as strain_term ON data.strain = strain_term.code\nJOIN term as sex_term ON data.sex = sex_term.code\nJOIN term as protocol_term ON data.protocol = protocol_term.code\nJOIN term as organ_term ON data.organ = organ_term.code\nJOIN term as disease_term ON data.disease = disease_term.code\nJOIN term as qualifier_term ON data.qualifier = qualifier_term.code;\n

                        I'll check:

                        $ sqlite3 build/data.db <<< \"SELECT * FROM linked_data_label LIMIT 1;\"\n2014-01-01 10:21:00-0500|James A. Overton|ex:subject-12|Rattus norvegicus|F 344/N|female|ex:group-1|histology|lung|adenocarcinoma|severe intensity\n

                        I'll commit my work in progress:

                        $ git add --update\n$ git commit -m \"Add linked_data tables\"\n

                        Now the tables use URLs and is connected to ontologies and stuff. But are we Linked yet?

                        "},{"location":"tutorial/linking-data/#7-getting-triples","title":"7. Getting Triples","text":"

                        SQL tables aren't an official Linked Data format. Of all the RDF formats, I prefer Turtle. It's tedious but not difficult to get Turtle out of SQL. These query do what I need them to do, but note that if the literal data contained quotation marks (for instance) then I'd have to do more work to escape those. First I create a triple table:

                        CREATE TABLE triple (\nsubject TEXT,\npredicate TEXT,\nobject TEXT,\nliteral INTEGER -- 0 for object IRI, 1 for object literal\n);\n\n-- create triples from term table\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT id, 'rdfs:label', label, 1\nFROM term;\n\n-- create triples from data table\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-assay_datetime', assay_datetime, 1\nFROM data;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-investigator', term.id, 0\nFROM data\nJOIN term AS term ON data.investigator = term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-subject_id', subject_id, 0\nFROM data;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-species', term.id, 0\nFROM data\nJOIN term AS term ON data.species = term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-strain', term.id, 0\nFROM data\nJOIN term AS term ON data.strain = term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-sex', term.id, 0\nFROM data\nJOIN term AS term ON data.sex = term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-group_id', group_id, 0\nFROM data;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-protocol', term.id, 0\nFROM data\nJOIN term AS term ON data.protocol = term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-organ',term.id, 0\nFROM data\nJOIN term AS term ON data.organ= term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-disease', term.id, 0\nFROM data\nJOIN term AS term ON data.disease = term.code;\n\nINSERT INTO triple(subject, predicate, object, literal)\nSELECT 'ex:assay-' || data.rowid, 'ex:column-qualifier', term.id, 0\nFROM data\nJOIN term AS term ON data.qualifier = term.code;\n

                        Then I can turn triples into Turtle using string concatenation:

                        SELECT '@prefix ' || prefix || ': <' || base || '> .'\nFROM prefix\nUNION ALL\nSELECT ''\nUNION ALL\nSELECT subject || ' ' ||\npredicate || ' ' ||\nCASE literal\nWHEN 1 THEN '\"' || object || '\"'\nELSE object\nEND\n|| ' . '\nFROM triple;\n

                        I can add this to the src/build.sh:

                        sqlite3 build/data.db < src/turtle.sql > build/data.ttl\n

                        Here's just a bit of that build/data.ttl file:

                        @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .\n\norcid:0000-0001-5139-5557 rdfs:label \"James A. Overton\" .\nassay:1 column:assay_datetime \"2014-01-01 10:21:00-0500\"^^xsd:datetime .\nassay:1 column:investigator orcid:0000-0001-5139-5557 .\n

                        SQL is not a particularly expressive language. Building the triple table is straightforward but verbose. I could have done the same thing with much less Python code. (Or I could have been clever and generated some SQL to execute!)

                        I'll commit my work in progress:

                        $ git add src/turtle.sql\n$ git add --update\n$ git commit -m \"Convert to Turtle\"\n

                        So technically I have a Turtle file. Linked Data! Right? Well, it's kind of \"flat\". It still looks more like a table than a graph.

                        "},{"location":"tutorial/linking-data/#8-getting-linked","title":"8. Getting Linked","text":"

                        The table I started with is very much focused on the data: there was some sort of assay done, and this is the information that someone recorded about it. The Turtle I just ended up with is basically the same.

                        Other people may have assay data. They may have tables that they converted into Turtle. So can I just merge them? Technically yes: I can put all these triples in one graph together. But I'll still just have \"flat\" chunks of data representing rows sitting next to other rows, without really linking together.

                        The next thing I would do with this data is reorganized it based on the thing it's talking about. I know that:

                        • there was an assay
                        • the assay was performed at a certain time, using a certain protocol
                        • there was a person who performed the assay
                        • there was a subject animal of some species, strain, and sex
                        • the subject animal belonged to a study group
                        • the subject animal had some organs
                        • the assay resulted in some measurements

                        Most of these are things that I could point to in the world, or could have pointed to if I was in the right place at the right time.

                        By thinking about these things, I'm stepping beyond what it was convenient for someone to record, and thinking about what happened in the world. If somebody else has some assay data, then they might have recorded it differently for whatever reason, and so it wouldn't line up with my rows. I'm trying my best to use the same terms for the same things. I also want to use the same \"shapes\" for the same things. When trying to come to an agreement about what is connected to what, life is easier if I can point to the things I want to talk about: \"See, here is the person, and the mouse came from here, and he did this and this.\"

                        I could model the data in SQL by breaking the big table into smaller tables. I could have tables for:

                        • person
                        • group
                        • subject: species, strain, sex, group
                        • assay: date, investigator, subject, protocol
                        • measurement: assay, organ, disease, qualifier

                        Then I would convert each table to triples more carefully. That's a good idea. Actually it's a better idea than what I'm about to do...

                        Since we're getting near the end, I'm going to show you how you can do that modelling in SPARQL. SPARQL has a CONSTRUCT operation that you use to build triples. There's lots of tools that I could use to run SPARQL but I'll use ROBOT. I'll start with the \"flat\" triples in build/data.ttl, select them with my WHERE clause, then CONSTRUCT better triples, and save them in build/model.ttl.

                        PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nPREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nPREFIX xsd: <http://www.w3.org/2001/XMLSchema#>\nPREFIX owl: <http://www.w3.org/2002/07/owl#>\nPREFIX obo: <http://purl.obolibrary.org/obo/>\nPREFIX ex: <https://example.com/>\n\nCONSTRUCT {\n  ?group\n    rdfs:label      ?group_label .\n  ?subject\n    rdf:type        ?species ;\n    rdfs:label      ?subject_label ;\n    ex:strain       ?strain ;\n    obo:RO_0000086  ?sex ;         # has quality\n    ex:group        ?group .\n  ?sex\n    rdf:type        ?sex_type ;\n    rdfs:label      ?sex_label .\n  ?organ\n    rdf:type        ?organ_type ;\n    rdfs:label      ?organ_label ;\n    obo:BFO_0000050 ?subject .     # part of\n  ?assay\n    rdf:type        ?assay_type ;\n    rdfs:label      ?assay_label ;\n    obo:OBI_0000293 ?subject ;     # has specified input\n    obo:IAO_0000136 ?organ .       # is about\n}\nWHERE {\n  ?subject_row\n    ex:column-assay_datetime ?datetime ;\n    ex:column-investigator   ?investigator ;\n    ex:column-subject_id     ?subject ;\n    ex:column-species        ?species ;\n    ex:column-sex            ?sex_type ;\n    ex:column-group_id       ?group ;\n    ex:column-protocol       ?assay_type ;\n    ex:column-organ          ?organ_type ;\n    ex:column-disease        ?disease ;\n    ex:column-qualifier      ?qualifier .\n\n  ?assay_type\n    rdfs:label ?assay_type_label .\n  ?sex_type\n    rdfs:label ?sex_type_label .\n  ?organ_type\n    rdfs:label ?organ_type_label .\n\n  BIND (URI(CONCAT(STR(?subject), \"-assay\")) AS ?assay)\n  BIND (URI(CONCAT(STR(?subject), \"-sex\"))   AS ?sex)\n  BIND (URI(CONCAT(STR(?subject), \"-organ\")) AS ?organ)\n  BIND (CONCAT(\"subject \", REPLACE(STR(?subject), \"^.*-\", \"\")) AS ?subject_label)\n  BIND (CONCAT(\"group \", REPLACE(STR(?group), \"^.*-\", \"\"))     AS ?group_label)\n  BIND (CONCAT(?subject_label, \" \", ?assay_type_label)    AS ?assay_label)\n  BIND (CONCAT(?subject_label, \" sex: \", ?sex_type_label) AS ?sex_label)\n  BIND (CONCAT(?subject_label, \" \", ?organ_type_label)    AS ?organ_label)\n}\n

                        I can add this to the src/build.sh:

                        java -jar robot.jar query \\\n--input build/data.ttl \\\n--query src/model.rq build/model.ttl\n

                        Then I get build/model.ttl that looks (in part) like this:

                        ex:subject-31  a        obo:NCBITaxon_10090 ;\nrdfs:label      \"subject 31\" ;\nobo:RO_0000086  ex:subject-31-sex ;\nex:group        ex:group-2 .\n\nex:group-2  rdfs:label  \"group 2\" .\n

                        Now that's what I call Linked Data!

                        I'll update the README:

                        ## Modelling\n\nThe data refers to:\n\n- investigator\n- subject\n- group\n- assay\n- measurement data\n  - subject organ\n  - disease\n\nTODO: A pretty diagram.\n

                        I'll commit my work in progress:

                        $ git add src/model.rq\n$ git add --update\n$ git commit -m \"Build model.ttl\"\n
                        "},{"location":"tutorial/linking-data/#9-getting-it-done","title":"9. Getting It Done","text":"

                        That was a lot of work for a small table. And I did all the hard work of mapping the terminology to ontology terms for you!

                        There's lots more I can do. The SPARQL is just one big chunk, but it would be better in smaller pieces. The modelling isn't all that great yet. Before changing that I want to run it past the boss and see what she thinks.

                        It's getting close to the end of the day. Before I quit I should update the README, clean up anything that's no longer relevant or correct, and make any necessary notes to my future self:

                        $ git add --update\n$ git commit -m \"Update README\"\n$ quit\n
                        "},{"location":"tutorial/managing-dynamic-imports-odk/","title":"Managing Dynamic Imports with the Ontology Development Kit","text":"

                        In this tutorial, we discuss the general workflow of managing dynamic imports, i.e. importing terms from other ontologies which can be kept up to date.

                        "},{"location":"tutorial/managing-dynamic-imports-odk/#tutorial","title":"Tutorial","text":"

                        Follow instructions for the PATO dynamic import process here.

                        "},{"location":"tutorial/managing-ontology-project/","title":"Tutorial on Managing OBO Ontology Projects","text":"

                        This tutorial is not about editing ontologies and managing the evolution of its content (aka ontology curation), but the general process of managing an ontology project overall. In this lesson, we will cover the following:

                        1. How to effectively manage an ontology project using GitHub projects and teams
                        2. How to coordinate the evolution of ontologies across projects and grants

                        It is important to understand that the following is just one good way of doing project management for OBO ontologies, and most projects will do it slightly differently. We do however believe that thinking about your project management process and the roles involved will benefit your work in the long term, and hope that the following will help you as a starting point.

                        "},{"location":"tutorial/managing-ontology-project/#roles-in-obo-ontology-project-management-activities","title":"Roles in OBO Ontology project management activities","text":"
                        1. Ontology Editor (OE): manage the content of ontologies and interact with users
                        2. Principal Ontology Editor (POE): coordinate the curation activities and have always fixed hours assigned to the project.
                        3. Ontology Pipeline Developer (OPD): Manage the technical workflows around ontologies, such as release workflows, continuous integration and QC, and setting up data pipelines. Also helps with bulk editing activities.
                        4. Principal Investigators (PI): Manage the projects that fund ontology curation activities.

                        For an effective management of an ontology, the following criteria are recommended:

                        1. There should be at least one Principal Ontology Editor for every ontology project. The importance is not whether this editor (or sometimes called 'ontology curator') has a specific number of hours per week allocated to the project (although based on our experience, 1 day per week is minimum), but whether the editor has a sense of ownership, i.e. they understand that they are the primary responsible person for maintaining the ontology moving forward. Because of potential grant overlapping issues, we recommend to have at least 1 Principal Ontology Editor for every grant/funded project that has a stake in the ontology.
                        2. Every effective ontology needs at least a few hours per week from an Ontology Pipeline Developer (OPD). More on that role later. The OPD does not always have as strong a sense of ownership of the ontology project, but typically has a strong sense of responsibility to members of the curation team.
                        3. There should be separate meetings for curation and technical activities - both problems are hard, and need different team members being present. We recommend at least monthly technical and biweekly curation calls, but for many of the most effective ontology projects we manage, weekly technical and weekly curation calls are normal.

                        Without the above minimum criteria, the following recommendations will be very hard to implement.

                        "},{"location":"tutorial/managing-ontology-project/#the-project-management-toolbox","title":"The Project Management Toolbox","text":"

                        We make use of three tools in the following recommendation:

                        Project boards: Project boards, sometimes referred to as Kanban boards, GitHub boards or agile boards, are a great way to organise outstanding tickets and help maintain a clear overview of what work needs to be done. They are usually realised with either GitHub projects or ZenHub. If you have not worked with project boards before, we highly recommend watching a quick tutorial on Youtube, such as:

                        GitHub teams. GitHub teams, alongside with organisations, are a powerfull too to organise collaborative workflows on GitHub. They allow you to communicate and organise permissions for editing your ontology in a transparent way. You can get a sense of GitHub teams by watching one of the the numerous tutorials on GitHub, such as:

                        Markdown-based documentation system. Writing great documentation is imperative for a sustainable project. Across many of our recent projects, were are using mkdocs, which we have also integrated with the Ontology Development Kit, but there are others to consider. We deeply recommend to complete a very short introduction to Markdown, this tutorial on YouTube.

                        "},{"location":"tutorial/managing-ontology-project/#what-do-you-need-for-your-project","title":"What do you need for your project?","text":"

                        Every ontology or group of related ontologies (sometimes it is easier to manage multiple ontologies at once, because their scope or technical workflows are quite uniform or they are heavily interrelated) should have:

                        1. at least two teams, an Editorial Team and a Technical Team, with clearly defined members. We recommend to create two teams on GitHub and keep their members always up to date (i.e. remove members that are not actively participating), but many of our projects merely maintain a \"core team\", which is a more liberal team containing everyone from stakeholders, principal investigators, editors and users (for managing write permissions see later in the \"best practice\" section) and listing the members of the Editorial and Technical Teams on a page in the documentation (example). Note that it is a good idea to be careful of who on your team has \"admin\" rights on your repo, so sometimes, a distinct \"admin\" team can be very helpful. Admins are allowed to do \"dangerous\" things like deleting the repository.
                        2. two distinct project boards. We recommend two distinct project boards, one for the Curation/Editorial Team, and one for the Technical Team. The details on how to design the boards is up to the respective teams, but we found a simple 4 stage board with sections for To Do (issues that are important but not urgent), Priority (issues that are important and urgent), In Progress (issues that are being worked on) and Under review (issues that need review). From years of experience with project boards, we recommend against the common practice of keeping a Backlog column (issues that are neither important nor urgent nor likely to be addressed in the next 6 months), nor a Done column (to keep track of closed issues) - they just clutter the view.
                        3. A documentation system (often realised using mkdocs in OBO projects) with a page listing the members of the team (example). This page should provide links to all related team pages from Github and their project boards, as well as a table listing all current team members with the following information:
                        4. Name
                        5. ORCiD
                        6. Funding Information
                        7. Allocated FTEs (0 if on volunteering basis)
                        8. Associated teams
                        9. Role
                        10. Responsibilities (What kind of issues can they be assigned to review? How are they involved in the Project?)
                        "},{"location":"tutorial/managing-ontology-project/#responsibilities","title":"Responsibilities","text":"
                        1. Effective Ontology Pipeline Developers (OPDs) are extremely rare and are typically active across many different projects. Therefore their attention is scattered. Understanding and accepting this is key for the following points.
                        2. Principal Investigators explicitly assign target weekly hours for Ontology Editors and Ontology Pipeline Developers to the project. These should be captured on the documentation systems team page (see above).
                        3. The Ontology Editors are responsible for the entire Curation Team Board and the To Do and Priority columns of the Technical Team. The later is important: it is the job of the curation team to prioritise the technical issues. The Technical Team can add tickets to the To Do and Priority columns, but this usually happens only in response to a request from the Curation Team.
                        4. When the technical team meets, the Principal Ontology Editor(s) (POE) are present, i.e. the POEs are members of the technical team as well. They will help clarifying the Priority tickets. The Technical Team is responsible to
                        5. assign issues and reviewers among themselves (ideally, the reviewer should be decided at the same time the issue is assigned)
                        6. move issues from the Priority to the In Progress and later to the Done section.
                        7. communicate through the POE to the PIs when resources are insufficient to address Priority issues.
                        8. The Principal Ontology Editor is responsible for ensuring that new issues on the issue tracker are dealt with. Usually this happens in the following ways:
                        9. They ensure that each external issue (i.e. an issue from anyone outside the core team) is (a) responded to in a polite manner and (b) assigned to someone appropriate or politely rejected due to lack of resources.
                        10. They ensure that each internal issue is assigned to the person that made them. No issue should appear unassigned.
                        11. The ensure that pull requests are (a) assigned to someone to handle and (b) merged in a timely manner. Too many open PRs cause problems with conflicts.
                        "},{"location":"tutorial/managing-ontology-project/#best-practices","title":"Best Practices","text":"
                        • The To Do issues should first be moved to the Priority section before being addressed. This prevents focusing on easy to solve tickets in favour of important ones.
                        • Even if Google Docs are used to manage team meetings, at the end of each meetings all open issues must be captured as GitHub tickets and placed in the appropriate box on the board. We recommend that Backlog items are not added at all to the board - if they ever become important, they tend to resurface all by themselves.
                        • The single most important point of failure is the absence of an Principal Ontology Editor with a strong sense of ownership. This should be the projects priority to determine first.
                        • All new members of the project should undergo an onboarding. It is a good idea to prepare walkthroughs of the project (as video or pages in the documentation system) covering everything from Curation to Technical and Project Management.
                        • The Principal Ontology Editor responsible for dealing with external issues should be named explicitly on the team page.
                        • We recommend the following practices for write permissions:
                        • The main (formerly master) branch should be write protected with suitable rules. For example, requiring QC to pass and 1 approving review as a minimum.
                        • The curation and technical teams are mainly for social organisation, they do not have to physically exist. However, having a small team with \"admin rights\" and a team (e.g. the core team mentioned above) with \"write\" rights greatly helps with organising the permissions in a transparent manner.
                        "},{"location":"tutorial/managing-ontology-releases-odk/","title":"Managing Ontology Releases with the Ontology Development Kit","text":"

                        In this tutorial, we discuss the general workflow of ontology releases.

                        "},{"location":"tutorial/managing-ontology-releases-odk/#tutorial","title":"Tutorial","text":"

                        Follow instructions for the PATO release process here.

                        "},{"location":"tutorial/migrating-ontology-to-odk/","title":"Migrating your old Ontology Release System to the Ontology Development Kit","text":"

                        Content TBP, recording exists on request.

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/","title":"Neo4j tutorial","text":""},{"location":"tutorial/monarch-kg-neo4j-basics/#running-locally-your-very-own-monarch-graph","title":"Running locally (your very own Monarch Graph)","text":"

                        The new Monarch Knowledge Graph has a more streamlined focus on the core Monarch data model, centering on Diseases, Phenotypes and Genes and the associations between them. This has the benefit of being a graph that can be build in 2 hours instead of 2 days, and that you can run locally on your laptop.

                        Note: As of the writing of this tutorial, (Feb 2023), the graph is just starting to move from its initial construction phrase into real use, and so there are still bugs to find. Some of which show up in this tutorial.

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#check-out-the-repository","title":"Check out the repository","text":"

                        https://github.com/monarch-initiative/monarch-neo4j

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#download-data","title":"Download Data","text":"
                        • Download monarch.neo4j.dump from data.monarchinitiative.org and put in the dumps directory
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#set-up-the-environment-file","title":"Set up the environment file","text":"

                        copy dot_env_template to .env and edit the values to look like:

                        # This Environment Variable file is referenced by the docker-compose.yaml build\n\n# Set this variable to '1' to trigger an initial loading of a Neo4j dump\nDO_LOAD=1\n\n# Name of Neo4j dump file to load, assumed to be accessed from within\n# the 'dumps' internal Volume path within the Docker container\nNEO4J_DUMP_FILENAME=monarch-kg.neo4j.dump\n

                        That should mean uncommenting DO_LOAD and NEO4j_DUMP_FILENAME

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#optional-plugin-setup","title":"Optional Plugin Setup","text":"You may wish to install additional plugins

                        #### Download plugins * Download the [APOC plugin jar file](https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/4.4.0.13/apoc-4.4.0.13-all.jar) and put in the `plugins` directory * Download, the [GDS plugin](https://graphdatascience.ninja/neo4j-graph-data-science-2.3.0.zip), unzip the download and copy jar file to the `plugins` directory #### Environment setup In addition to the changes above to .env, you will need to uncomment the following lines in the .env file:

                        NEO4J_apoc_export_file_enabled=true\nNEO4J_apoc_import_file_enabled=true\nNEO4J_apoc_import_file_use__neo4j__config=true\nNEO4JLABS_PLUGINS=\\[\\\"apoc\\\", \\\"graph-data-science\\\"\\]\n

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#tutorials","title":"Tutorials","text":""},{"location":"tutorial/monarch-kg-neo4j-basics/#monarch-obo-training-tutorials","title":"Monarch OBO training Tutorials","text":""},{"location":"tutorial/monarch-kg-neo4j-basics/#querying-the-monarch-kg-using-neo4j","title":"Querying the Monarch KG using Neo4J","text":""},{"location":"tutorial/monarch-kg-neo4j-basics/#start-neo4j","title":"Start Neo4j","text":"

                        On the command line, from the root of the monarch-neo4j repository you can launch the neo4j with:

                        docker-compose up\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#querying","title":"Querying","text":""},{"location":"tutorial/monarch-kg-neo4j-basics/#return-details-for-a-single-disease","title":"Return details for a single disease","text":"

                        Nodes in a cypher query are expressed with () and the basic form of a query is MATCH (n) RETURN n. To limit the results to just our disease of interest, we can restrict by a property, in this case the id property.

                        MATCH (d {id: 'MONDO:0007038'}) RETURN d\n

                        This returns a single bubble, but by exploring the controls just to the left of the returned query, you can see a json or table representation of the returned node.

                        {\n\"identity\": 480388,\n\"labels\": [\n\"biolink:Disease\",\n\"biolink:NamedThing\"\n],\n\"properties\": {\n\"name\": \"Achoo syndrome\",\n\"provided_by\": [\n\"phenio_nodes\"\n],\n\"id\": \"MONDO:0007038\",\n\"category\": [\n\"biolink:Disease\"\n]\n},\n\"elementId\": \"480388\"\n}\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#connections-out-from-our-disease","title":"Connections out from our disease","text":"

                        Clicking back to the graph view, you can expand to see direct connections out from the node by clicking on the node and then clicking on the graph icon. This will return all nodes connected to the disease by a single edge.

                        Tip: the node images may not be labeled the way you expect. Clicking on the node reveals a panel on the right, clicking on that node label at the top of the panel will reveal a pop-up that lets you pick which property is used as the caption in the graph view.

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#querying-for-connections-out-from-our-disease","title":"Querying for connections out from our disease","text":"

                        In cypher, nodes are represented by () and edges are represented by [] in the form of ()-[]-(), and your query is a little chance to express yourself with ascii art. To get the same results as the expanded graph view, you can query for any edge connecting to any node. Note that the query also asks for the connected node to be returned.

                        MATCH (d {id: 'MONDO:0007038'})-[]-(n) RETURN d, n\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#expanding-out-further-and-restricting-the-relationship-direction","title":"Expanding out further and restricting the relationship direction","text":"

                        It's possible to add another edge to the query to expand out further. In this case, we're adding a second edge to the query, and restricting the direction of the second edge to be outgoing. This will return all nodes connected to the disease by a single edge, and then all nodes connected to those nodes by a single outgoing edge. It's important to note that without limiting the direction of the association, this query will traverse up, and then back down the subclass tree.

                        MATCH (d {id: 'MONDO:0007038'})-[]->(n)-[]->(m) RETURN d,n,m\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#exploring-the-graph-schema","title":"Exploring the graph schema","text":"

                        Sometimes, we don't know what kind of questions to ask without seeing the shape of the data. Neo4j provides a graph representation of the schema by calling a procedure

                        CALL db.schema.visualization\n

                        If you tug on nodes and zoom, you may find useful information, but it's not a practical way to explore the schema.

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#whats-connected-to-a-gene","title":"What's connected to a gene?","text":"

                        We can explore the kinds of connections available for a given category of node. Using property restriction again, but this time instead of restricting by the ID, we'll restrict by the category. Also, instead of returning nodes themselves, we'll return the categories of those nodes.

                        MATCH (g:`biolink:Gene`)-[]->(n) RETURN DISTINCT labels(n)\n

                        Tip: the DISTINCT keyword is used to remove duplicate results. In this case, we're only interested in the unique categories of nodes connected to genes.

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#also-how-is-it-connected","title":"Also, how is it connected?","text":"

                        Expanding on the query above, we can also return the type of relationship connecting the gene to the node.

                        MATCH (g:`biolink:Gene`)-[rel]->(n) RETURN DISTINCT type(rel), labels(n)\n

                        Which returns tabular data like:

                        \u2552\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2555\n\u2502\"type(rel)\"                                         \u2502\"labels(n)\"                                                \u2502\n\u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n\u2502\"biolink:located_in\"                                \u2502[\"biolink:NamedThing\",\"biolink:CellularComponent\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:part_of\"                                   \u2502[\"biolink:NamedThing\",\"biolink:MacromolecularComplexMixin\"]\u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_or_within\"                \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:enables\"                                   \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:actively_involved_in\"                      \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:colocalizes_with\"                          \u2502[\"biolink:NamedThing\",\"biolink:CellularComponent\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:active_in\"                                 \u2502[\"biolink:NamedThing\",\"biolink:CellularComponent\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_or_within\"                \u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:actively_involved_in\"                      \u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:contributes_to\"                            \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:orthologous_to\"                            \u2502[\"biolink:NamedThing\",\"biolink:Gene\"]                      \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:participates_in\"                           \u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:interacts_with\"                            \u2502[\"biolink:NamedThing\",\"biolink:Gene\"]                      \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:has_phenotype\"                             \u2502[\"biolink:NamedThing\",\"biolink:GeneticInheritance\"]        \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:has_phenotype\"                             \u2502[\"biolink:NamedThing\",\"biolink:PhenotypicQuality\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:risk_affected_by\"                          \u2502[\"biolink:NamedThing\",\"biolink:Disease\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:gene_associated_with_condition\"            \u2502[\"biolink:NamedThing\",\"biolink:Disease\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:has_phenotype\"                             \u2502[\"biolink:NamedThing\",\"biolink:ClinicalModifier\"]          \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_positive_effect\"          \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of\"                          \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:risk_affected_by\"                          \u2502[\"biolink:NamedThing\",\"biolink:Gene\"]                      \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:gene_associated_with_condition\"            \u2502[\"biolink:NamedThing\",\"biolink:Gene\"]                      \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_or_within_positive_effect\"\u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:has_mode_of_inheritance\"                   \u2502[\"biolink:NamedThing\",\"biolink:GeneticInheritance\"]        \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_negative_effect\"          \u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of\"                          \u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_positive_effect\"          \u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_or_within_negative_effect\"\u2502[\"biolink:NamedThing\",\"biolink:Occurrent\"]                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:has_phenotype\"                             \u2502[\"biolink:NamedThing\",\"biolink:PhenotypicFeature\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_or_within_negative_effect\"\u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_or_within_positive_effect\"\u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:expressed_in\"                              \u2502[\"biolink:NamedThing\",\"biolink:GrossAnatomicalStructure\"]  \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:expressed_in\"                              \u2502[\"biolink:NamedThing\",\"biolink:AnatomicalEntity\"]          \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:acts_upstream_of_negative_effect\"          \u2502[\"biolink:NamedThing\",\"biolink:Pathway\"]                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:expressed_in\"                              \u2502[\"biolink:NamedThing\",\"biolink:Cell\"]                      \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:located_in\"                                \u2502[\"biolink:NamedThing\",\"biolink:MacromolecularComplexMixin\"]\u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:expressed_in\"                              \u2502[\"biolink:NamedThing\",\"biolink:CellularComponent\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:expressed_in\"                              \u2502[\"biolink:NamedThing\",\"biolink:MacromolecularComplexMixin\"]\u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:part_of\"                                   \u2502[\"biolink:NamedThing\",\"biolink:CellularComponent\"]         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:expressed_in\"                              \u2502[\"biolink:NamedThing\"]                                     \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n

                        Note: the DISTINCT keyword will only remove duplicate results if the entire result is the same. In this case, we're interested in the unique combinations of relationship type and node category.

                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#kinds-of-associations-between-two-entity-types","title":"Kinds of associations between two entity types","text":"

                        Further constraining on the type of the connecting node, we can ask what kinds of associations exist between two entity types. For example, what kinds of associations exist between genes and diseases?

                        MATCH (g:`biolink:Gene`)-[rel]->(n:`biolink:Disease`) RETURN DISTINCT type(rel)\n
                        \u2552\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2555\n\u2502\"type(rel)\"                             \u2502\n\u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n\u2502\"biolink:gene_associated_with_condition\"\u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:risk_affected_by\"              \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#diseases-associated-with-a-gene","title":"Diseases associated with a gene","text":"
                        MATCH (g:`biolink:Gene`{id:\"HGNC:1100\"})-[]-(d:`biolink:Disease`) RETURN g,d\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#phenotypes-associated-with-diseases-associated-with-a-gene","title":"Phenotypes associated with diseases associated with a gene","text":"
                        MATCH (g:`biolink:Gene`{id:\"HGNC:1100\"})-[]->(d:`biolink:Disease`)-[]->(p:`biolink:PhenotypicFeature`) RETURN g,d,p\n

                        Why doesn't this return results? This is a great opportunity to track down an unexpected problem.

                        First, try a less constrained query, so that the 3rd node can be anything:

                        MATCH (g:`biolink:Gene`{id:\"HGNC:1100\"})-[]->(d:`biolink:Disease`)-[]->(p) RETURN g,d,p\n

                        With a little tugging and stretching, a good picture emerges, and by clicking our phenotype bubbles, they look like they're showing as PhenotypicQuality rather than PhenotypicFeature. This is likely a bug, but a sensible alternative for this same intent might be:

                        MATCH (g:`biolink:Gene`{id:\"HGNC:1100\"})-[]->(d:`biolink:Disease`)-[:`biolink:has_phenotype`]->(p) RETURN g,d,p\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#recursive-traversal","title":"Recursive traversal","text":"

                        Sometimes, we don't know the specific number of hops. What if we want to answer the question \"What genes affect the risk for an inherited auditory system disease?\"

                        First, lets find out how are diseases connected to one another. Name the relationship to query for just the predicates.

                        MATCH (d:`biolink:Disease`)-[rel]-(d2:`biolink:Disease`) RETURN DISTINCT type(rel)\n

                        \u2552\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2555\n\u2502\"type(rel)\"                             \u2502\n\u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n\u2502\"biolink:subclass_of\"                   \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:related_to\"                    \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:associated_with\"               \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:has_phenotype\"                 \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:gene_associated_with_condition\"\u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:risk_affected_by\"              \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n

                        (* Please ignore biolink:gene_associated_with_condition and biolink:risk_affected_by showing up here, those are due to a bug in our OMIM ingest)

                        We'll construct a query that fixes the super class disease, then connects at any distance to any subclass of that disease, and then brings genes that affect risk for those diseases. To avoid a big hairball graph being returned, we can return the results as a table showing the diseases and genes.

                        MATCH (d:`biolink:Disease`{id:\"MONDO:0002409\"})<-[:`biolink:subclass_of`*]-(d2:`biolink:Disease`)<-[`biolink:risk_affected_by`]-(g:`biolink:Gene`) RETURN d.id, d.name, d2.id, d2.name,g.symbol,g.id\n

                        once you trust the query, you can also use the DISTINCT keyword again focus in on just the gene list

                        MATCH (d:`biolink:Disease`{id:\"MONDO:0002409\"})<-[:`biolink:subclass_of`*]-(d2:`biolink:Disease`)<-[`biolink:risk_affected_by`]-(g:`biolink:Gene`) RETURN DISTINCT g.id\n
                        "},{"location":"tutorial/monarch-kg-neo4j-basics/#gene-to-gene-associations","title":"Gene to Gene Associations","text":"

                        First, we can ask what kind of associations we have between genes.

                        MATCH (g:`biolink:Gene`)-[rel]->(g2:`biolink:Gene`) RETURN DISTINCT type(rel)\n
                        \u2552\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2555\n\u2502\"type(rel)\"                             \u2502\n\u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n\u2502\"biolink:orthologous_to\"                \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:interacts_with\"                \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:risk_affected_by\"              \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"biolink:gene_associated_with_condition\"\u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n

                        Again, please ignore biolink:gene_associated_with_condition and biolink:risk_affected_by.

                        Let's say that from the list above, we're super interested in the DIABLO gene, because, obviously, it has a cool name. We can find it's orthologues by querying through the biolink:orthologous_to relationship.

                        MATCH (g {id:\"HGNC:21528\"})-[:`biolink:orthologous_to`]-(o:`biolink:Gene`) RETURN g,o 

                        We can then make the question more interesting, by finding phenotypes associated with these orthologues.

                        MATCH (g {id:\"HGNC:21528\"})-[:`biolink:orthologous_to`]-(og:`biolink:Gene`)-[:`biolink:has_phenotype`]->(p) RETURN g,og,p\n

                        That was a dead end. What about gene expression?

                        MATCH (g {id:\"HGNC:21528\"})-[:`biolink:orthologous_to`]-(og:`biolink:Gene`)-[:`biolink:expressed_in`]->(a) RETURN g,og,a\n

                        We can add this one step further by connecting our gene expression list in UBERON terms

                        MATCH (g {id:\"HGNC:21528\"})-[:`biolink:orthologous_to`]-(og:`biolink:Gene`)-[:`biolink:expressed_in`]->(a)-[`biolink:subclass_of`]-(u) WHERE u.id STARTS WITH 'UBERON:'\nRETURN distinct u.id, u.name\n

                        In particular, it's a nice confirmation to see that we started at the high level MONDO term \"inherited auditory system disease\", passed through subclass relationships to more specific diseases, connected to genes that affect risk for those diseases, focused on a single gene, and were able to find that it is expressed in the cochlea.

                        \u2552\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2555\n\u2502\"u.id\"          \u2502\"u.name\"                        \u2502\n\u255e\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n\u2502\"UBERON:0000044\"\u2502\"dorsal root ganglion\"          \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0000151\"\u2502\"pectoral fin\"                  \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0000948\"\u2502\"heart\"                         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0000961\"\u2502\"thoracic ganglion\"             \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001017\"\u2502\"central nervous system\"        \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001555\"\u2502\"digestive tract\"               \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001675\"\u2502\"trigeminal ganglion\"           \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001700\"\u2502\"geniculate ganglion\"           \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001701\"\u2502\"glossopharyngeal ganglion\"     \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001844\"\u2502\"cochlea\"                       \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001991\"\u2502\"cervical ganglion\"             \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0002107\"\u2502\"liver\"                         \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0002441\"\u2502\"cervicothoracic ganglion\"      \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0003060\"\u2502\"pronephric duct\"               \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0003922\"\u2502\"pancreatic epithelial bud\"     \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0004141\"\u2502\"heart tube\"                    \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0004291\"\u2502\"heart rudiment\"                \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0005426\"\u2502\"lens vesicle\"                  \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0007269\"\u2502\"pectoral appendage musculature\"\u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0019249\"\u2502\"2-cell stage embryo\"           \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0000965\"\u2502\"lens of camera-type eye\"       \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0001645\"\u2502\"trigeminal nerve\"              \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502\"UBERON:0003082\"\u2502\"myotome\"                       \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n
                        "},{"location":"tutorial/odk-toolbox/","title":"Using the ODK Toolbox","text":"

                        This tutorial will show you how to use the tools that are made available by the ODK Docker images, independently of an ODK-generated repository and of ODK-managed workflows.

                        "},{"location":"tutorial/odk-toolbox/#prerequisites","title":"Prerequisites","text":"

                        You have:

                        • Docker installed and running on your machine.

                        You know:

                        • how to use a command line interface (e.g., run commands and navigate through a filesystem from a terminal prompt).
                        "},{"location":"tutorial/odk-toolbox/#managing-docker-images","title":"Managing Docker images","text":"

                        Let\u2019s check which Docker images, if any, are available in your Docker installation:

                        $ docker images\nREPOSITORY            TAG       IMAGE ID       CREATED        SIZE\n

                        Here, the listing comes up empty, meaning there are no images at all. This is what you would expect if you have just installed Docker and have yet to do anything with it.

                        Let\u2019s download the main ODK image:

                        $ docker pull obolibrary/odkfull\nUsing default tag: latest\nlatest: Pulling from obolibrary/odkfull\n[\u2026 Output truncated for brevity \u2026]\nDigest: sha256:272d3f788c18bc98647627f9e6ac7311ade22f35f0d4cd48280587c15843beee\nStatus: Downloaded newer image for obolibrary/odkfull:latest\ndocker.io/obolibrary/odkfull:latest\n

                        Let\u2019s see the images list again:

                        $ docker images\nREPOSITORY           TAG       IMAGE ID       CREATED        SIZE\nobolibrary/odkfull   latest    0947360954dc   6 months ago   2.81GB\n

                        Docker images can exist in several versions, which are called tags in Docker parlance. In our pull command, since we have not specified any tag, Docker had automatically defaulted to the latest tag, which by convention is the latest ODK release.

                        To download a specific version, append the tag after the image name (you can check which tags are available on DockerHub). For example, let\u2019s download the 1.3.1 release from June 2022:

                        $ docker pull obolibrary/odkfull:v1.3.1\nv1.3.1: Pulling from obolibrary/odkfull\nDigest: sha256:272d3f788c18bc98647627f9e6ac7311ade22f35f0d4cd48280587c15843beee\nStatus: Downloaded newer image for obolibrary/odkfull:v1.3.1\ndocker.io/obolibrary/odkfull:v1.3.1\n

                        Again, let\u2019s see the output of docker images:

                        $ docker images\nREPOSITORY           TAG       IMAGE ID       CREATED        SIZE\nobolibrary/odkfull   latest    0947360954dc   6 months ago   2.81GB\nobolibrary/odkfull   v1.3.1    0947360954dc   6 months ago   2.81GB\n

                        Note how both the latest and the v1.3.1 images have the same ID. This is because, at the time of this writing, the 1.3.1 release is the latest ODK release, so the latest tag actually points to the same image as the v1.3.1 tag. This will change when the ODK v1.3.2 is released: then, using latest (explicitly or by not specifying any tag at all) will point to the new release, while v1.3.1 will forever continue to point to the June 2022 release.

                        In the rest of this tutorial, we will always use the latest image, and so we will dispense with the explicit tag. But remember that anywhere you see obolibrary/odkfull in one of the commands below, you can always use obolibrary/odkfull:TAG to force Docker to use a specific ODK version.

                        "},{"location":"tutorial/odk-toolbox/#starting-a-container","title":"Starting a container","text":"

                        Now that we have the ODK image available, let\u2019s try to start it. The command for that is docker run, which has the following syntax:

                        docker run [OPTIONS] <IMAGE> [COMMAND [ARGUMENTS...]]\n

                        where IMAGE is the name of the image to use (in our case, always obolibrary/odkfull).

                        With the ODK, you will always need the --rm option. It instructs the Docker engine to automatically remove the container it creates to run a command, once that command terminates. (Not using the --rm option would lead to those \u201cspent\u201d containers to accumulate on your system, ultimately forcing you to manually remove them with the docker container rm command.)

                        If we don\u2019t specify an explicit command, the simplest command line we can have is thus:

                        $ docker run --rm obolibrary/odkfull\nUsage: odk.py [OPTIONS] COMMAND [ARGS]...\n\nOptions:\n  --help  Show this message and exit.\n\nCommands:\n  create-dynfile   For testing purposes\n  create-makefile  For testing purposes\n  dump-schema      Dumps the python schema as json schema.\n  export-project   For testing purposes\n  seed             Seeds an ontology project\n$\n

                        In the absence of an explicit command, the default command odk.py is automatically invoked by Docker. Since it has been invoked without any argument, odk.py does nothing but printing its \u201cusage\u201d message before terminating. When it terminates, the Docker container terminates as well, and we are back at the terminal prompt.

                        To invoke one of the tools available in the toolbox (we\u2019ll see what those tools are later in this document), just complete the command line as needed. For example, to test that ROBOT is there (and to see which version we have):

                        $ docker run --rm obolibrary/odkfull robot --version\nROBOT version 1.9.0\n
                        "},{"location":"tutorial/odk-toolbox/#accessing-your-files-from-within-the-container","title":"Accessing your files from within the container","text":"

                        Since we have ROBOT, let\u2019s use it. Move to a directory containing some ontology files (here, I\u2019ll use a file from the Drosophila Anatomy Ontology, because if you have to pick an ontology, why not picking an ontology that describes the One True Model Organism?).

                        $ ls\nfbbt.obo\n

                        We want to convert that OBO file to a file in, say, the OWL Functional Syntax. So we call ROBOT with the appropriate command and options:

                        $ docker run ---rm obolibrary/odkfull robot convert -i fbbt.obo -f ofn -o fbbt.ofn\norg.semanticweb.owlapi.io.OWLOntologyInputSourceException: java.io.FileNotFoundException: fbbt.obo (No such file or directory)\nUse the -vvv option to show the stack trace.\nUse the --help option to see usage information.\n

                        Huh? Why the \u201cNo such file or directory\u201d error? We just checked that fbbt.obo is present in the current directory, why can\u2019t ROBOT find it?

                        Because Docker containers run isolated from the rest of the system \u2013 that\u2019s kind of the entire point of such containers in general! From within a container, programs can, by default, only access files from the image from which the container has been started.

                        For the ODK Toolbox to be at all useful, we need to explicitly allow the container to access some parts of our machine. This is done with the -v option, as in the following example:

                        $ docker run --rm -v /home/alice/fbbt:/work [\u2026rest of the command omitted for now\u2026]\n

                        This -v /home/alice/fbbt:/work has the effect of binding the directory /home/alice/fbbt from our machine to the directory /work inside the container. This means that if a program that runs within the container tries to have a look at the /work directory, what this program will actually see is the contents of the /home/alice/fbbt directory. Figuratively, the -v option opens a window in the container\u2019s wall, allowing to see parts of what\u2019s outside from within the container.

                        With that window, and assuming our fbbt.obo file is within the /home/alice/fbbt directory, we can try again invoking the conversion command:

                        $ docker run --rm -v /home/alice/fbbt:/work obolibrary/odkfull robot convert -i /work/fbbt.obo -f ofn -o /work/fbbt.ofn\n$ ls\nfbbt.obo\nfbbt.ofn\n

                        This time, ROBOT was able to find out fbbt.obo file, and to convert it as we asked.

                        We can slightly simplify the last command line in two ways.

                        First, instead of explicitly specifying the full pathname to the current directory (/home/alice/fbbt), we can use the shell variable $PWD, which is automatically expanded to that pathname: -v $PWD:/work.

                        Second, to avoid having to explicitly refer to the /work directory in the command, we can ask the Docker engine to run our command as if the current directory, within the container, was already /work. This is done with the -w /work option.

                        The command above now becomes:

                        $ docker run --rm -v $PWD:/work -w /work obolibrary/odkfull robot convert -i fbbt.obo -f ofn -o fbbt.ofn\n

                        This is the typical method of invoking a tool from the ODK Toolbox to work on files from the current directory.

                        In fact, this is exactly how the src/ontology/run.sh wrapper script, that is automatically created in an ODK-generated repository, works. If you work with an ODK-managed ontology, you can invoke an arbitrary ODK tool by using the run.sh instead of calling docker run yourself. Assuming for example that you already are in the src/ontology directory of an ODK-managed ontology, you could use:

                        ./run.sh robot convert -i fbbt.obo -f ofn -o fbbt.ofn\n

                        If you want to use the ODK toolbox with ontologies that are not managed by the ODK (so, where a run.sh script is not readily available), you can set up an independent wrapper script, as explained in the Setting up the ODK tutorial.

                        "},{"location":"tutorial/odk-toolbox/#running-a-shell-session-within-the-container","title":"Running a shell session within the container","text":"

                        If you have several commands to invoke in a row involving files from the same directory, you do not have to repeatedly invoke docker run once for each command. Instead, you can invoke a shell, from which you will be able to run successively as many commands as you need:

                        $ docker run --rm -ti -v $PWD:/work -w /work obolibrary/odkfull bash\nroot@c1c2c80c491b:/work# 

                        The -ti options allow to use your current terminal to control the shell that is started within the container. This is confirmed by the modified prompt that you can see above, which indicates that you are now \u201cin\u201d the container. You can now directly use all the tools that you need:

                        root@c1c2c80c491b:/work# robot convert -i fbbt.obo -f owx -o fbbt.owl\nroot@c1c2c80c491b:/work# Konclude consistency -i fbbt.owl\n{info} 18:21:14.543 >> Starting Konclude \u2026\n[\u2026]\n{info} 18:21:16.949 >> Ontology \u2018out.owl\u2019 is consistent.\nroot@c1c2c80c491b:/work#\n

                        When you are done, exit the shell by hitting Ctrl-D or with the exit command. The shell will terminate, and with it, the container will terminate as well, sending you back to your original terminal.

                        "},{"location":"tutorial/odk-toolbox/#whats-in-the-toolbox-actually","title":"What\u2019s in the toolbox, actually?","text":"

                        Now that you know how to invoke any tool from the ODK Toolbox, here\u2019s a quick overview of which tools are available.

                        For a definitive list, the authoritative source is the ODK repository, especially the Dockerfile and requirements.txt.full files. And if you miss a tool that you think should be present in the toolbox, don\u2019t hesitate to open a ticket to suggest that the tool be added in a future ODK release!

                        "},{"location":"tutorial/odk-toolbox/#programming-language-and-associated-tools","title":"Programming language and associated tools","text":"
                        • Java Development Kit, Maven
                        • Ammonite (Scala scripting engine)
                        • Python3
                        • NodeJS
                        "},{"location":"tutorial/odk-toolbox/#ontology-manipulation-tools","title":"Ontology manipulation tools","text":"
                        • ROBOT
                        • OWLTools
                        • Ontology Access Kit
                        • Fastobo
                        • DOSDPTools
                        "},{"location":"tutorial/odk-toolbox/#other-semantic-tools","title":"Other semantic tools","text":"
                        • Apache Jena
                        • Souffl\u00e9
                        • Konclude
                        • Sssom-py
                        • SPARQLProg
                        "},{"location":"tutorial/odk-tutorial-2/","title":"ODK in 20 minutes: a complete walk through the core workflows","text":"

                        The goal of this tutorial is to quickly showcase key ODK workflows. It is not geared at explaining individual steps in detail. For a much more detailed tutorial for creating a fresh ODK repo, see here for a tutorial for setting up your first workflow. We recommend to complete this tutorial before attempting this one.

                        "},{"location":"tutorial/odk-tutorial-2/#tutorial","title":"Tutorial","text":"
                        1. Background
                        2. Seeding a new ontology repo
                        3. Import workflow
                        4. Integration Testing
                        5. Release workflow
                        6. Customisable documentation
                        "},{"location":"tutorial/odk-tutorial-2/#background","title":"Background","text":"

                        This is some useful background from the ICBO 2022 OBO Tutorial:

                        "},{"location":"tutorial/odk-tutorial-2/#seeding","title":"Seeding","text":"
                        1. Create a new folder.
                        2. Download an example ODK config or create one yourself. Save it in the directory created above.
                        3. Important: in the cato-odk.yaml change github_org to your GitHub username. If you dont do this, some ODK features wont work perfectly, like documentation.
                          github_org: matentzn\nrepo: cat-ontology\n
                        4. Run the ODK seeding script.
                          curl https://raw.githubusercontent.com/INCATools/ontology-development-kit/v1.3.1/seed-via-docker.sh | bash -s --  --clean -C cato-odk.yaml\n
                        5. Push the newly created repo to GitHub (for example with GitHub Desktop).
                        "},{"location":"tutorial/odk-tutorial-2/#the-import-workflow","title":"The import workflow","text":"

                        Let us now import planned process:

                        1. Open the term file src/ontology/imports/cob_terms.txt in your favourite text editor
                        2. Add COB:0000082 to the term file (this is the planned process class in COB).
                        3. From within the src/ontology directory, run sh run.sh make refresh-cob.
                        4. Inspect the diff. Rather than importing just one term, it seems that we have important a whole bunch. This is because by default, ODK is using the SLME module extraction technique, which ensures that not only the terms we explicitly request are imported - but all the logically dependent ones as well.
                        5. In src/ontology/cato-odk.yaml, locate the entry for importing cob and switch it to a different module type: filter.
                          import_group:\n  products: \n    - id: ro\n    - id: cob\n      module_type: filter\n
                        6. Run sh run.sh make update_repo to apply the changes. Check out the git diff to the Makefile to convince yourself that the new extraction method has been applied.
                        7. Let us refresh the COB import again: From within the src/ontology directory, run sh run.sh make refresh-cob. Convince yourself that now only the planned process term is imported.

                        "},{"location":"tutorial/odk-tutorial-2/#integration-testing","title":"Integration Testing","text":"
                        1. Switch to a new git branch and commit your changes to Makefile, cato-odk.yaml, imports/cob_terms.txt and imports/cob_import.owl.
                        2. Push the branch and create a Pull Request.
                        3. After a few seconds, the automated testing should start: Feel free to click on details to see what is happening!
                        4. Once the test passes (turns green) the PR is ready to be reviewed. Since this tutorial is for illustration purposes only, we just merge.
                        "},{"location":"tutorial/odk-tutorial-2/#the-release-workflow","title":"The release workflow","text":"

                        Great, we have done our change, now we are ready to make a release!

                        1. Switch to the main branch in git.
                        2. Make sure you you pull all changes (git pull).
                        3. In src/ontology execute the release workflow: sh run.sh make prepare_release_fast (we are using fast release here which skips refreshing imports again - we just did that).
                        4. Inspect the changes. You should see that the planned process class has been added to all ontology release artefacts.
                        5. Create a branch and commit the changes. Push. Create pull request. Request review (skipped in this tutorial). Wait for QC to pass. Merge.
                        6. On GitHub (repository front page), click on \"Create a new release\".
                        7. In the next Window in the \"Choose a tag\" field select v2022-09-01. Note the leading v. Select the correct date (the date you made the release, YYYY-MM-dd). Fill in all the other form elements as you see fit. Click Publish release.

                        "},{"location":"tutorial/odk-tutorial-2/#customisable-documentation","title":"Customisable documentation","text":"

                        With our ODK setup, we also have a completely customisable documentation system installed. We just need to do a tiny change to the GitHub pages settings:

                        1. On your GitHub repo page, click on \"Settings\".
                        2. In the menu on the left, click on \"Pages\".
                        3. On the right, under Build and deployment select Deploy from branch.
                        4. Underneath, select gg-pages as the branch (this is where ODK deploys to), and /(root) as the directory.
                        5. Hit Save.
                        6. Wait for about 4 minutes for the site to be deployed (you can click on Actions in the main menu to follow the build process).
                        7. Go back to the Pages section in Settings. You should see a button Visit site. Click on it. If everything went correctly, you should see your new page:
                        8. Let's make a quick change: On the main page, click on the pen in the top right corner (this only works if you have correctly configured your github_org, see seeding). If you have not configured your repo, go to the GitHub front page of your repo, go into the docs directory, click on index.md and edit it from here. Make a small random edit.
                        9. Commit the change straight to main or do it properly, create a branch, PR, ask for reviews, merge.
                        10. After the ODK updates your site, you should be able to see your changes reflected on the life site!
                        "},{"location":"tutorial/odk-tutorial-2/#summary","title":"Summary","text":"

                        That's it! In about 20 minutes, we

                        1. Seeded a new ontology repo.
                        2. Imported a term.
                        3. Made a pull request and watched the ODK Testing framework at work.
                        4. Ran a release.
                        5. Deployed customisable documentation pages to help our users and curators documenting processes and use instructions.
                        "},{"location":"tutorial/ontogpt/","title":"Using OntoGPT to boost ontology curation","text":"
                        • Tool: https://github.com/monarch-initiative/ontogpt
                        • Preprint: https://arxiv.org/abs/2304.02711
                        "},{"location":"tutorial/project-ontology-development/","title":"Project Ontology Development","text":""},{"location":"tutorial/project-ontology-development/#summary","title":"Summary","text":"

                        A project ontology, sometimes and controversially referred to as an application ontology, is an ontology which is composed of other ontologies for a particular use case, such as Natural Language Processing applications, Semantic Search and Knowledge Graph integration. A defining feature of a project ontology is that it is not intended to be used as a domain ontology. Concretely, this means that content from project ontologies (such as terms or axioms) is not to be re-used by domain ontologies (under no circumstances). Project ontology developers have the freedom to slice & dice, delete and add relationships, change labels etc as their use case demands it. Usually, such processing is minimal, and in a well developed environment such as OBO, new project ontology-specific terms are usually kept at a minimum.

                        In this tutorial, we discuss the fundamental building blocks of application ontologies and show you how to build one using the Ontology Development Kit as one of several options.

                        "},{"location":"tutorial/project-ontology-development/#prerequisites","title":"Prerequisites","text":"
                        • A basic understanding of Ontology Pipelines using ROBOT is helpful to follow this tutorial.
                        "},{"location":"tutorial/project-ontology-development/#learning-objectives","title":"Learning objectives","text":"
                        • Understand how to plan a project ontology project independent of any particular methodology
                        • Develop an application ontology using the Ontology Development Kit (ODK)
                        • Be aware off pitfalls when dealing with very large application ontologies
                        "},{"location":"tutorial/project-ontology-development/#table-of-contents","title":"Table of Contents","text":"
                        • Why do we need project ontologies?
                        • Overview
                        • The three \"ingredients\" of project ontologies
                        • The five \"phases\" of project ontology development
                        "},{"location":"tutorial/project-ontology-development/#why-do-we-need-project-ontologies","title":"Why do we need project ontologies?","text":"

                        There are a few reasons for developing project ontologies. Here are two that are popular in our domain:

                        • Semantic integration. You have curated a lot of data using standard ontologies and now you wish to access this data using the \"semantic fabric\" provided by the ontology. Concrete examples:
                        • Adding a \"semantic layer to your knowledge graph\". For example, your data is annotated using specific anatomy terms, and you wish to query your knowledge graph through anatomical groupings, such as \"anatomical entities that are part of the cardio-vascular system\".
                        • Offering \"semantic search\". For example, you may want to restrict a certain search widget to \"diseases\" only, or try to figure out whether a user is searching for phenotypes associated with diseases. A concrete example is populating a Solr or elastic-search index using not only the labels and synonyms of an ontology, but also their relationships. Try it: https://platform.opentargets.org/, https://monarchinitiative.org/.
                        • Example ontologies:
                          • https://github.com/monarch-initiative/phenio
                          • https://github.com/EBISPOT/efo
                          • https://github.com/EBISPOT/scatlas_ontology
                        • Natural language processing (NLP). You are developing an NLP application such as an annotator for text. Here, you may like to use ontologies to tag specific phrases in your documents, like those related to COVID. Ontologies in these cases serve essentially as more or less sophisticated dictionaries. But there are some more sophisticated uses of ontologies for NER.
                        • Example ontologies:
                          • https://github.com/berkeleybop/bero
                          • https://github.com/EBISPOT/covoc
                        • Mapping work. When developing mappings across ontologies and terminologies, it is often useful to have access to all of them at once. This helps to explore the consequences of mapping decisions, as well providing a single interface for ontology matching tools which usually operate on single ontologies. Advanced Machine Learning based approaches are used to generate graph embeddings on such merged ontologies. Example ontologies:
                        • https://github.com/monarch-initiative/mondo-ingest

                        "},{"location":"tutorial/project-ontology-development/#basic-architecture","title":"Basic architecture","text":""},{"location":"tutorial/project-ontology-development/#three-ingredients-of-project-ontologies","title":"Three \"ingredients\" of project ontologies","text":"

                        Any application ontology will be concerned with at least 3 ingredients:

                        • The seed. This is a the set of terms you wish to import into your application ontology. The seed can take many forms:
                        • a simple list of terms, e.g. MONDO:123, MONDO:231
                        • a list of terms including additional relational selectors, e.g. MONDO:123, incl. all children
                        • a list of terms including a logical selector, MONDO:123, incl. all terms that are in some way logically related to MONDO:123
                        • a general selector, like \"all classes\" or simply \"everything\".
                        • There are probably more, but these are the main ones we work with in the context of biomedical application ontologies.
                        • The source ontologies, often referred to as \"mirrors\" (at least by those working with ODK). These are the full ontologies which we want to use in our application ontology. For example, we may want to include anatomical entities from the Uberon ontology into our application ontology. These are usually downloaded from the internet into the application ontology workspace, and then processed by the application ontology extraction workflow (see later).
                        • Additional ontology metadata and customisations, such as axioms used to connect entities (classes) across your source ontologies to fulfil a use case, but also your regular ontology metadata (title, comments, etc).

                        "},{"location":"tutorial/project-ontology-development/#the-five-phases-of-project-ontology-development","title":"The five \"phases\" of project ontology development","text":"

                        There are five phases on project ontology development which we will discuss in detail in this section:

                        • Managing the seed
                        • Extracting modules
                        • Managing metadata and customisations
                        • Merging and post-processing
                        • Validation

                        There are other concerns, like continuous integration (basically making sure that changes to the seed or project ontology pipelines do not break anything) and release workflows which are not different from any other ontology.

                        "},{"location":"tutorial/project-ontology-development/#managing-the-seed","title":"Managing the seed","text":"

                        As described above, the seed is the set of terms that should be extracted from the source ontologies into the project ontology. The seed comprises any of the following:

                        • terms, such as MONDO:0000001
                        • selectors, such as all, children, descendants, ancestors, annotations
                        • combinations of the two (a term with all its children)

                        Users of ODK will be mostly familiar with term files located in the imports directory, such as src/ontology/imports/go_terms.txt. Selectors are usually hidden from the user by the ODK build system, but they are much more important now when building project ontologies.

                        Regardless of which system you use to build your project ontology, it makes sense to carefully plan your seed management. In the following, we will discuss some examples:

                        1. Using annotated data. For the Single Cell Atlas Ontology (SCAO) we already have a spreadsheet with the raw data, annotated with the ontology terms we wish to import. We only want to import these exact terms. Our strategy therefore is to extract the ontology terms from table and use these as our seed.
                        2. User requests. For the Experimental Factor Ontology (EFO), we rely on user requests. Curators provide us with individual term requests, or lists of terms they need for curating their data. We usually include these terms along with their parents to maintain rich hierarchies.
                        3. Use case specific considerations. For the Phenomics Integrated Ontology (PHENIO) we wish to combine all disease, phenotype and anatomy terms together and furthermore pull in related chemicals and biological processes (and more).

                        It makes sense to document your seed management plan. You should usually account for the possibility of changes (terms being added or removed) during the design phase.

                        "},{"location":"tutorial/project-ontology-development/#extracting-modules","title":"Extracting modules","text":"

                        Module extraction is the process for selecting an appropriate subset from an ontology. There are many ways to extracting subsets from an ontology:

                        1. Using logical modules (SLME, pronounced 'slime'): this will allow you to extract not only all the terms in your seed, but furthermore all logical axioms that could theoretically impact reasoning. SLME modules are typically much larger than what you would expect from a 'relevant' subset.
                        2. Using ROBOT filter, a system to first select entities in your seed, then selectively including or excluding descendants, annotations.
                        3. Using MIREOT, a technique that will extract terms and their subClass relationships, without any attempt to include other kinds of axioms.

                        You can consult the ROBOT documentation for some details on module extraction.

                        Let's be honest - none of these module extraction techniques are really ideal for project ontologies. SLME modules are typically used for domain ontology development to ensure logical consistency with imported ontologies, but otherwise contain too much information (for most project ontology use cases). ROBOT filter has a hard time with dealing with closures of existential restrictions: for example you cant be sure that, if you import \"endocardial endothelium\" and \"heart\" using filter, that the one former is still part of the latter (it is only indirectly a part) - a lot of research and work has being going on to make this easier. The next version of ROBOT (1.8.5) is going to contain a new module extraction command which will ensure that such links are not broken.

                        One of the design confusions in this part of the process is that most use cases of application ontologies really do not care at all about OWL. Remember, OWL really only matters for the design of domain ontologies, to ensure a consistent representation of the domain and enable reasoning-based classification. So it is, at least slightly, unsatisfactory that we have to use OWL tools to do something that may as well be done by something simpler, more akin to \"graph-walking\".

                        "},{"location":"tutorial/project-ontology-development/#managing-metadata-and-customisations","title":"Managing metadata and customisations","text":"

                        Just like any other ontology, a project ontology should be well annotated according to the standards of FAIR Semantics, for example using the OBO Foundry conventions. In particular, project ontologies should be

                        • annotated with a title, a license, a description
                        • versioned and annotated with versionIRIs
                        • get associated with some PURL system (OBO Foundry often wont accept such ontologies, but other free options like https://w3id.org/ exist)

                        Furthermore, it is often necessary to add additional terms to the ontology which are not covered by other upstream ontologies. Here we need to distinguish two cases:

                        • The need to quickly add terms that belong somewhere else
                        • Adding terms that have no obvious home in any of your declared source ontologies.

                        With our OBO hat on, if you start adding terms \"quickly\", you should develop a procedure to get these terms into suitable upstream ontologies at a later stage. This is not so much a necessity as a matter of \"open data ethics\": if you use other people's work to make your life easier, its good to give back!

                        Lastly, our use cases sometimes require us to add additional links between the terms in our ontologies. For example, we may have to add subClassOf links between classes of different ontologies that cover the same domain. Or we want to add additional information. As with \"quickly adding terms\", if the information is generally useful, you should consider to add them to the respective upstream source ontology (synonyms of disease terms from Mondo, for example). We often manage such axioms as ROBOT templates and curate them as simple to read tables.

                        "},{"location":"tutorial/project-ontology-development/#merging-and-post-processing","title":"Merging and post-processing","text":"

                        Just like with most ontologies, the last part of the process is merging the various pieces (modules from external sources, customisations, metadata) together into a single whole. During this phase a few things can happen, but these are the most common ones:

                        • Merging: All separate parts are merged into one file.
                        • Restructure: Sometimes, we run additional processes to update the structure of the final ontology. One common post-processing step is to remove obsolete classes that may have come in during the extraction phase, add additional links between classes using approaches such as relation graph or prune away unsatisfiability-causing axioms such as disjointness axioms and negation. The latter is sometimes necessary when terms from multiple logically incompatible ontologies are imported.
                        • Annotate version information: owl:versionInfo and versionIRI annotations are added to the merged ontology.
                        "},{"location":"tutorial/project-ontology-development/#validation","title":"Validation","text":"

                        One thing to remember is that you are not building a domain ontology. You are usually not concerned with typical issues in ontology engineering, such as logical consistency (or coherence, i.e. the absence of unsatisfiable classes). The key for validating an application ontology comes from its intended use case: Can the ontology deliver the use case it promised? There are many approaches to ensure that, chief among them competency questions. What we usually do is try to express competency questions as SPARQL queries, and ensure that there is at least one result. For example, for one of the project ontologies the author is involved with (CPONT), we have developed a synthetic data generator, which we combine with the ontology to ask questions such as: \"Give me all patients which has a recorded diagnosis of scoliosis\" (SPARQL). So the ontology does a \"good job\" if it is able to return, say, at least 100 patients in our synthetic data for which we know that they are diagnoses with scoliosis or one of its subtypes.

                        "},{"location":"tutorial/project-ontology-development/#frameworks-for-building-project-ontologies","title":"Frameworks for building project ontologies","text":"

                        The perfect framework for building project ontologies does not exist yet. The Ontology Development Kit (ODK) has all the tools you need set up a basic application ontology, but the absence of a \"perfect\" module extraction algorithm for this use case is still unsatisfactory. However, for many use cases, filter modules like the ones described above are actually good enough. Here we will go through a simple example.

                        An alternative framework for application ontology development based on a Web User Interface and tables for managing the seed is developed by James Overton at (ontodev).

                        Another potential alternative is to go all the way to graph-land and build the application ontology with KGX and LinkML. See here for an example. Creating a project ontology this way feels more like a Knowledge Graph ETL task than building an ontology!

                        "},{"location":"tutorial/project-ontology-development/#example-application-ontology-with-odk","title":"Example application ontology with ODK","text":"

                        Set up a basic ODK ontology. We are not covering this again in this tutorial, please refer to the tutorial on setting up your ODK repo.

                        "},{"location":"tutorial/project-ontology-development/#dealing-with-large-imports","title":"Dealing with large imports","text":"

                        Many of the larger imports in application ontologies do not fit into the normal GitHub file size limit. In this cases it is better to attach them to a GitHub release rather than to check them into version control.

                        TBD

                        "},{"location":"tutorial/project-ontology-development/#additional-materials-and-resources","title":"Additional materials and resources","text":"
                        • TBD
                        "},{"location":"tutorial/project-ontology-development/#contributors","title":"Contributors","text":"
                        • Nicolas Matentzoglu
                        "},{"location":"tutorial/pull-requests/","title":"Pull Requests","text":""},{"location":"tutorial/pull-requests/#prerequisites","title":"Prerequisites","text":"

                        Participants will need to have access to the following resources and tools prior to the training:

                        • GitHub account - register for a free GitHub account here
                        • Install GitHub Desktop Please make sure you have some kind of git client installed on your machine. If you are new to Git, please install GitHub Desktop
                        • Protege - Install Protege 5.5, download it here
                        "},{"location":"tutorial/pull-requests/#preparation-optional","title":"Preparation (optional)","text":"
                        • Review tutorial on Contributing to Ontologies
                        • See 'How to' guide on Pull Requests
                        "},{"location":"tutorial/pull-requests/#what-is-delivered-as-part-of-the-course","title":"What is delivered as part of the course","text":"

                        Description: How to create and manage pull requests to ontology files in GitHub.

                        "},{"location":"tutorial/pull-requests/#learning-objectives","title":"Learning objectives","text":"
                        • How to create a really good pull request
                        • GitHub Pull Request Workflow
                        • How to find a reviewer for your pull request in an open source environment
                        • How to review a pull request
                        • How to change a pull request in response to review
                        • How to update from master
                        • Resolve conflicts on branch
                        "},{"location":"tutorial/pull-requests/#contributors","title":"Contributors","text":"
                        • Nicole Vasilevsky
                        • Nico Matentzoglu
                        "},{"location":"tutorial/pull-requests/#tutorials","title":"Tutorials","text":""},{"location":"tutorial/pull-requests/#monarch-obo-training-tutorials","title":"Monarch OBO training Tutorials","text":""},{"location":"tutorial/pull-requests/#pull-requests-part-1","title":"Pull Requests Part 1","text":""},{"location":"tutorial/pull-requests/#pull-requests-part-2","title":"Pull Requests Part 2","text":""},{"location":"tutorial/pull-requests/#how-to-create-a-really-good-pull-request","title":"How to create a really good pull request","text":""},{"location":"tutorial/pull-requests/#what-is-a-pull-request","title":"What is a Pull Request?","text":"

                        A pull request (PR) is an event in Git where a contributor (you!) asks a maintainer of a Git repository to review changes (e.g. edits to an ontology file) they want to merge into a project (e.g. the owl file) (see reference). A contributor creates a pull request to propose and collaborate on changes to a repository. These changes are proposed in a branch, which ensures that the default branch only contains finished and approved work. See more details here.

                        "},{"location":"tutorial/pull-requests/#how-to-write-a-great-descriptive-title","title":"How to write a great descriptive title","text":"

                        When committing a pull request, you must include a title and a description (more details in the workflow below.) Tips below (adapted from Hugo Dias):

                        • The title of the PR should be self-explanatory

                        • Do: Describe what was changed in the pull request

                        • Example: Add new term: MONDO:0100503 DPH5-related diphthamide-deficiency syndrome`

                        • Don't: write a vague title that has very little meaning.

                        • Example: Add new term

                        • Don't: use the branch name in the pull request (sometimes GitHub will offer this as a default name)

                        • Example: issue-5024
                        "},{"location":"tutorial/pull-requests/#what-kind-of-information-to-include-in-the-description","title":"What kind of information to include in the description","text":"
                        • Describe what was changed in the pull request
                        • Explain why this PR exists
                        • Make it clear how it does what it sets out to do. E.g., Does it edit the ontology-edit.owl file? Does it edit another file(s)?
                        • What was your motivation for the chosen solution?
                        • Use screenshots to demonstrate what has changed. See How to guide on creating screenshots

                        Example:

                        "},{"location":"tutorial/pull-requests/#general-tips","title":"General tips","text":"
                        • Do:
                        • Follow the Single Responsibility Principle: The pull request should do only one thing.
                          • Note: sometimes a small edit can change a lot of code, for example, if you want to change all of the created_by annotations to dc:creator. That's okay.
                        • The pull request should be atomic: it should be small and self contained with simple changes that affect a little code a possible
                        • Whenever possible, break pull-requests into smaller ones
                        • Commit early, commit often
                        • Include specific information like the ID and label for terms changed. Note, you can easily obtain term metadata like OBO ID, IRI, or the term label in Protege by clicking the three lines above the Annotations box (next to the term name), see screenshot below. You can also copy the IRI in markdown, which is really convenient for pasting into GitHub.
                        • Don't:
                        • Make additional changes on a single PR that goes beyond the scope of the ticket or PR. For example, if you are adding a new term, don't also fix definitions or formatting for other terms.
                        "},{"location":"tutorial/pull-requests/#github-pull-request-workflow","title":"GitHub Pull Request Workflow","text":""},{"location":"tutorial/pull-requests/#update-the-local-copy-of-the-ontology","title":"Update the local copy of the ontology","text":"
                        1. In GitHub Desktop, navigate to your local ontology directory of your ontology
                        2. Make sure you are on the master/main branch and click Pull origin (or Fetch origin)
                        "},{"location":"tutorial/pull-requests/#create-a-new-working-branch","title":"Create a New Working Branch","text":"
                        1. When starting to work on a ticket or making edits to an ontology, you should create a new branch of the repository to edit the ontology file.
                        2. Make sure you are on the master branch before creating a new branch. Please do not create a new branch off of an existing branch (unless the situation explicitly calls for it).
                        3. To create a new branch, click on Current Branch and select New Branch
                        1. Name your branch. Some recommended best practices for branch name are to name the branch after the issue number, for example issue-206. If you are not addressing a ticket per se, you could name the branch: 'initals-edits-date', e.g. nv-edits_2022-07-12, or give it a name specific to what you are doing, e.g. fix-typos-2022-07-12.
                        "},{"location":"tutorial/pull-requests/#continuing-work-on-an-existing-working-branch","title":"Continuing work on an existing Working Branch","text":"
                        1. If you are continuing to do work on an existing branch, in addition to updating master, go to your branch by selecting Current Branch in GitHub Desktop and either search for or browse for the branch name.
                        "},{"location":"tutorial/pull-requests/#video-explanation","title":"Video Explanation","text":"

                        A video is below.

                        1. OPTIONAL: To update the working branch with respect to the current version of the ontology, select Branch from the top menu, Update from master. This step is optional because it is not necessary to work on the current version of the ontology; all changes will be synchronized when git merge is performed.
                        "},{"location":"tutorial/pull-requests/#editing-an-ontology-on-a-branch","title":"Editing an ontology on a branch","text":"
                        1. Create a new branch, open Protege. Protege will display your branch name in the lower left corner (or it will show Git: master)
                        1. Make necessary edits in Protege.
                        "},{"location":"tutorial/pull-requests/#committing-pushing-and-making-pull-requests","title":"Committing, pushing and making pull requests","text":"
                        1. Review: GitHub Desktop will display the diff or changes made to the ontology.
                        2. Before committing, view the diff and ensure the changes were intended. Examples of a diff are pasted below. Large diffs are a sign that something went wrong. In this case, do not commit the changes and ask for help instead or consider discarding your changes and starting the edits again. To discard changes, right click on the changed file name and select Discard changes.

                        Example diffs:

                        Example 1 (Cell Ontology):

                        Example 2 (Mondo):

                        "},{"location":"tutorial/pull-requests/#write-a-good-commit-messages","title":"Write a good commit messages","text":"
                        1. Commit message: Before Committing, you must add a commit message. In GitHub Desktop in the Commit field in the lower left, there is a subject line and a description.

                        2. Give a very descriptive title: Add a descriptive title in the subject line. For example: add new class ONTOLOGY:ID [term name] (e.g. add new class MONDO:0000006 heart disease)

                        3. Write a detailed summary of what the change is in the Description box, referring to the issue. The sentence should clearly state how the issue is addressed.

                        4. NOTE: You can use the word \u2018fixes\u2019 or \u2018closes\u2019 in the commit message - these are magic words in GitHub; when used in combination with the ticket number, it will automatically close the ticket. Learn more on this GitHub Help Documentation page about Closing issues via commit messages.

                        5. \u2018Fixes\u2019 and \u201cCloses\u2019 is case-insensitive and can be plural or singular (fixes, closes, fix, close).

                        1. If you don\u2019t want to close the ticket, just refer to the ticket # without the word \u2018fixes\u2019 or use \u2018adresses\u2019 or 'addresses'. The commit will be associated with the correct ticket but the ticket will remain open.

                        2. Push: To incorporate the changes into the remote repository, click Commit to [branch name], then click Push.

                        "},{"location":"tutorial/pull-requests/#make-a-pull-request-pr","title":"Make a pull request (PR)","text":"
                        1. You can either make a pull request (PR) directly from GitHub Desktop, or via the GitHub web browser.
                        2. To make a PR from GitHub Desktop, click the button 'Create Pull Request'. You will be directed to your web browser and GitHub repo.
                        3. Click Create Pull Request.
                        1. If your PR is a work-in-progress and not ready for review, you can save it as a draft PR and convert it to a PR when it is ready for review.
                        1. If you do not create a PR directly from GitHub Dekstop, you can go to your GitHub repo and you will see a yellow banner on top that notifies you of a pending PR.
                        2. Navigate to the tab labeled as \u2018Code\u2019. You should see your commit listed at the top of the page in a light yellow box. If you don\u2019t see it, click on the \u2018Branches\u2019 link to reveal it in the list, and click on it.
                        1. Click the green button \u2018Compare & pull request\u2019 on the right.
                        2. You may now add comments, if applicable and request a reviewer. See section below on reviewers.
                        3. You can see the diff for your file by clicking 'Files Changed'. Examine it as a sanity check.
                        4. Go back to the Conversation tab.
                        5. Click on the green box \u2018Pull request\u2019 to generate a pull request.
                        "},{"location":"tutorial/pull-requests/#how-to-find-a-reviewer-for-your-pull-request-in-an-open-source-environment","title":"How to find a reviewer for your pull request in an open source environment","text":"
                        1. Publicly managed ontologies do not have a structure in place to automatically deal with PRs.
                        2. If you make a PR to an open source project, you should open a separate social channel to the developers to notify them of your PR (e.g. find the project mailing list, Slack, etc.). You should introduce yourself and give some context.
                        3. Depending on the level of your permissions for the repository, you may or may not be able to assign a reviewer yourself.
                        4. If you have write access to the repository, you can assign a reviewer.
                        5. Otherwise, you can tag people in the description of your pull request.
                        6. Tips for finding reviewers:

                        7. An ontology repository should have an owner assigned. This may be described in the ReadMe file or on the OBO Foundry website. For example, the contact person for Mondo is Nicole Vasilevsky.

                        8. The primary owner can likely review your PR or triage your request to the appropriate person.
                        9. If you are addressing a specific ticket, you may want to assign the person who created the ticket to review.
                        "},{"location":"tutorial/pull-requests/#how-to-review-a-pull-request-pr","title":"How to review a pull request (PR)","text":"

                        If you are assigned to review a pull request, you should receive an email notification. You can also check for PRs assigned to you by going to https://github.com/pulls/assigned.

                        "},{"location":"tutorial/pull-requests/#what-kind-of-person-do-we-need-for-what-kind-of-pull-request","title":"What kind of person do we need for what kind of pull request?","text":"

                        It depends on what the pull request is addressing. Remember the QC checks will check for things like unsatisfiable classes and many other checks (that vary between ontologies). Your job as a reviewer is to check for things that the QC checks won't pick up and need human judgement.

                        • If it is content changes, like adding new terms, or reclassifying a term, an ontology curator could review your PR.
                        • If the PR is addressing quality control or technical aspects, one of the ontology semantic engineers would probably be a good fit.
                        • If you don't know who to assign, we recommend assigning the ontology contact person and they can triage the request.

                        • To review a PR, you should view the 'Files changed' and view the diff(s). You can review changes in a pull request one file at a time.

                        • While reviewing the files in a pull request, you can leave individual comments on specific changes.

                        Example:

                        "},{"location":"tutorial/pull-requests/#things-to-look-out-for-when-reviewing-a-pr","title":"Things to look out for when reviewing a PR:","text":"
                        1. Make sure the changes made address the ticket. In the example above, Sabrina addressed a ticket that requested adding a new term to Mondo, which is what she did on the PR (see https://github.com/monarch-initiative/mondo/pull/5078).

                        2. Examples of things to look for in content changes (like adding new terms or revising existing terms):

                        3. Poorly written definitions
                        4. Missing or misformatted database cross-references
                        5. Incorrectly scoped synonyms
                        6. appropriate annotations

                        7. Make sure there are not any unintended or unwanted changes on the PR. See example below. Protege reordered the location of a term in the file.

                        1. Check that the logic is correct. This can be a difficult thing to do. Some tips:
                        2. Open the branch in Protege and examine the hierarchy in Protege
                        3. Compare the logic that was use to the logic used in an existing term
                        4. If the ontology uses Design Patterns, ensure the logic is consistent with the Design Patterns
                        5. Ask an expert in ontology logic to help review the PR
                        6. Remember there is no magic bullet to ensuring an ontology is logically sound, but do the best you can
                        "},{"location":"tutorial/pull-requests/#adding-your-review","title":"Adding your review","text":"
                        1. After you finish reviewing each file, you can mark the file as viewed. This collapses the file, helping you identify the files you still need to review.
                        2. A progress bar in the pull request header shows the number of files you've viewed.
                        3. You can leave comments and requests for changes on the PR inline for on the PR when viewing the 'Files changed'.
                        4. You can add a single comment, or start a review if you have multiple comments.
                        5. After reviewing the file(s), you can approve the pull request or request additional changes by submitting your review with a summary comment.

                        6. Comment (Submit general feedback without explicit approval)

                        7. Approve (Submit feedback and approve merging these changes)
                        8. Request changes (Submit feedback that must be addressed before merging)

                        9. In addition or instead of adding inline comments, you can leave comments on the Conversation page. The conversation page is a good place to discuss the PR, and for the original creator to respond to the reviewer comments.

                        "},{"location":"tutorial/pull-requests/#inline-commits","title":"Inline commits","text":"

                        GitHub added a 'suggested Changes' feature that allows a PR reviewer to suggest an exact change in a comment in a PR. You can add inline comments and commit your comment using 'inline commits'. Read more about it here.

                        1. Go to the 'Files changed' tab of a pull request
                        2. Hover over the line you want to fix, and a blue box with a plus sign appears near the gutter on the left
                        3. Click that to display the normal line comment form
                        4. Click the button with a plus and minus sign, it adds a suggestion block to the comment text area with the existing text

                        1. You can make changes to the text inside the suggestion box. Note that you can add context for your suggested changes outside of the suggestion block
                        2. When you create the comment, it will show up to the maintainer as a diff
                        3. The maintainer can see what changes you are suggesting and accept them with a click
                        "},{"location":"tutorial/pull-requests/#when-are-you-done-with-your-review","title":"When are you done with your review?","text":"

                        If you review the PR and the changes properly address what was described in the description, then it should be sufficient. Not every PR needs comments, it can be approved without any comments or requests for changes. Feel free to ask for help with your review, and/or assign additional reviewers.

                        Some of the content above was adapted from GitHub Docs.

                        "},{"location":"tutorial/pull-requests/#how-to-change-a-pull-request-in-response-to-review","title":"How to change a pull request in response to review","text":"
                        1. Check out your branch in GitHub Desktop and open the file in Protege.
                        2. Make the suggested changes.
                        3. Check the diff.
                        4. Commit your changes on your branch.
                        5. Note, you do not need to create another PR, your commits will show up on the same PR.
                        6. Resolve the comments on the PR.
                        7. Notify the reviewer that your PR is ready for re-review.
                        "},{"location":"tutorial/pull-requests/#how-to-update-from-master","title":"How to update from master","text":"
                        1. In GitHub Desktop, navigate to your branch.
                        2. In the top file menu, select Branch -> Update from master.
                        "},{"location":"tutorial/pull-requests/#resolve-conflicts-on-branch","title":"Resolve conflicts on branch","text":"

                        Conflicts arise when edits are made on two separate branches to the same line in a file. (reference). When editing an ontology file (owl file or obo file), conflicts often arise when adding new terms to an ontology file on separate branches, or when there are a lot of open pull requests.

                        Conflicts in ontology files can be fixed either on the command line or using GitHub Desktop. In this lesson, we describe how to fix conflicts using GitHub Desktop.

                        "},{"location":"tutorial/pull-requests/#fix-conflicts-in-github-desktop","title":"Fix conflicts in GitHub desktop","text":"
                        1. In GitHub Desktop, go to your master/main branch and fetch pull.
                        2. Go to branch with conflict.
                        3. Pull branch.
                        4. Branch -> update from master.
                        5. Open in Sublime or Atom.
                        6. Make changes in file (open the ontology file in a text editor (like Sublime) and search for the conflicts. These are usually preceded by <<<<<. Fix the conflicts, then save).
                        7. In GitHub Desktop, continue merge.
                        8. Push.
                        9. In terminal: open [ontology file name] (e.g.open mondo-edit.obo) or open in Protege manually.
                        10. Save as (nothing should have changed in the diff).
                        11. Check the diff in GitHub online.
                        "},{"location":"tutorial/pull-requests/#video-explanation_1","title":"Video Explanation","text":"

                        Watch a video below with an example fixing a conflict in the Mondo ontology file.

                        Some examples of conflicts that Nicole fixed in Mondo are below:

                        "},{"location":"tutorial/pull-requests/#further-regarding","title":"Further regarding","text":""},{"location":"tutorial/pull-requests/#gene-ontology-daily-workflow","title":"Gene Ontology Daily Workflow","text":"

                        Gene Ontology Editing Guide

                        "},{"location":"tutorial/pull-requests/#github-merge-conflicts","title":"GitHub Merge Conflicts","text":"
                        • Resolving a merge conflict on GitHub
                        • Git merge conflicts
                        "},{"location":"tutorial/pull-requests/#the-anatomy-of-a-perfect-pull-request","title":"The anatomy of a perfect pull request","text":"

                        Blog post by Hugo Dias

                        "},{"location":"tutorial/pull-requests/#suggesting-changes-on-github-includes-description-of-how-to-make-inline-commits","title":"Suggesting Changes on GitHub - includes description of how to make inline commits","text":""},{"location":"tutorial/robot-tutorial-1/","title":"ROBOT Mini-Tutorial 1: Convert, Extract and Template","text":"

                        This tutorial covers three ROBOT commands:

                        • Convert
                        • Extract
                        • Template

                        Before starting this tutorial, either:

                        • make sure Docker is running and you are in the container
                        • download and install ROBOT for your operating system

                        We will be using the files from the Ontologies 101 Tutorial. In your terminal, navigate to the repository that you cloned and then into the BDK14_exercises folder.

                        "},{"location":"tutorial/robot-tutorial-1/#convert","title":"Convert","text":"

                        So far, we have been saving our ontologies in Protege using the default RDF/XML syntax, but there are many flavors of OWL. We will discuss each of these serializations in more detail during the class session, but ROBOT supports the following:

                        • owl - RDF/XML
                        • owx - OWL/XML
                        • ttl - Turtle
                        • obo - OBO Format
                        • ofn - OWL Functional
                        • omn - OWL Manchester
                        • json - obographs JSON
                        "},{"location":"tutorial/robot-tutorial-1/#lets-try-it","title":"Let's Try It!","text":"

                        Navigate to the basic-subclass/ folder. Open chromosome-parts.owl in your text editor and you will see it's in RDF/XML format. We're going to take this file and convert it to Turtle (ttl) serialization. Return to your terminal and enter the following command:

                        robot convert --input chromosome-parts.owl --format ttl --output chromosome-parts.ttl\n

                        ROBOT convert is smart about detecting formats, so since the output file ends with .ttl, the --format ttl parameter isn't really required. If you wanted to use a different file ending, say .owl, you will need to include the format flag to force ROBOT to write Turtle.

                        Now open chromosome-parts.ttl in your text editor and see what's changed! RDF/XML and Turtle are very different serializations, but the actual data that is contained in these two files is exactly the same.

                        "},{"location":"tutorial/robot-tutorial-1/#on-your-own","title":"On Your Own","text":"
                        1. Convert chromosome-parts.owl into the following formats: obo (OBO Format), ofn (OWL Functional), and omn (OWL Manchester).
                        2. Open each file and take a minute to scroll through (we don't expect you to be able to read these, they're mostly meant for computers!)
                        3. Why do you think we need these different serializations? What do you think the purpose of OWL Manchester vs. RDF/XML is?
                        "},{"location":"tutorial/robot-tutorial-1/#extract","title":"Extract","text":"

                        Sometimes we only want to browse or share a subset of an ontology, especially with some of the larger OBO Foundry ontologies. There are two main methods for creating subsets:

                        • MIREOT
                        • SLME

                        Right now, we will use use MIREOT and talk more about SLME in our class session. MIREOT makes sure that you have the minimal amount of information you need to reuse an existing ontology term. It allows us to extract a small portion of the class hierarchy by specifying upper and lower boundaries, which you will see in the example below. We need to know the identifiers (as CURIEs) of the terms that we want to set as our boundaries.

                        "},{"location":"tutorial/robot-tutorial-1/#lets-try-it_1","title":"Let's Try It!","text":"

                        Open chromosome-parts.owl in Protege and open the Class hierarchy. We are going to create a subset relevant to the term \"chromosome\". First, we will find the CURIE of our desired term. Search for \"chromosome\" and find the \"id\" annotation property. This will be our lower term. Right now, we won't set an upper boundary. That means this subset will go all the way up to the top-level ancestor of \"chromosome\".

                        Return to your terminal and enter the following command (where the --lower-term is the CURIE that we just found):

                        robot extract --method MIREOT --input chromosome-parts.owl --lower-term GO:0005694 --output chromosome-full.owl\n

                        Now open chromosome-full.owl in Protege and open the Class hierarchy. When you open the \"cellular_component\" node, you'll notice that most of the terms are gone! Both \"organelle\" and \"intracellular part\" remain because they are in the path between \"chromosome\" and the top-level \"cellular_component\". Keep clicking down and you'll find \"chromosome\" at the very bottom. Since \"chromosome\" has two named parents, both of those parents are included, which is why we ended up with \"organelle\" and \"intracellular part\".

                        Now let's try it with an upper term. This time, we want \"organelle\" to be the upper boundary. Find the CURIE for \"organelle\".

                        Return to your terminal and enter the following command (where the --upper-term is the new CURIE we just found):

                        robot extract --method MIREOT \\\n  --input chromosome-parts.owl \\\n  --lower-term GO:0005694 \\\n  --upper-term GO:0043226 \\\n  --output chromosome.owl\n

                        Open chromosome.owl and again return to the Class hierarchy. This time, we see \"organelle\" directly below owl:Thing. \"intracellular part\" is also now missing because it does not fall under \"organelle\".

                        "},{"location":"tutorial/robot-tutorial-1/#on-your-own_1","title":"On Your Own","text":"
                        1. Play with different upper- and lower-level terms to create different subsets
                        2. Compare the terms that are in the subsets to the terms in the original chromosome-parts.owl file.
                        3. What is missing from the terms in the subsets? What has been included as our \"minimal\" information?
                        "},{"location":"tutorial/robot-tutorial-1/#template","title":"Template","text":"

                        Most of the knowledge encapsulated in ontologies comes from domain experts. Often, these domain experts are not computer scientists and are not familiar with the command line. Luckily, most domain experts are familiar with spreadsheets!

                        ROBOT provides a way to convert spreadsheets into OWL ontologies using template strings. We'll get more into these during the class session, but if you want to get a head start, they are all documented here. Essentially, the first row of a ROBOT template is a human-readable header. The second row is the ROBOT template string. Each row below that represents an entity to be created in the output ontology. We can create new entities by giving them new IDs, but we can also reference existing entities just by label. For now, we're going to create a new, small ontology with new terms using a template.

                        "},{"location":"tutorial/robot-tutorial-1/#lets-try-it_2","title":"Let's Try It!","text":"

                        Download (or copy/paste) the animals.tsv file and move it to the basic-subclass/ folder (or whatever folder you would like to work in; we will not be using any of the Ontology 101 files anymore). This contains the following data:

                        CURIE Label Parent Comment ID LABEL SC % A rdfs:comment obo:0000001 animal Any animal in the world. obo:0000002 canine animal A member of the genus Canis. obo:0000003 feline animal A member of the genus Felis.

                        In the first column, we use the special ID keyword to say that this is our term's unique identifier. The second column contains the LABEL keyword which is a shortcut for the rdfs:label annotation property. The third column uses the SC keyword to state that this column will be a subclass statement. The % sign is replaced by the value in the cell. We'll talk more about this keyword and the % symbol during the class session. Finally, the last column begins with A to denote that this will be an annotation, and then is followed by the annotation property we're using.

                        Just looking at the template, you can begin to predict what a class hierarchy using these terms would look like in an ontology. We can turn this into reality!

                        In your terminal, enter the following command:

                        robot template --template animals.tsv --output animals.owl\n

                        Note that in this command, we don't use the --input parameter. That parameter is reserved for input ontologies, and we are not using one right now. More on this later.

                        Open animals.owl in Protege, and you'll be able to see the class hierarchy we defined in the template as an actual structure.

                        Now let's make another small ontology that reuses some terms from our animals.owl file. Download (or copy/paste) animals2.tsv into the same folder. This contains the following:

                        CURIE Label Parent Comment ID LABEL SC % A rdfs:comment obo:0000004 dog canine A member of the subspecies Canis lupus familiaris. obo:0000005 cat feline A member of the species Felis catus.

                        You'll notice that we are referencing two terms from our other spreadsheet in this one.

                        In your terminal, enter the following command:

                        robot template --input animals.owl --template animals2.tsv --output animals2.owl\n

                        This time, we did use the --input parameter and provided the animals ontology we just created. This allows us to use any term in the animals.owl file in our animals2.tsv template and ROBOT will know what we're talking about.

                        Go ahead and open animals2.owl in Protege. What's missing? The parent classes for \"dog\" and \"cat\" don't have labels, and the \"animal\" term is missing entirely. This is because, even though ROBOT knew about these classes, we didn't ask for the original ontology to be included in the output, so no axioms from that ontology can be found in this newly-created one. Next week, we'll learn about combining ontologies with the Merge command.

                        For now, let's add the original animals.owl file as an import:

                        1. Go to the \"Active ontology\" tab and find the \"Imported ontologies\" section at the bottom
                        2. Click the + next to \"Direct imports\"
                        3. Select \"Import an ontology contained in a local file\" and click Continue
                        4. Browse for the path to animals.owl, click Continue, and then click Finish

                        Prot\u00e9g\u00e9 will now load animals.owl as an import. When you return to the Entities tab, you'll see all those upper-level terms. Note the difference in how the terms are displayed in the class hierarchy.

                        "},{"location":"tutorial/robot-tutorial-1/#on-your-own_2","title":"On Your Own","text":"
                        1. Try adding another class or two to the animals.tsv template and regenerating animals.owl.
                        2. Can you create your own template?
                        "},{"location":"tutorial/robot-tutorial-2/","title":"ROBOT Tutorial 2: Annotate, Merge, Reason and Diff","text":"

                        In week 6, we got some hands-on experience with ROBOT using convert, extract, and template. This week, we will learn four new ROBOT commands:

                        • Annotate
                        • Merge
                        • Reason
                        • Diff

                        The goal of these and previous commands is to build up to creating an ontology release workflow.

                        Before starting this tutorial, either:

                        • make sure Docker is running and you are in the container
                        • download and install ROBOT for your operating system

                        To start, we will be working in the same folder as the first ROBOT Mini-Tutorial. Navigate to this folder in your terminal and list the contents of the current directory by running ls. You should see catalog-v001.xml listed as one of these files. We want to delete this so that we can fix the ontology IRI problem we ran into last week! Before going any further with this tutorial, do this by running either del catalog-v001.xml for Windows or rm catalog-v001.xml if you're using Docker, MacOS, or other Linux system.

                        "},{"location":"tutorial/robot-tutorial-2/#annotate","title":"Annotate","text":"

                        The annotate command allows you to attach metadata to your ontology in the form of IRIs and ontology annotations. Like the annotations on a term, ontology annotations help users to understand how they can use the ontology.

                        "},{"location":"tutorial/robot-tutorial-2/#ontology-iris","title":"Ontology IRIs","text":"

                        As we discussed during previous parts of the course, ontology IRIs are very important! We saw how importing an ontology without an IRI into another ontology without an IRI can cause some problems in the catalog-v001.xml file. We're going to fix that problem by giving IRIs to both our animals.owl and animals2.owl files.

                        Let's start with animals.owl:

                        robot annotate --input animals.owl \\\n  --ontology-iri http://example.com/animals.owl \\\n  --output animals.owl\n

                        You'll notice we gave the same file name as the input file; we're just updating our previous file so we don't need to do this in a separate OWL file.

                        On your own, give animals2.owl the ontology IRI http://example.com/animals2.owl. Remember that, in reality, we always want our ontology IRIs to be resolvable, so these would be pretty bad IRIs for an actual ontology.

                        Let's fix our import statement now. Open animals2.owl in Prot\u00e9g\u00e9 and go to the Entities tab. You'll see that even though we still have the import statement in the Active ontology tab, the top-level terms are no longer labeled. Since we changed the ontology IRI, Prot\u00e9g\u00e9 can no longer resolve our local file (because the catalog-v001.xml file was not updated). Go back to the Active ontology tab and click the X to the right of our original import. Then, re-add animals.owl as an import using the same steps as last time. When you return to the Entities tab, you'll once again see the labels of the top-level terms.

                        "},{"location":"tutorial/robot-tutorial-2/#version-iris","title":"Version IRIs","text":"

                        When we release our ontologies, we want to make sure to include a version IRI. Like the ontology IRI, this should always resolve to the version of the ontology at the time of the release. For clarity, we usually use dates in our version IRIs in the OBO Foundry. That way, you know when you navigate to a specific version IRI, that's what the ontology looked like on that date. (Note: edit files don't usually have version IRIs as they are always changing, and we don't expect to be able to point to a stable version)

                        While you can add a version IRI in Prot\u00e9g\u00e9, if you're trying to create an automated release workflow, this is a manual step you don't want to have to include. Keeping it in your release workflow also makes sure that the verion IRIs are consistent (we'll see how to do this with make later). For now, let's add a version IRI to animals.owl (feel free to replace the 2021-05-20 with today's date):

                        robot annotate --input animals.owl \\\n  --version-iri http://example.com/animals/2021-05-20/animals.owl \\\n  --output animals.owl\n

                        Let's break down this version IRI. We have the host (http://example.com/) followed by our ontology's namespace (animals). Next, we provided the date in the format of YYYY-MM-DD. Finally, we have the name of the file. This is standard for OBO Foundry, except with a different host. For example, you can find a release of OBI from April 6, 2021 at http://purl.obolibrary.org/obo/obi/2021-04-06/obi.owl. In this case, the host is http://purl.obolibrary.org/obo/. Of course, you may see different patterns in non-OBO-Foundry ontologies, but they should always resolve (hopefully!).

                        Go ahead and open or reload animals.owl in Protege. You'll see in the Active Ontology tab that now both the ontology IRI and version IRI fields are filled out.

                        "},{"location":"tutorial/robot-tutorial-2/#ontology-annotations","title":"Ontology Annotations","text":"

                        In addition to ontology and version IRIs, you may also want to add some other metadata to your ontology. For example, when we were introduced to report, we added a description to the ontology to fix one of the report problems. The three ontology annotations that are required by the OBO Foundry are:

                        • Title (dc11:title)
                        • License (dc:license)
                        • Description (dc11:description)

                        These three annotation properties all come from the Dublin Core, but they have slightly different namespaces. This is because DC is split into two parts: the /terms/ and /elements/1.1/ namespaces. Just remember to double check that you're using the correct namespace. If you click on the DC link, you can find the complete list of DC terms in their respective namespaces.

                        ROBOT contains some built-in prefixes, which can be found here. The prefix dc: corresponds to the /terms/ namespace and dc11: to /elements/1.1/. You may see different prefixes used (for example, /terms/ is sometimes dcterms: or just terms:), but the full namespace is what really matters as long as the prefix is defined somewhere.

                        Let's go ahead and add a title and description to our animals.owl file. We'll do this using the --annotation option, which expects two arguments: (1) the CURIE of the annotation property, (2) the value of the annotation. The value of the annotation must be enclosed in double quotes if there are spaces. You can use any annotation property you want here, and include as many as you want! For now, we'll start with two:

                        robot annotate --input animals.owl \\\n  --annotation dc11:title \"Animal Ontology\" \\\n  --annotation dc11:description \"An ontology about animals\" \\\n  --output animals.owl\n

                        --annotation adds these as strings, but remember that an annotation can also point to an link or IRI. We want our license to be a link, so we'll use --link-annotation instead to add that:

                        robot annotate --input animals.owl \\\n  --link-annotation dc:license https://creativecommons.org/licenses/by/4.0/ \\\n  --output animals.owl\n

                        OBO Foundry recommends using Creative Commons for all licenses. We just gave our ontology the most permissive of these, CC-BY.

                        When you open animals.owl in Prot\u00e9g\u00e9 again, you'll see these annotations added to the Active ontology tab. You can also click on the CC-BY link!

                        "},{"location":"tutorial/robot-tutorial-2/#merge","title":"Merge","text":"

                        We've already learned how to include external ontologies as imports. Usually, for the released version of an ontology, the imports are merged in so that all contents are in one file.

                        Another reason you may want to merge two ontologies is if you're adding new terms to an ontology using template, like how we created new animal terms in animals2.tsv last time. We're going to demonstrate two methods of merging now. The first involves merging two (or more!) separate files and the second involves merging all imports into the current input ontology.

                        "},{"location":"tutorial/robot-tutorial-2/#merging-multiple-files","title":"Merging Multiple Files","text":"

                        First, copy animals2.owl to animals-new.owl. In Windows, this command is copy animals2.owl animals-new.owl. For Docker and other Linux operating systems, this is cp animals2.owl animals-new.owl. Open animals-new.owl in Prot\u00e9g\u00e9 and remove the import we added last time. This is done in the Imported ontologies section of the Active ontology tab. Just click the X on the right side of the imported animals ontology. Don't forget to save!

                        Continuing with the animals.owl file we created last week, now run the following command:

                        robot merge --input animals.owl --input animals-new.owl --output animals-full.owl\n

                        When you just import an external ontology into your ontology, you'll notice in the Prot\u00e9g\u00e9 class hierarchy that all terms from the external ontology are a less-bold text than internal terms. This can be seen when you open animals2.owl, where we imported animals.owl. This is simply Prot\u00e9g\u00e9's way of telling us that these terms are not part of your current ontology. Now that we've merged these two ontologies together, when you open animals-full.owl in Prot\u00e9g\u00e9, you'll see that all the terms are bold.

                        By default, the output ontology will get the ontology IRI of the first input ontology. We picked animals.owl as our first ontology here because this is the ontology that we're adding terms to, so we want our new output ontology to replace the original while keeping the same IRI. merge will also copy over all the ontology annotations from animals.owl (the first input) into the new file. The annotations from animals2.owl are ignored, but we'll talk more about this in our class session.

                        If we were editing an ontology in the wild, we'd probably now replace the original with this new file using cp or copy. For now, don't replace animals.owl because we'll need it for this next part.

                        IMPORTANT: Be very careful to check that the format is the same if you're replacing a file! Remember, you can always output OWL Functional syntax or another syntax by ending your output with .ofn, for example: --output animals-full.ofn.

                        "},{"location":"tutorial/robot-tutorial-2/#merging-imports","title":"Merging Imports","text":"

                        When we want to merge all our imports into our working ontology, we call this collapsing the import closure. Luckily (since we're lazy), you don't need to type out each of your imports as an input to do this.

                        We already have animals.owl imported into animals2.owl. Let's collapse the import closure:

                        robot merge --input animals2.owl --collapse-import-closure true --output animals-full-2.owl\n

                        Even though we gave this a different file name, if you open animals-full-2.owl in Prot\u00e9g\u00e9, you'll notice that it's exactly the same as animals-full.owl! This is because we merged the same files together, just in a slightly different way. This time, though, the ontology IRI is the one for animals2.owl, not animals.owl. That is because that was our first input file.

                        "},{"location":"tutorial/robot-tutorial-2/#reason","title":"Reason","text":"

                        As we saw in the prepwork for Week 5, running a reasoner in Prot\u00e9g\u00e9 creates an inferred class hierarchy. In the OBO Foundry, releases versions of ontologies usually have this inferred hierarchy asserted, so you see the full inferred hierarchy when you open the ontology without running the reasoner. ROBOT reason allows us to output a version of the ontology with these inferences asserted.

                        As we discussed, ELK and HermiT are the two main reasoners you'll be using. Instead of using our example ontologies (the asserted and inferred hierarchies for these will look exactly the same), we're going to use another ontology from the Ontologies 101 tutorial from week 5. Navigate back to that directory and then navigate to BDK14_exercises/basic-classification.

                        Like running the reasoner in Prot\u00e9g\u00e9, running reason does three things:

                        1. Check for inconsistency
                        2. Check for unsatisfiable classes
                        3. Assert the inferred class hierarchy

                        Remember, when we run the reasoner in Prot\u00e9g\u00e9, if the ontology is inconsistent, reason will fail. If there are unsatisfiable classes, these will be asserted as owl:Nothing. ROBOT will always fail in both cases, but has some tools to help us figure out why. Let's introduce an unsatifiable class into our test and see what happens.

                        First, let's make a copy of ubiq-ligase-complex.owl and call this new file unreasoned.owl (copy or cp).

                        Open unreasoned.owl in Prot\u00e9g\u00e9 and follow the steps below. These are things we've covered in past exercises, but if you get stuck, please don't hesitate to reach out.

                        1. Find 'organelle' in the class hierarchy below 'cellular_component' (or just search for it by label)
                        2. Make 'organelle' disjoint with 'organelle part' (either use the class hierarchy or type it in the expression editor)
                        3. Find 'intracellular organelle part' below 'intracellular part' or 'organelle part' (or search for it by label)
                        4. Add 'organelle' as a parent class to 'intracellular organelle part' (remember that you only need to include the single quotes if the label has spaces)

                        Like we did in the Disjointness part of the Ontologies 101 tutorial, we've made 'intracellular organelle part' a subclass of two classes that should have no overlap based on the disjointness axiom. Save the ontology and return to your terminal. Now, we'll run reason. The default reasoner is ELK, but you can specify the reasoner you want to use with the --reasoner option. For now, we'll just use ELK.

                        robot reason --input unreasoned.owl --output unsatisfiable.owl\n

                        You'll notice that ROBOT printed an error message telling us that the term with the IRI http://purl.obolibrary.org/obo/GO_0044446 is unsatisfiable and ROBOT didn't create unsatisfiable.owl. This is ideal for automated pipelines where we don't want to be releasing unsatisfiable classes.

                        We can still use ROBOT to investigate the issue, though. It already gave us the IRI, but we can get more details using the --dump-unsatisfiable option. We won't provide an output this time because we know it won't succeed.

                        robot reason --input unreasoned.owl --dump-unsatisfiable unsatisfiable.owl\n

                        You can open unsatisfiable.owl in Prot\u00e9g\u00e9 and see that 'intracellular organelle part' is not the only term included, even though it was the only unsatisfiable class. Like with the SLME method of extraction, all the terms used in unsatisfiable class or classes logic are included in this unsatisfiable module. We can then use Prot\u00e9g\u00e9 to dig a little deeper in this small module. This is especially useful when working with large ontologies and/or the HermiT reasoner, which both can take quite some time. By extracting a smaller module, we can run the reasoner again in Prot\u00e9g\u00e9 to get detailed explanations. In this case, we already know the problem, so we don't need to investigate any more.

                        Now let's reason over the original ubiq-ligase-complex.owl and see what happens:

                        robot reason --input ubiq-ligase-complex.owl --output reasoned.owl\n

                        If you just open reasoned.owl in Prot\u00e9g\u00e9, you won't really notice a different between this and the input file unless you do some digging. This takes us to our next command...

                        "},{"location":"tutorial/robot-tutorial-2/#diff","title":"Diff","text":"

                        The diff command can be used to compare the axioms in two ontologies to see what has been added and what has been removed. While the diffs on GitHub are useful for seeing what changed, it can be really tough for a human to read the raw OWL formats. Using ROBOT, we can output these diffs in a few different formats (using the --format option):

                        • plain: plain text with just the added and removed axioms listed in OWL functional syntax (still tough for a human to read, but could be good for passing to other scripts)
                        • pretty: similar to plain, but the IRIs are replaced with CURIEs and labels where available (still hard to read)
                        • html: a nice, sharable HTML file with the diffs sorted by term
                        • markdown: like the HTML diff, but in markdown for easy sharing on platforms like GitHub (perfect for pull requests!)

                        We're going to generate an HTML diff of ubiq-ligase-complex.owl compared to the new reasoned.owl file to see what inferences have been asserted. diff takes a left (\"original\") and a right (\"new\") input to compare.

                        robot diff --left ubiq-ligase-complex.owl \\\n  --right reasoned.owl \\\n  --format html \\\n  --output diff.html\n

                        Open diff.html in your browser side-by-side with reasoned.owl and you can see how the changes look in both.

                        Homework question: Running reason should assert inferences, yet there are some removed axioms in our diff. Why do you think these axioms were removed?

                        "},{"location":"tutorial/robot-tutorial-qc/","title":"ROBOT Tutorial: Quality Control with ROBOT","text":"

                        In this tutorial you will learn how to set up your QC pipeline with ROBOT report, verify, validate-profile and reason.

                        "},{"location":"tutorial/robot-tutorial-qc/#preparation","title":"Preparation","text":"
                        • You should know how to run ROBOT commands on your machine
                        • You should have a basic understanding of OWL and reasoning
                        "},{"location":"tutorial/robot-tutorial-qc/#overview","title":"Overview","text":"

                        Quality control is a very large concern in ontologies. For example, we want to make sure that our editors use the right annotation properties to attach metadata to terms (such as a date, or a label), or to make sure that our last edit did not accidentally introduce a logical error. In ROBOT, we have four commands that help us in particular to ensure the quality of our ontologies:

                        • ROBOT validate-profile: Ensures that your ontology is a syntactically valid OWL ontology.
                        • ROBOT verify: Define \"bad examples\", i.e. situations you want to avoid as SPARQL queries and use verify to ensure they do not appear in your ontology.
                        • ROBOT report: Use dozens of time tested best practice checks curated by the OBO Technical Working Group to check your ontology for typical errors, like missing labels or wrong license declarations.
                        • ROBOT reason: Use reason to ensure that your ontology is consistent and coherent and test the \"unique name assumption\".

                        In the following, we will learn about all of these and how they fit in the wider concerns of ontology quality control.

                        "},{"location":"tutorial/robot-tutorial-qc/#download-test-ontology","title":"Download test ontology","text":"

                        Download example.owl, or get it via the command line:

                        curl https://raw.githubusercontent.com/OBOAcademy/obook/master/docs/tutorial/robot_tutorial_qc/example.owl > example.owl\n

                        Let us ensure we are using the same ROBOT version:

                        robot --version\n

                        We see:

                        ROBOT version 1.8.3\n
                        "},{"location":"tutorial/robot-tutorial-qc/#robot-validate-profile","title":"ROBOT validate-profile","text":"

                        ROBOT validate-profile: Ensures that your ontology is a syntactically valid OWL ontology. This is the absolute minimum check - some \"violations\" to OWL 2 DL validity cause the reasoner to behave in unexpected and wrong ways!

                        robot validate-profile --profile DL -i example.owl\n

                        Thankfully, our test ontology is in valid OWL DL:

                        OWL 2 DL Profile Report: [Ontology and imports closure in profile]\n

                        This check is overlooked by a lot of OWL Ontology developers despite its importance to ensure both a predictable behaviour of the reasoner and of parsing tools. See here for an example where an ontology was not in OWL DL profile, causing various problems for parsing and computation: https://github.com/Orphanet/ORDO/issues/32.

                        "},{"location":"tutorial/robot-tutorial-qc/#robot-report","title":"ROBOT report","text":"

                        Let us generate a simple report:

                        robot report -i example.owl -o report.html\n

                        ROBOT report will do two things:

                        • It will print out the number of errors (violations) and an indication that the report failed:
                        Violations: 11\n-----------------\nERROR:      5\nWARN:       4\nINFO:       2\nERROR Report failed!\n
                        • And it will provide you with a report file, report.html

                        Let us look at the file in a browser (simply double-click on the html file the way you would open a PDF). Your report should look similar to this:

                        While there are other formats you can export your report to, HTML is a great format which not only offers useful colour coding, but also allows us to click on the related classes and properties and, more importantly, the checks to find our what they mean (for an overview of all ROBOT report checks see here).

                        "},{"location":"tutorial/robot-tutorial-qc/#exercise","title":"Exercise","text":"

                        We will leave it to the reader as an exercise to try and fix all the errors indicated by the report!

                        "},{"location":"tutorial/robot-tutorial-qc/#advanced-usage-of-robot-report","title":"Advanced usage of ROBOT report","text":""},{"location":"tutorial/robot-tutorial-qc/#customisation","title":"Customisation","text":"

                        While by far the most widely spread usage of ROBOT report is to check for OBO best practices, it is possible to customise the report by removing certain OBO ontology checks and adding custom ones.

                        Lets first create a simple profile.txt in our directory and add the following lines:

                        WARN    annotation_whitespace\nERROR   missing_ontology_description\nERROR   missing_definition\nERROR   missing_ontology_license\nERROR   missing_ontology_title\nERROR   misused_obsolete_label\nERROR   multiple_labels\n

                        Now we tell ROBOT to run the command using our custom profile rather than the default ROBOT profile:

                        robot report -i example.owl --profile profile.txt -o report.html\n

                        The resulting report looks different:

                        In particular, some checks like missing_superclass which we did not care about for our use case are not shown at all anymore, and others, such as missing_definition are now considered ERROR (red) rather than WARN (warning, yellow) because for our use case, we have decided that definitions on terms are mandatory.

                        "},{"location":"tutorial/robot-tutorial-qc/#robot-verify","title":"ROBOT verify","text":"

                        ROBOT verify allows us to define QC checks for undesirable situation (we sometimes call this \"anti-pattern\") using the SPARQL query language. The idea is simple: we write a SPARQL query for the thing we do not want. For example, we can use SPARQL to look for classes with more than one label. Then, we feed this query to ROBOT verify. ROBOT verify than ensures that the query has no answers, i.e the thing we do not want actually does not happen:

                        PREFIX owl: <http://www.w3.org/2002/07/owl#>\nPREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\nSELECT DISTINCT ?entity ?property ?value WHERE {\n  VALUES ?property { rdfs:label }\n  ?entity ?property ?value .\n  ?entity ?property ?value2 .\n  FILTER (?value != ?value2) .\n  FILTER NOT EXISTS { ?entity owl:deprecated true }\n  FILTER (!isBlank(?entity))\n}\nORDER BY ?entity\n

                        Let us safe this query now in our working directory as bad_labels.sparql and run the following:

                        robot verify -i example.owl --queries bad_labels.sparql\n

                        ROBOT will output this to tell us which terms have violations:

                        FAIL Rule bad_labels.sparql: 2 violation(s)\nentity,property,value\nhttp://purl.obolibrary.org/obo/OBI_0002986,http://www.w3.org/2000/01/rdf-schema#label,CT scan\nhttp://purl.obolibrary.org/obo/OBI_0002986,http://www.w3.org/2000/01/rdf-schema#label,computed tomography imaging assay\n

                        Now the cool thing with verify is that we can basically feed SPARQL SELECT queries in whatever shape or form we want. To make error messages more readable for curators, you can even encode a proper error message:

                        PREFIX owl: <http://www.w3.org/2002/07/owl#>\nPREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\nSELECT DISTINCT ?error WHERE {\n  VALUES ?property { rdfs:label }\n  ?entity ?property ?value .\n  ?entity ?property ?value2 .\n  FILTER (?value != ?value2) .\n  FILTER NOT EXISTS { ?entity owl:deprecated true }\n  FILTER (!isBlank(?entity))\n  BIND(CONCAT(\"Entity \",STR(?entity),\" uses two different labels: (1) \",STR(?value),\" and (2) \",STR(?value2)) as ?error)\n}\nORDER BY ?entity\n

                        This time, when running the query, we get:

                        FAIL Rule bad_labels.sparql: 2 violation(s)\nerror\nEntity http://purl.obolibrary.org/obo/OBI_0002986 uses two different labels: (1) CT scan and (2) computed tomography imaging assay\nEntity http://purl.obolibrary.org/obo/OBI_0002986 uses two different labels: (1) computed tomography imaging assay and (2) CT scan\n

                        Which appears much more readable! You can tweak the output in whatever way you think is best. Two things about this:

                        • You cannot do this very well with ROBOT report: despite the ability to include custom queries, all queries must start with:
                        SELECT DISTINCT ?entity ?property ?value WHERE\n

                        This is one of the reasons we still like using ROBOT verify, despite the fact that ROBOT report can also be extended with custom checks.

                        • Another cool thing about verify is that you can add the --output-dir results/ parameter to your query to get ROBOT to export the query results as TSV files. This can be useful if you have many QC queries and need to work with them independently of the checks.
                        • Note that ROBOT notices two errors despite there being only 1, technically speaking. This is because the WHERE clause in SPARQL which twice (one where label 1 is first, one where label 2 is first). You can be smart about it and get around it by sorting your results before binding them, but for most use cases this hack is hardly worth the effort.
                        "},{"location":"tutorial/robot-tutorial-qc/#robot-reason","title":"ROBOT reason","text":"

                        This is not an exhaustive tutorial for ROBOT reason (for more, see here). We only want to get across two checks that we feel absolutely every ontology developer should know about.

                        "},{"location":"tutorial/robot-tutorial-qc/#the-distinct-scope-assumption","title":"The \"distinct scope\" assumption","text":"

                        In most cases, we do not want to define the exact same concept twice. There are some exceptions, for example when we align ontologies such as CHEBI and GO which may have overlapping scope, but in 99.9% of the cases, having the reasoner infer that two classes are the same points to a mistake in the axiomatisation. Let us check that we do not have any such unintended equivalencies in our ontology:

                        robot reason -i example.owl --equivalent-classes-allowed none\n

                        ROBOT will note that:

                        ERROR No equivalent class axioms are allowed\nERROR Equivalence: <http://purl.obolibrary.org/obo/TEST_0600047> == <http://purl.obolibrary.org/obo/OBI_0600047>\n

                        Further investigation in Protege will reveal that TEST_0600047 and OBI_0600047 are subclasses of each other, which causes the reasoner to infer that they are equivalent.

                        "},{"location":"tutorial/setting-up-project-odk/","title":"Tutorial: How to get started with your own ODK-style repository","text":"
                        1. Preparation: Installing docker, installing ODK and setting memory. Follow the steps here.
                        2. Creating your first ontology repository

                        The tutorial uses example tailored for users of UNIX systems, like Mac and Linux. Users of Windows generally have analogous steps - wherever we talk about an sh file in the following there exists a corresponding bat file that can be run in the windows powershell, or CMD.

                        "},{"location":"tutorial/setting-up-project-odk/#prerequisites","title":"Prerequisites","text":"

                        You have:

                        • A Github account
                        • Completed the \"Preparation\" steps above
                        "},{"location":"tutorial/setting-up-project-odk/#video","title":"Video","text":"

                        A recording of a demo of creating a ODK-repo is available here

                        "},{"location":"tutorial/setting-up-project-odk/#your-first-repository","title":"Your first repository","text":"
                        1. Create temporary directory to get started

                        On your machine, create a new folder somewhere:

                        cd ~\nmkdir odk_tutorial\ncd odk_tutorial\n
                        1. Download the seed-my-repo wrapper script

                        Now download the seed-my-repo wrapper script from the ODK GitHub repository. A detailed explanation of how to do that can be found here. For simplicity, we just use wget here to download the seed-my-repo file, but you can do it manually:

                        wget https://raw.githubusercontent.com/INCATools/ontology-development-kit/master/seed-via-docker.sh\n
                        1. Download a basic config to start from and start building your own

                        The last ingredient we need is an ODK config file. While you can, in theory, create an empty repo entirely without a config file (one will be generated for you), we recommend to just start right with one. You can find many examples of configs here. For the sake of this tutorial, we will start with a simple config:

                        id: cato\ntitle: \"Cat Anatomy Ontology\"\ngithub_org: obophenotype\ngit_main_branch: main\nrepo: cat_anatomy_ontology\nrelease_artefacts:\n- base\n- full\n- simple\nprimary_release: full\nexport_formats:\n- owl\n- obo\n- json\nimport_group:\nproducts:\n- id: ro\n- id: pato\n- id: omo\nrobot_java_args: \"-Xmx8G\"\nrobot_report:\nuse_labels: TRUE\nfail_on: ERROR\ncustom_profile: TRUE\nreport_on:\n- edit\n

                        Safe this config file as in your temporary directory, e.g. ~/odk_tutorial/cato-odk.yaml.

                        Most of your work managing your ODK in the future will involve editing this file. There are dozens of cool options that do magical things in there. For now, lets focus on the most essential:

                        "},{"location":"tutorial/setting-up-project-odk/#general-config","title":"General config:","text":"
                        id: cato\ntitle: \"Cat Anatomy Ontology\"\n

                        The id is essential, as it will determine how files will be named, which default term IDs to assume, and many more. It should be a lowercase string which is, by convention at least 4 characters long - 5 is not unheard of. The title field is used to generate various default values in the repository, like the README and others. There are other fields, like description, but let's start minimal for now. A full list of elements can be found in this schema:

                        https://github.com/INCATools/ontology-development-kit/blob/master/schema/project-schema.json

                        "},{"location":"tutorial/setting-up-project-odk/#git-config","title":"Git config:","text":"
                        github_org: obophenotype\ngit_main_branch: main\nrepo: cat_anatomy_ontology\n

                        The github_org (the GitHub or GitLab organisation) and the repo (repository name) will be used for some basic config of the git repo. Enter your own github_org here rather than obophenotype. Your default github_org is your GitHub username. If you are not creating a new repo, but working on a repo that predates renaming the GitHub main branch from master to main, you may want to set the git_main_branch as well.

                        "},{"location":"tutorial/setting-up-project-odk/#pipeline-configuration","title":"Pipeline configuration","text":"
                        release_artefacts:\n  - base\n  - full\n  - simple\nprimary_release: full\nexport_formats:\n  - owl\n  - obo\n  - json\n

                        With this configuration, we tell the ODK that we wish to automatically generate the base, full and simple release files for our ontology. We also say that we want the primary_release to be the full release (which is also the default). The primary release will be materialised as cato.owl, and is what most users of your ontology will interact with. More information and what these are can be found here. We always want to create a base, i.e. the release variant that contains all the axioms that belong to the ontology, and none of the imported ones, but we do not want to make it the primary_release, because it will be unclassified and missing a lot of the important inferences.

                        We also configure export products: we always want to export to OWL (owl), but we can also chose to export to OBO (obo) format and OBOGraphs JSON (json).

                        "},{"location":"tutorial/setting-up-project-odk/#imports-config","title":"Imports config:","text":"
                        import_group:\n  products:\n    - id: ro\n    - id: pato\n    - id: omo\n

                        This is a central part of the ODK, and the section of the config file you will interact with the most. Please see here for details. What we are asking the ODK here, in essence, to set us up for dynamically importing from the Relation Ontology (RO), the Phenotype And Trait Ontology (PATO) and the OBO Metadata Ontology (OMO).

                        "},{"location":"tutorial/setting-up-project-odk/#memory-management","title":"Memory management:","text":"
                        robot_java_args: '-Xmx8G'\n

                        Here we say that we allow ROBOT to consume up to 8GB of memory. Make sure that your docker is set up to permit at least ~20% more memory than that, i.e. 9GB or 10GB, otherwise, some cryptic Docker errors may come up.

                        "},{"location":"tutorial/setting-up-project-odk/#robot-report","title":"ROBOT Report:","text":"
                        robot_report:\n  use_labels: TRUE\n  fail_on: ERROR\n  report_on:\n    - edit\n
                        • use_labels: allows switching labels on and off in the ROBOT report
                        • fail_on: the report will fail if there is an ERROR-level violation
                        • report_on: specify which files to run the report over.

                        With this configuration, we tell ODK we want to run a report to check the quality of the ontology. Check here the complete list of report queries.

                        "},{"location":"tutorial/setting-up-project-odk/#generate-the-repo","title":"Generate the repo","text":"

                        Run the following:

                        cd ~/odk_tutorial\nsh seed-via-docker.sh -c -C cato-odk.yaml\n

                        This will create a basic layout of your repo under target/cato/*

                        Note: after this run, you wont need cato-odk.yaml anymore as it will have been added to your ontology repo, which we will see later.

                        "},{"location":"tutorial/setting-up-project-odk/#publish-on-github","title":"Publish on GitHub","text":"

                        You can now move the target/cato directory to a more suitable location. For the sake of this tutorial we will move it to the Home directory.

                        mv target/cato ~/\n
                        "},{"location":"tutorial/setting-up-project-odk/#using-github-desktop","title":"Using GitHub Desktop","text":"

                        If you use GitHub Desktop, you can now simply add this repo by selecting File -> Add local repository and select the directory you moved the repo to (as an aside, you should really have a nice workspace directory like ~/git or ~/ws or some such to organise your projects).

                        Then click Publish the repository on

                        "},{"location":"tutorial/setting-up-project-odk/#using-the-command-line","title":"Using the Command Line","text":"

                        Follow the instructions you see on the Terminal (they are printed after your seed-my-repo run).

                        "},{"location":"tutorial/setting-up-project-odk/#finish","title":"Finish!","text":"

                        Congratulations, you have successfully jump-started your very own ODK repository and can start developing.

                        "},{"location":"tutorial/setting-up-project-odk/#next-steps","title":"Next steps:","text":"
                        1. Start editing ~/cato/src/ontology/cato-edit.owl using Protege.
                        2. Run a release
                        "},{"location":"tutorial/sparql-report-odk/","title":"Generating SPARQL table reports with ODK","text":"

                        This tutorial will teach you how to create report tables using SPARQL and the ODK. Report tables are TSV files that can be viewed by programs such as Excel or Google Sheets.

                        For a tutorial on how to generate reports independent of ODK please see here.

                        "},{"location":"tutorial/sparql-report-odk/#preparation","title":"Preparation","text":"
                        • You are set up for executing ODK workflows
                        • We assume you have a modern ODK-based repository (ODK version >= 1.2.32) set up. For a tutorial on creating a new ontology repo from scratch see here.
                        • Finish the ROBOT tutorial on queries
                        "},{"location":"tutorial/sparql-report-odk/#tutorial","title":"Tutorial","text":""},{"location":"tutorial/sparql-report-odk/#adding-a-configuration-to-the-odk-yaml-file","title":"Adding a configuration to the ODK YAML file:","text":"
                        robot_report:\n  custom_sparql_exports:\n    - basic-report\n    - my-cat-report\n

                        This will tell the ODK that you no longer wish to generate the ODK default reports (synonyms, xrefs, etc), but instead:

                        1. One of the custom reports (basic-report)
                        2. and a new custom report, called my-cat-report.

                        Now, we can apply these changes as usual:

                        sh run.sh make update_repo\n
                        "},{"location":"tutorial/sparql-report-odk/#adding-the-actual-table-report","title":"Adding the actual table report","text":"

                        Similar to our ROBOT tutorial on queries, let us now add a simple table report for the terms and labels in our ontology. To do that, let us safe the following file in our src/sparql directory (standard ODK setup), i.e. src/sparql/my-cat-report.sparql (you must use the same name as the one you speciefied in your ODK yaml file above):

                        PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nPREFIX owl: <http://www.w3.org/2002/07/owl#>\n\nSELECT ?term ?property ?value\nWHERE {\n  ?term a owl:Class ;\n  rdfs:label ?value .\n}\n

                        Now, let's generate our report (you have to be, as always, in src/ontology/):

                        sh run.sh make custom_reports\n

                        This will generate all custom reports you have configured in one go and save them in the src/ontology/reports directory. reports/my-cat-report.tsv looks probably something like this for you:

                        ?term   ?property   ?value\n<http://purl.obolibrary.org/obo/CATO_0000000>       \"root node\"@en\n...\n

                        That is all there is. You can configure as many reports as you want, and they will all be generated with the custom_reports command above, or as part of your ontology releases.

                        "},{"location":"tutorial/sparql-report-robot/","title":"Generating SPARQL table reports with ROBOT","text":""},{"location":"tutorial/sparql-report-robot/#preparation","title":"Preparation","text":"
                        • You should be able to run ROBOT.
                        "},{"location":"tutorial/sparql-report-robot/#overview","title":"Overview:","text":"

                        Creating table outputs from your ontology helps with many issues, for example during ontology curation (it is often easier to look at tables of related ontology terms rather than a hierarchy), for data aggregation (you want to know how many synonyms there are, and which) and simply to share \"a list of all terms with labels\". There are two major tools to help here:

                        • ROBOT export: Exporting standardised tables for typical use cases, like labels, definitions and similar. For details, please look at the documentation which should provide all the information for producing table reports.
                        • ROBOT query: Generating reports using SPARQL. This is the focus of the tutorial here.
                        "},{"location":"tutorial/sparql-report-robot/#download-test-ontology","title":"Download test ontology","text":"

                        Download example.owl, or get it via the command line:

                        curl https://raw.githubusercontent.com/OBOAcademy/obook/master/docs/tutorial/robot_tutorial_qc/example.owl > example.owl\n

                        Let us ensure we are using the same ROBOT version:

                        robot --version\n

                        We see:

                        ROBOT version 1.8.3\n
                        "},{"location":"tutorial/sparql-report-robot/#generating-a-simple-report","title":"Generating a simple report","text":"

                        Very frequently, we wish need to create summary tables (for a more detailed motivation see here).

                        Here, lets generate a simple report table by specifying a query:

                        PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\nSELECT ?term ?property ?value\nWHERE {\n  ?term rdfs:label ?value .\n}\n

                        Let us safe the query as labels.sparql in our working directory.

                        Let's now generate the report:

                        robot query -i example.owl --query labels.sparql labels.tsv\n

                        When looking at labels.tsv (in a text editor, or Excel, or whatever table editor you prefer), we notice that some properties are included in our list and decide to change that by restricting the results to classes:

                        PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\nPREFIX owl: <http://www.w3.org/2002/07/owl#>\n\nSELECT ?term ?property ?value\nWHERE {\n  ?term a owl:Class ;\n  rdfs:label ?value .\n}\n

                        Now, when running the robot query command again, we see only the terms we want.

                        Note that you could have achieved all this with a simple ROBOT export command. However, there are many cool ways you can tweak your reports when you learn how to build them manually during SPARQL. Your only limit is essentially SPARQL itself, which gives you access too most things in your ontology, aside from perhaps complex logical axioms.

                        "},{"location":"tutorial/sparql/","title":"Basic SPARQL for OBO Engineers","text":"

                        In this tutorial we introduce SPARQL, with a particular spin on how we use it across OBO ontologies. Following this tutorial should give you a sense of how we use SPARQL across OBO, without going too much into technical details. You can find concrete tutorials on how to generate reports or QC checks with ROBOT and ODK towards the end of this page.

                        "},{"location":"tutorial/sparql/#preparation","title":"Preparation","text":"
                        • Watch Linked Data Engineering: Querying RDF with SPARQL
                        • Complete Running Basic SPARQL Queries tutorial (~45 minutes - 1 hour)
                        "},{"location":"tutorial/sparql/#sparql-tools-for-obo-engineers","title":"SPARQL tools for OBO Engineers","text":"
                        • RENCI Ubergraph Endpoint: Many key OBO ontologies are loaded here with lots of materialised inferences (docs).
                        • Ontobee SPARQL endpoint: Useful to run queries across all OBO Foundry ontologies.
                        • Yasgui: Yasgui is a simple and beautiful front-end for SPARQL endpoints which can be used not only to query, but also to share queries with others. For example this simple SPARQL query runs across the RENCI Ubergraph Endpoint.
                        • GTF: A UI that allows one to run SPARQL queries on TTL files on the web, or upload them. Looks like its based on Yasgui, as it shares the same share functionality.
                        • ROBOT query: ROBOT method to generate TSV reports from SPARQL queries, and applying data transformations (--update). ROBOT uses Jena internally to execute SPARQL queries.
                        • ROBOT verify: ROBOT method to run SPARQL QC queries. If the query returns a result, the QC test fails.
                        • ROBOT report: ROBOT report is a more powerful approach to running OBO QC queries. The default OBO report which ships with ROBOT can be customised by changing the error level, removing a test entirely and even extending the report to custom (SPARQL) checks. Robot report can generate beautiful HTML reports which are easy to read.
                        "},{"location":"tutorial/sparql/#sparql-in-the-obo-sphere","title":"SPARQL in the OBO-sphere","text":"

                        SPARQL has many uses in the OBO-sphere, but the following in particular:

                        1. Quality control checking
                        2. Creating summary tables for ontologies
                        3. Sophisticated data transformations in ontology pipelines

                        We will discuss each of these in the following and give examples. An informal discussion of SPARQL in OBO can be followed in video below.

                        "},{"location":"tutorial/sparql/#quality-control-checking","title":"Quality control checking","text":"

                        For us, ROBOT + SPARQL were a game changer for our quality control (QC) pipelines. This is how it works. First, we encode the error in the form of a SPARQL query (we sometimes call this \"anti-pattern\", i.e. an undesirable (anti-) representation). For example, the following check simply looks for entities that have more than one definition:

                        PREFIX obo: <http://purl.obolibrary.org/obo/>\nPREFIX owl: <http://www.w3.org/2002/07/owl#>\n\nSELECT DISTINCT ?entity ?property ?value WHERE {\n  VALUES ?property { obo:IAO_0000115\n                     obo:IAO_0000600 }\n  ?entity ?property ?value .\n  ?entity ?property ?value2 .\n  FILTER (?value != ?value2)\n  FILTER NOT EXISTS { ?entity owl:deprecated true }\n  FILTER (!isBlank(?entity))\n}\nORDER BY ?entity\n

                        This is a typical workflow. Think of an ontology editor working on an ontology. Often, that curator notices that the same problem happens repeatedly and tell us, the Ontology Pipeline Developer, that they would like a check to prevent the error. We then capture the erroneous situation as a SPARQL query. Then, we add it to our ontology repository, and execute it with ROBOT report or ROBOT verify (see above) in our CI pipelines, usually based on GitHub actions or Travis. Note that the Ontology Development Kit provides a built-in framework for for such queries build on ROBOT verify and report.

                        "},{"location":"tutorial/sparql/#creating-summary-tables-for-ontologies","title":"Creating summary tables for ontologies","text":"

                        Many times, we need to create tabular reports of our ontologies to share with stakeholders or to help with internal reviews, e.g.:

                        • create lists of ontology terms with their definitions and labels
                        • create summaries of ontologies, like aggregate statistics

                        Sometimes using Yasgui, for example in conjunction with the RENCI Ubergraph Endpoint, is enough, but often, using ROBOT query is the better choice, especially if you want to make sure the right version of the ontology is used (Ubergraph occasionally is out of date).

                        Using ROBOT in conjunction with a Workflows Automation system like Github actions helps with generating up-to-date reports. Here is an example of a GitHub action that generates a few reports with ROBOT and pushes them back to the repository.

                        "},{"location":"tutorial/sparql/#a-note-for-data-scientists","title":"A note for Data Scientists","text":"

                        In many cases we are asked how to best \"load an ontology\" into a python notebook or similar. Very often the answer is that it is best to first extract the content of the ontology into a table form, and then load it using a CSV reader like pandas. In this scenario, the workflow for interacting with ontologies is:

                        1. Define the information you want in the form of a SPARQL query.
                        2. Extract the the information as a TSV table using ROBOT query.
                        3. Load the information into your notebook.

                        If combined with for example a Makefile, you can always ensure that the report generation process is fully reproducible as well.

                        "},{"location":"tutorial/sparql/#sophisticated-data-transformations-in-ontology-pipelines","title":"Sophisticated data transformations in ontology pipelines","text":"

                        Lastly, we use ROBOT query to implement complex ontology transformation processes. For example the following complex query transforms related synonyms to exact synonyms if some complex condition is met:

                        prefix owl: <http://www.w3.org/2002/07/owl#>\nprefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>\nprefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\nDELETE {\n  ?term oboInOwl:hasRelatedSynonym ?related .\n  ?relax a owl:Axiom ;\n       owl:annotatedSource ?term ;\n       owl:annotatedProperty oboInOwl:hasRelatedSynonym ;\n       owl:annotatedTarget ?related ;\n       oboInOwl:hasDbXref ?xref2 .\n}\n\nINSERT {\n  ?relax a owl:Axiom ;\n       owl:annotatedSource ?term ;\n       owl:annotatedProperty oboInOwl:hasExactSynonym ;\n       owl:annotatedTarget ?related ;\n       oboInOwl:hasDbXref ?xref2 .\n}\nWHERE\n{\n  {\n    ?term oboInOwl:hasRelatedSynonym ?related ;\n      oboInOwl:hasExactSynonym ?exact ;\n      a owl:Class .\n      ?exax a owl:Axiom ;\n           owl:annotatedSource ?term ;\n           owl:annotatedProperty oboInOwl:hasExactSynonym ;\n           owl:annotatedTarget ?exact ;\n           oboInOwl:hasDbXref ?xref1 .\n      ?relax a owl:Axiom ;\n           owl:annotatedSource ?term ;\n           owl:annotatedProperty oboInOwl:hasRelatedSynonym ;\n           owl:annotatedTarget ?related ;\n           oboInOwl:hasDbXref ?xref2 .\n\n    FILTER (str(?related)=str(?exact))\n    FILTER (isIRI(?term) && regex(str(?term), \"^http://purl.obolibrary.org/obo/MONDO_\"))\n  }\n}\n

                        This can be a very useful tool for bulk editing the ontology, in particular where it is difficult or impossible to achieve the same using regular expressions or other forms of \"replacement\"-techniques. Here are some example queries we collected to do such mass operations in Mondo.

                        "},{"location":"tutorial/sparql/#related-tutorials","title":"Related tutorials","text":"
                        • QC checks with ROBOT
                        • Generating SPARQL table reports with ROBOT
                        • Generating SPARQL table reports with ODK
                        "},{"location":"tutorial/sssom-toolkit/","title":"Introduction to the SSSOM Toolkit","text":"
                        • A basic tutorial
                        • Documentation
                        "},{"location":"tutorial/sssom-tutorial/","title":"Practical introduction to SSSOM","text":""},{"location":"tutorial/sssom-tutorial/#tutorials-and-explainers","title":"Tutorials and Explainers","text":"
                        • Introduction to mapping curation with SSSOM
                        • How to use mapping predicates?
                        • Guide to publishing 5-Star mappings
                        "}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 000000000..5e915a933 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,778 @@ + + + + https://oboacademy.github.io/obook/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/contributing/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/getting-started-obook/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/getting-started/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/overview/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/config/template/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/courses/icbo2021/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/courses/icbo2022/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/courses/icbo2023/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/courses/monarch-obo-training/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/courses/ontology-summit-2023/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/annotation-properties/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/existential-restrictions/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/intro-to-ontologies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/logical-axiomatization/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/ontology-matching/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/owl-building-blocks/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/owl-format-variants/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/subClassOf-vs-equivalentTo/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/taxon-constraints-explainer/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/term-comments/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/which-ontology-to-use/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/explanation/writing-good-issues/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/add-new-slim/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/add-taxon-restrictions/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/are-two-entities-the-same/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/change-files-pull-request/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/clone-mondo-repo/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/create-new-term/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/create-ontology-from-scratch/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/daily-curator-workflow/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/deal-with-large-ontologies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/deploy-custom-obo-dashboard/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/edit-in-protege/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/embed-video/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/filter-text-file/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/fixing-conflicts/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/github-actions/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/github-create-fork/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/github-create-pull-request/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/idrange/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/install-protege/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/installing-elk-in-protege/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/merge-terms/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/obsolete-term/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/odk-add-orcidio-module/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/odk-create-repo/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/odk-setup/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/odk-update/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/ontology-overview/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/open-science-engineer/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/prettify/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/protege-browse-search/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/revert-commit/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/review-disease-mappings/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/review-pull-request/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/screenshot/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/set-up-protege/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/setup-docker/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/setup-ontology-development-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/switching-ontologies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/term-request/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/howto/update-import/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/images/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/analysing-linked-data/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/automating-ontology-workflows/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/chatgpt-ontology-curation/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/contributing-to-obo-ontologies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/developing-an-obo-ontology/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/developing-application-ontologies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/entity-matching/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/getting-hands-on/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/hackathon/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/modelling-with-object-properties/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/ontology-design/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/ontology-development/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/ontology-fundamentals/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/ontology-pipelines/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/ontology-term-use/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/rdf/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/semantic-database-fundamentals/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/templates-for-obo/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/lesson/using-disease-and-phenotype-ontologies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/early-career-data-scientist/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/ontology-contributor/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/ontology-curator-go-style/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/ontology-curator-obi-style/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/ontology-curator/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/ontology-engineer/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/ontology-user/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/pathways/pathways/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/chatgpt-prompts-for-ontology-development/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/formatting-license/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/frequently-used-odk-commands/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/gh-actions-errors/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/git-faq/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/github-desktop/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/github-intro/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/glossary-of-terms/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/glossary/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/go-style-annotation-property-practice/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/managing-issues/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/medical-ontology-landscape/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/mungall-blog-radar/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/obook-maturity-indicator/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/ontology-curator/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/other-resources/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/outreach/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/protege-faq/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/protege-interface/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/reasoning/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/release-artefacts/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/semantic-engineering-toolbox/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/semantic-etl/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/sparql-basics/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/sparql-reference/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/synonyms-obo/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/tables-and-triples/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/troublehooting-robot/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/reference/wikidata/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/teaching/case-studies/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/basic-dl-query/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/custom-qc/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/disjointness/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/dosdp-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/dosdp-overview/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/dosdp-template/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/exomiser-tutorial/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/fhkb/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/github-fundamentals/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/github-issues/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/intro-cli-1/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/intro-cli-2/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/lexmatch-tutorial/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/linking-data/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/managing-dynamic-imports-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/managing-ontology-project/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/managing-ontology-releases-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/migrating-ontology-to-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/monarch-kg-neo4j-basics/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/odk-toolbox/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/odk-tutorial-2/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/ontogpt/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/project-ontology-development/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/pull-requests/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/robot-tutorial-1/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/robot-tutorial-2/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/robot-tutorial-qc/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/setting-up-project-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/sparql-report-odk/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/sparql-report-robot/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/sparql/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/sssom-toolkit/ + 2023-08-21 + daily + + + https://oboacademy.github.io/obook/tutorial/sssom-tutorial/ + 2023-08-21 + daily + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 000000000..e46676806 Binary files /dev/null and b/sitemap.xml.gz differ diff --git a/teaching/case-studies/index.html b/teaching/case-studies/index.html new file mode 100644 index 000000000..1f8e06f4b --- /dev/null +++ b/teaching/case-studies/index.html @@ -0,0 +1,3681 @@ + + + + + + + + + + + + + + + + + + + + + + + + Case studies for teaching - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        + + + + + + + + + + + + + +

                        Learning Outcomes for Critical Path Tutorial

                        +
                          +
                        1. Understand the value of URIs as global identifiers and the potential shortcomings.
                        2. +
                        3. Having a basic picture of the flagship efforts of the Semantic Web.
                        4. +
                        5. Being aware of some of the central Semantic Web applications in the biomedical domain.
                        6. +
                        7. Having a cursory understanding of how linked data can help to power your Critical Path data analysis problems.
                        8. +
                        +

                        Interesting Case Studies to talk about:

                        +
                          +
                        1. The Experimental Factor Ontology: from controlled vocabulary to integrated application ontology driving drug target identification.
                        2. +
                        3. From barely structured data via data dictionaries to semantic data integration:
                        4. +
                        5. International HundredK+ Cohorts Consortium (IHCC) data harmonization case study: How to get from messy, individual data dictionaries for COHORT data to an integrated resource for browsing and grouping.
                        6. +
                        7. The EJPRD story: +
                        8. +
                        +

                        EFO case study

                        +
                          +
                        1. Build controlled vocabulary
                        2. +
                        3. Look a bit at the anatomy of a term
                        4. +
                        5. So what happens now?
                            +
                          1. The story of scientific database curation
                          2. +
                          3. The integrator hub with the killer use case comes along
                          4. +
                          5. Now the vocabulary is getting “forced” onto other databases that want to be part (and have to be part)
                          6. +
                          7. The number of terms needed shoot up exponentially - external ontologies need two be integrated
                              +
                            1. Uberon
                            2. +
                            3. Mondo
                                +
                              1. Why Mondo and not DO?
                              2. +
                              +
                            4. +
                            5. Finally: better, more specialised hierarchies
                            6. +
                            7. Its hard to re-use. (Measurement story)
                            8. +
                            +
                          8. +
                          9. Output data of integrator hub can now be integrated even higher (e.g. disease to gene networks)
                          10. +
                          11. Individual sources can also be integrated individually
                          12. +
                          +
                        6. +
                        7. Stories like this happen all the time: The SCDO story
                            +
                          1. First started building a vocab
                          2. +
                          3. Then using ROBOT
                          4. +
                          5. Then linking OBO terms
                          6. +
                          7. Then applying for OBO membership
                          8. +
                          9. Then using OBO purls and re-using OBO terms
                          10. +
                          11. More to come
                          12. +
                          +
                        8. +
                        +

                        IHCC story

                        +
                          +
                        1. Cohort data are scattered and there is no easy way to group data across cohorts
                        2. +
                        3. Even just finding the right cohort can be difficult
                        4. +
                        5. Data dictionaries are often just spreadsheets on someones computer
                        6. +
                        7. Data dictionaries do not have rich metadata (you dont know data dictionary category or value pertains to a disease)
                        8. +
                        9. What to do:
                        10. +
                        11. Build controlled vocabulary
                        12. +
                        13. Map data dictionaries to a controlled vocabulary
                        14. +
                        15. Build ontological model from controlled terms rich enough to group the data for the use cases at hand
                        16. +
                        17. Design a process that makes the above scalable
                        18. +
                        19. Show examples
                        20. +
                        21. So now, we want enable the discovery of data across these cohorts.
                        22. +
                        23. Build GECKO
                        24. +
                        25. Assign data dictionary elements to IDs and publish as "Linked Data" (browse here)
                        26. +
                        27. Build mapping pipeline
                            +
                          1. Check example google sheet
                          2. +
                          3. Link IDs to ontology terms
                          4. +
                          +
                        28. +
                        29. These links can now be used to group the metadata for identifying cohorts
                        30. +
                        +

                        EJPRD story

                        +
                          +
                        1. Rare disease registries are scattered across the web and there is no easy way to search across all
                        2. +
                        3. EJPRD is developing two metadata schemas:
                        4. +
                        5. On Registry level, they are building the metadata model which is reusing some standard vocabularies such as dcat. There is not that much "semantics" here - it really is a metadata model
                        6. +
                        7. On Record level, they are building the Clinical Data Elements (CDE) Semantic Model, see for example the core model.
                        8. +
                        9. The idea is that registries publish their metadata (and eventually data) as linked data that can be easily queried using the above models. One of the most major problems is the size of the project and competing voices ("If its not RDF its not FAIR"), but also the sheer scale of the technical issue: many of the so called registries are essentially excel spreadsheets on an FTP server.
                        10. +
                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/basic-dl-query/index.html b/tutorial/basic-dl-query/index.html new file mode 100644 index 000000000..e1e7410dd --- /dev/null +++ b/tutorial/basic-dl-query/index.html @@ -0,0 +1,3674 @@ + + + + + + + + + + + + + + + + + + + + + + + + DL queries - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        + + + + + + + + + + + + + +

                        DL query

                        +

                        This tutorial is based off https://ontology101tutorial.readthedocs.io/en/latest/DL_QueryTab.html +Created by: Melissa Haendel, Chris Mungall, David Osumi-Sutherland, Matt Yoder, Carlo Torniai, and Simon Jupp

                        +

                        DL query tab

                        +

                        The DL query tab shown below provides an interface for querying and searching an ontology. The ontology must be classified by a reasoner before it can be queried in the DL query tab.

                        +

                        For this tutorial, we will be using cc.owl which can be found here.

                        +

                        Open cc.owl in Protege (use Open from URL and enter the https://raw.githubusercontent.com/OHSUBD2K/BDK14-Ontologies-101/master/BDK14_exercises/basic-dl-query/cc.owl). Run the reasoner. Navigate to the DL Query tab.

                        +

                        +

                        Type organelle into the box, and make sure subclasses and direct subclasses are ticked.

                        +

                        +

                        You can type any valid OWL class expression into the DL query tab. For example, to find all classes whose members are part_of a membrane, type part_of some membrane and click execute. Note the linking underscore for this relation in this ontology. Some ontologies do not use underscores for relations, whereby you'd need single quotes (i.e. part of).

                        +

                        +

                        The OWL keyword and can be used to make a class expression that is the intersection of two class expressions. For example, to find the classes in the red area below, we want to find subclasses of the intersection of the class organelle and the class endoplasmic reticulum part

                        +

                        +

                        +

                        Note that we do not need to use the part grouping classes in the gene ontology (GO). The same results can be obtained by querying for the intersection of the class organelle and the restriction part_of some ER – try this and see.

                        +

                        +

                        We can also ask for superclasses by ticking the boxes as below:

                        +

                        +

                        The or keyword is to used to create a class expression that is the union of two class expressions. For example: +(WARNING: or is not supported by ELK reasoner)

                        +

                        +

                        This is illustrated by the red area in the following Venn diagram:

                        +

                        +

                        For further exercises, please see https://ontology101tutorial.readthedocs.io/en/latest/EXERCISE_BasicDL_Queries.html

                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/custom-qc/index.html b/tutorial/custom-qc/index.html new file mode 100644 index 000000000..5b94dcbd4 --- /dev/null +++ b/tutorial/custom-qc/index.html @@ -0,0 +1,3816 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Adding custom Quality Check - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + + + + + +
                        +
                        + + + + + + + + + + + + + +

                        Tutorial: How to add custom quality checks with ODK

                        +

                        This tutorial explains adding quality checks not included in the ROBOT Report.

                        +

                        Prerequisites

                        +

                        You have completed the tutorials:

                        +
                          +
                        1. Getting started with your repo
                        2. +
                        3. 20 minute complete ODK walk-through
                        4. +
                        +

                        Custom Quality Checks

                        +
                          +
                        1. Identify a quality issue in your ontology. For the sake of this tutorial, we've added the annotation oboInOwl:creation_date to the root_node in the CAT Ontology.
                        2. +
                        +

                        root node with oboInOwl:creation_date annotation string

                        +
                          +
                        1. Write the SPARQL query to detect the error you want to check. For example, check the value type for the annotation oboInOwl:creation_date. It will return the class with the annotation if it's not of type xsd:dateTime.
                        2. +
                        +
                        PREFIX oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
                        +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
                        +
                        +SELECT ?cls WHERE
                        +{
                        +    ?cls oboInOwl:creation_date ?date .
                        +  FILTER(DATATYPE(?date) != xsd:dateTime)
                        +}
                        +
                        +
                          +
                        1. +

                          Save the SPARQL query in the src/sparql folder and name it [violation name]-violation.sparql. In the case of the tutorial, date-as-string-violation.sparql

                          +
                        2. +
                        3. +

                          Add the check to the ODK config file. In the previous tutorial, this is located at ~/cato/src/ontology/cato-odk.yaml. Inside robot_report, add custom_sparql_checks

                          +
                        4. +
                        +
                        robot_report:
                        +  use_labels: TRUE
                        +  fail_on: ERROR
                        +  report_on:
                        +    - edit
                        +  custom_sparql_checks:
                        +    - date-as-string
                        +
                        +
                          +
                        1. Update the repository. After adding the custom SPARQL check, you need to update your pipeline to take this check when testing the ontology.
                        2. +
                        +
                        sh run.sh make update_repo
                        +
                        +
                          +
                        1. Test the check. You can run the checks and verify the expected result.
                        2. +
                        +

                        sh run.sh make sparql_test
                        +FAIL Rule ../sparql/date-as-string-violation.sparql: 1 violation(s)
                        +cls
                        +http://purl.obolibrary.org/obo/CATO_0000000
                        +
                        +To fix this issue, we need to change the annotation value to xsd:dateTime, and run the test again to certify everything is good this time.

                        +

                        root node with oboInOwl:creation_date annotation xsd:dateTime

                        +
                        sh run.sh make sparql_test
                        +PASS Rule ../sparql/date-as-string-violation.sparql: 0 violation(s)
                        +
                        +

                        Push the changes to your repository, and the custom checks will run whenever creating a new Pull Request, as detailed here.

                        +

                        Custom checks available in ODK

                        +

                        There are several checks already available in the ODK. If you'd like to add them, add the validation name in your ODK config file.

                        +
                          +
                        1. owldef-self-reference: verify if the term uses its term as equivalent
                        2. +
                        3. redundant-subClassOf: verify if there are redundant subclasses between three classes
                        4. +
                        5. taxon-range: verify if the annotations present_in_taxon or never_in_taxon always use classes from NCBITaxon
                        6. +
                        7. iri-range: verify if the value for the annotations never_in_taxon, present_in_taxon, foaf:depicted_by, oboInOwl:inSubset and dcterms:contributor are not an IRI
                        8. +
                        9. iri-range-advanced: same as iri-range plus check for rdfs:seeAlso annotation
                        10. +
                        11. label-with-iri: verify if there is IRI in the label
                        12. +
                        13. multiple-replaced_by: verify if an obsolete term has multiple replaced_by terms
                        14. +
                        15. term-tracker-uri: verify if the value for the annotation term_tracker_item is not URI
                        16. +
                        17. illegal-date: verify if the value for the annotations dcterms:date, dcterms:issued and dcterms:created are of type xds:date and use the pattern YYYY-MM-DD
                        18. +
                        +

                        Custom ROBOT Report in ODK

                        +

                        ROBOT report can also have custom quality checks.

                        +
                          +
                        1. First, you need to add custom_profile: TRUE, in the ODK config file.
                        2. +
                        +

                        robot_report:
                        +  use_labels: TRUE
                        +  fail_on: ERROR
                        +  custom_profile: TRUE
                        +  report_on:
                        +    - edit
                        +  custom_sparql_checks:
                        +    - date-as-string
                        +
                        +2. Create a SPARQL query with your quality check and save it at src/sparql. There isn't a restriction on the file name. However, it should return the variables ?entity ?property ?value.

                        +
                        SELECT DISTINCT ?entity ?property ?value 
                        +WHERE {
                        +  ...
                        +}
                        +
                        +
                          +
                        1. Add the path to the SPARQL query in the src/ontology/profile.txt file.
                        2. +
                        +

                        ERROR   file:../sparql/<file name>.sparql
                        +
                        +For more detail on the profile file, see here.

                        +
                          +
                        1. Test your check. You'll find the failed cases on the same report for the ROBOT report at src/ontology/reports/cato-edit.owl-obo-report.tsv. The Rule Name will be the SPARQL file name.
                        2. +
                        +
                        sh run.sh make test
                        +
                        +

                        How to choose between Custom SPARQL or Custom ROBOT report

                        +
                          +
                        • If your test can return the exact three variables entity, property and value -> ROBOT report
                        • +
                        • If you need to return more detailed information -> Custom SPARQL
                        • +
                        • If you want the results of your custom tests in the ROBOT report file -> ROBOT report
                        • +
                        +

                        Keep in mind that after changing the profile.txt, you won't get any upcoming updates, and you need to update manually.

                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/disjointness/index.html b/tutorial/disjointness/index.html new file mode 100644 index 000000000..3faabc9ce --- /dev/null +++ b/tutorial/disjointness/index.html @@ -0,0 +1,3687 @@ + + + + + + + + + + + + + + + + + + + + + + + + Disjointness - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        + + + + + + + + + + + + + +

                        Disjointness

                        +

                        This tutorial is based off https://ontology101tutorial.readthedocs.io/en/latest/Disjointness.html +Created by: Melissa Haendel, Chris Mungall, David Osumi-Sutherland, Matt Yoder, Carlo Torniai, and Simon Jupp

                        +

                        For this excercise, we will be using chromosome-parts-interim.owl file that can be found here

                        +

                        Disjointness

                        +

                        In the chromosome-parts-interim.owl file, at the top of our class hierarchy we have cell, cell part, chromosomal part, intracellular part, organelle and organelle part. By default, OWL assumes that these classes can overlap, i.e. there are individuals who can be instances of more than one of these classes. We want to create a restriction on our ontology that states these classes are different and that no individual can be a member of more than one of these classes. We can say this in OWL by creating a disjoint classes axiom.

                        +

                        If you do not already have it open, load your previous ontology that was derived from the 'interim file'. Note: you can open a recent file by going to File-> Open Recent

                        +

                        We want to assert that organelle and organelle part are disjoint. To do this first select the organelle class. In the class 'Description' view, scroll down and select the (+) button next to Disjoint With. You are presented with the now familiar window allowing you to select, or type, to choose a class. In the hierarchy panel, you can use CTRL to select multiple classes. Select 'organelle part' as disjoint with organelle.

                        +

                        +

                        Note that the directionality is irrelevant. Prove this to yourself by deleting the disjoint axiom, and adding it back from organelle part.

                        +

                        Reasoning and inconsistency checking

                        +

                        We have introduced a deliberate mistake into the ontology. We previously asserted that intracellular organelle part is a subclass of both organelle part and organelle. We have now added an axiom stating that organelle and organelle part are disjoint. We can use the reasoner to check the consistency of our ontology. The reasoner should detect our contradiction.

                        +

                        Protégé comes with several reasoners, and more can be installed via the plugins mechanism (see plugins chapter). Select a reasoner from the Reasoner menu (Elk, HermiT, Pellet, or Fact++ will work - we mostly use ELK). Once a reasoner is highlighted, select 'Start reasoner' from the menu. Note: you may get several pop-boxes/warnings, ignore those.

                        +

                        The intracellular organelle part class will have changed to red indicating that the class is now unsatisfiable.

                        +

                        +

                        You can also see unsatisfiable classes by switching to the inferred view.

                        +

                        +

                        Here you will a special class called Nothing. When we previously said that all OWL classes are subclasses of OWL Thing. OWL Nothing is a leaf class or bottom class of your ontology. Any classes that are deemed unsatisfiable by the reasoner are shown as subclasses or equivalent to OWL Nothing. The inferred view will show you all subclasses of Nothing.

                        +

                        +

                        Once the ontology is classified, inferred statements or axioms are shown in the various panels with a light-yellow shading. The class description for intracellular organelle part should look something like the screen shot below. You will see that the class has been asserted equivalent to the Nothing class. Inside this statement, a small question mark icon appears, clicking this will get an explanation from the reasoner for this inconsistency.

                        +

                        +

                        Select the (?) icon to get an explanation for this inconsistency. The explanation shows the axioms involved. We see the disjoint class axiom alongside the two subclass axioms are causing the inconsistency. We can simply repair this ontology by removing the intracellular organelle part subClassOf organelle axiom.

                        +

                        +

                        Remove the Disjoint with axiom (click the (x) beside organelle in the Description pane for intracellular organelle part), and resynchronise the reasoner from the reasoner menu.

                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/dosdp-odk/index.html b/tutorial/dosdp-odk/index.html new file mode 100644 index 000000000..8d396db72 --- /dev/null +++ b/tutorial/dosdp-odk/index.html @@ -0,0 +1,4066 @@ + + + + + + + + + + + + + + + + + + + + + + + + Introduction to Managing DOSDP Templates in ODK - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + + + + + +
                        +
                        + + + + + + + + + + + + + +

                        Using DOSDP templates in ODK Workflows

                        +

                        Preparation

                        +
                          +
                        • You are set up for executing ODK workflows
                        • +
                        • We assume you have a modern ODK-based repository (ODK version >= 1.2.32) set up. For a tutorial on creating a new ontology repo from scratch see here.
                        • +
                        • We assume you have completed at least one of the general DOSDP tutorials.
                        • +
                        +

                        Tutorial

                        + +

                        Video

                        +

                        This is a very unprofessional video below recorded as part of one of our trainings. It walks you through this tutorial here, with some additional examples being given and a bit of Q&A.

                        + + +

                        Glossary

                        +
                          +
                        • Template: A document with template strings that include variables which can be instantiated my a tool. For example, a ROBOT template may contain the template string SC 'part of' some % which can be instantiated by ROBOT to be transformed into an OWL axiom: SubClassOf(CATO:001 ObjectSomeValuesFrom(BFO:0000051 UBERON:123)). Similarly, DOSDP YAML files are often referred to as "templates" (which is appropriate). Unfortunately, we often refer to them as "patterns" which is not strictly the right way to name them: they are templates that encode patterns (and that only to a limited extend). We recommend to refer to the DOSDP YAML files as "templates".
                        • +
                        • Template string: See above: a single string with one or more slots for variables that can be instantiated and transformed into something else. The most important template string in DOSDP is the equivalentTo or subClassOf field: It tells DOSDP tools how to generate an OWL axiom, with which variable slots (vars).
                        • +
                        • Pattern: See above, often misused to mean Template. In fact, a pattern provides a general modelling solution to a problem. Patterns can often be encoded in templates, but this is often incomplete. For example, a template typically does not care about the semantics of the properties it refers to, while this is critical for a pattern. (Avoid using this when talking about DOSDP YAML files).
                        • +
                        • DOSDP template table: The spreadsheet (typically TSV or CSV) that contains the DOSDP variable data. The DOSDP template table is applied to the template string in the template to generate a set of OWL axioms and annotation assertions.
                        • +
                        +

                        Preparation

                        +

                        This tutorial assumes you have set up an ODK repo with this config:

                        +
                        id: cato
                        +title: "Cat Anatomy Ontology"
                        +github_org: obophenotype
                        +git_main_branch: main
                        +repo: cat_anatomy_ontology
                        +release_artefacts:
                        +  - base
                        +  - full
                        +  - simple
                        +primary_release: full
                        +export_formats:
                        +  - owl
                        +  - obo
                        +  - json
                        +import_group:
                        +  products:
                        +    - id: ro
                        +    - id: pato
                        +    - id: omo
                        +robot_java_args: '-Xmx8G'
                        +
                        +

                        +

                        Activate DOSDP in ODK

                        +

                        In your src/ontology/{yourontology}-odk.yaml file, simply add the following:

                        +
                        use_dosdps: true
                        +
                        +

                        This flag activates DOSDP in ODK - without it, none of the DOSDP workflows in ODK can be used. Technically, this flag tells ODK the following things:

                        +
                          +
                        1. The src/ontology/Makefile is extended as follows:
                        2. +
                        3. A set of pipelines, or workflows, for processing patterns, e.g. pattern_schema_checks for validating all DOSDP templates,patterns to regenerate all patterns.
                        4. +
                        5. A new directory, src/patterns, is created with the following files:
                        6. +
                        7. src/patterns/pattern.owl: This is an ontology of your own patterns. This can be used to browse the your pattern in the form of a class hierarchy, which can help greatly to understand how they relate logically. There are some flaws in this system, like occasional unintended equivalencies between patterns, but for most uses, it is doing ok.
                        8. +
                        9. src/patterns/definitions.owl: This is the merged ontology of all your DOSDP generated classes. Basically, if you manage your classes across multiple DOSDP patterns and tables, their generated OWL axioms will all be added to this file.
                        10. +
                        11. src/patterns/external.txt: This file can be used to import external patterns. Just add the (p)URL to a pattern to the file, and the DOSDP pipeline will import it when you run it. We use this a lot when sharing DOSDP templates across ontologies.
                        12. +
                        13. Two README files: one in the directory of the default DOSDP data pipeline (src/patterns/data/default/) and one in the src/patterns directory. The former points you to the place where you should put, by default, any DOSDP data tables. More about that in the next sections.
                        14. +
                        +

                        To fully activate DOSDP in your ontology, please run:

                        +
                        sh run.sh make update_repo
                        +
                        +

                        This will:

                        +
                          +
                        1. Update your ontology repository to whatever ODK you have installed in docker (v1.3, for example)
                        2. +
                        3. Apply any changes to your configuration file. For example, the fact that you have activated the DOSDP pipeline in your config file will lead to the ODK extending your Makefile in certain ways
                        4. +
                        +

                        +

                        Adding a first, simple template

                        +

                        (1) Create a new file src/patterns/dosdp-patterns/haircoat_colour_pattern.yaml and paste the following content:

                        +
                        pattern_name: haircoat_colour_pattern
                        +pattern_iri: http://purl.obolibrary.org/obo/obo-academy/patterns/haircoat_colour_pattern.yaml
                        +
                        +description: "
                        +  Captures the multicoloured characteristic of the fur, i.e. spotted, dotted, motley etc."
                        +
                        +classes:
                        +  colour_pattern: PATO:0001533
                        +  coat_of_hair: UBERON:0010166
                        +
                        +relations:
                        +  has_characteristic: RO:0000053
                        +
                        +vars:
                        +  colour_pattern: "'colour_pattern'"
                        +
                        +name:
                        +  text: "%s coat of hair"
                        +  vars:
                        +    - colour_pattern
                        +
                        +def:
                        +  text: "A coat of hair with a %s colour pattern."
                        +  vars:
                        +    - colour_pattern
                        +
                        +equivalentTo:
                        +  text: "'coat_of_hair' and 'has_characteristic' some %s"
                        +  vars:
                        +    - colour_pattern
                        +
                        +

                        (2) Let's also create a simple template table to capture traits for our ontology.

                        +

                        Note: the filename of the DOSDP template file (haircoat_colour_pattern.yaml) excluding the extension must be identical +to the filename of the template table (haircoat_colour_pattern.tsv) excluding the extension.

                        +

                        Let's create the new file at src/patterns/data/default/haircoat_colour_pattern.tsv.

                        +
                        defined_class   colour_pattern
                        +CATO:0000001    PATO:0000333
                        +
                        +

                        We are creating a minimal table here with just two columns:

                        +
                          +
                        • defined_class refers to the ID for the term that is being modelled by the template (mandatory for all DOSDP templates)
                        • +
                        • colour_pattern refers to the variable of the same name specified in the vars: section of the DOSDP template YAML file.
                        • +
                        +

                        DOSDP generate: Turning the template tables into OWL axioms

                        +

                        Next, we will get a bit used to various commands that help us with DOSDP-based ontology development.

                        +

                        Lets first try to transform the simple table above to OWL using the ODK pipeline (we always use IMP=false to skip refreshing imports, which can be a lengthy process):

                        +
                        sh run.sh make ../patterns/definitions.owl -B IMP=false
                        +
                        +

                        This process will will create the ../patterns/definitions.owl file, which is the file that contains all axioms generated by all templates you have configured. In our simple scenario, this means a simple single pattern. Let us look at definitions.owl in your favourite text editor first.

                        +
                        Tip: Remember, the `-B` tells `make` to run the make command no matter what - one of the advantages of `make` is that it only runs a command again if something changed, for example, you have added something to a DOSDP template table.
                        +
                        +
                        Tip: Looking at ontologies in text editors can be very useful, both to reviewing files and making changes! Do not be afraid, the ODK will ensure you wont break anything.
                        +
                        +

                        Let us look in particular at the following section of the definitions.owl file:

                        +
                        # Class: <http://purl.obolibrary.org/obo/CATO_0000001> (http://purl.obolibrary.org/obo/PATO_0000333 coat of hair)
                        +
                        +AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/CATO_0000001> "A coat of hair with a http://purl.obolibrary.org/obo/PATO_0000333 colour pattern."^^xsd:string)
                        +AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CATO_0000001> "http://purl.obolibrary.org/obo/PATO_0000333 coat of hair"^^xsd:string)
                        +EquivalentClasses(<http://purl.obolibrary.org/obo/CATO_0000001> ObjectIntersectionOf(<http://purl.obolibrary.org/obo/UBERON_0010166> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000053> <http://purl.obolibrary.org/obo/PATO_0000333>)))
                        +
                        +

                        These are the three axioms / annotation assertions that were created by the DOSDP pipeline. The first annotation is a simple automatically generated definition. What is odd at first glance, is that the definition reads "A coat of hair with a http://purl.obolibrary.org/obo/PATO_0000333 colour pattern." - what does the PATO:0000333 IRI do in the middle of our definition? Understanding this is fundamental to the DODSP pattern workflow, because it is likely that you will have to fix cases like this from time to time.

                        +

                        The DOSDP workflow is about generating axioms automatically from existing terms. For example, in this tutorial we are trying to generate terms for different kinds of hair coats for our cats, using the colour pattern (PATO:0001533) hierarchy in the PATO ontology as a basis. The only one term we have added so far is spotted (PATO:0000333). The problem is though, that dosdp-tools, the tool which is part of the ODK and responsible for the DOSDP workflows, does not know anything about PATO:0000333 unless it is already imported into the ontology. In order to remedy this situation, lets import the term:

                        +
                        sh run.sh make refresh-pato
                        +
                        +

                        ODK will automatically see that you have used PATO:0000333 in your ontology, and import it for you. Next, let us make sure that the our edit file has the correct import configured. Open your ontology in a text editor, and make sure you can find the following import statement:

                        +
                        Import(<http://purl.obolibrary.org/obo/cato/patterns/definitions.owl>)
                        +
                        +

                        Replace cato in the PURL with whatever is the ID of your own ontology. Also, do not forget to update src/ontology/catalog-v001.xml, by adding this line:

                        +
                        <group id="Folder Repository, directory=, recursive=false, Auto-Update=false, version=2" prefer="public" xml:base="">
                        +...
                        +<uri name="http://purl.obolibrary.org/obo/cato/patterns/definitions.owl" uri="../patterns/definitions.owl"/>
                        +...
                        +</group>
                        +
                        +

                        Important: Remember that we have not yet told dosdp-tools about the freshly imported PATO:0000333 term. To do that, lets run the DOSDP pipeline again:

                        +
                        sh run.sh make ../patterns/definitions.owl -B IMP=false
                        +
                        +

                        A quick look at src/patterns/definitions.owl would now reveal your correctly formatted definitions:

                        +
                        AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/CATO_0000001> "A coat of hair with a spotted colour pattern."^^xsd:string)
                        +
                        +

                        Now, we are ready to view our ontology (the edit file, i.e. src/ontology/cato-edit.owl) in Protege:

                        +

                        DOSDP Spotted Coat in Protege

                        +

                        Still a few things to iron out - there is an UBERON term that we still need to import, and our class is not a subclass of the CATO root node, but we had a good start.

                        +

                        Re-using externally defined patterns

                        +

                        Re-using terms is at the heart of the OBO philosophy, but when it comes to re-using axiom patterns, such as the ones we can define as part of a ROBOT template, we are (as of 2022) still in the early stages. One thing we can do to facilitate re-use is to share DOSDP templates between different projects. We do that by simply adding the URL at which the pattern is located to src/patterns/dosdp-patterns/external.txt. Note: if you are copying a URL from GitHub, make sure it is the raw url, i.e.:

                        +
                          +
                        • src/patterns/dosdp-patterns/external.txt
                        • +
                        +
                        https://raw.githubusercontent.com/obophenotype/bio-attribute-ontology/master/src/patterns/dosdp-patterns/entity_attribute.yaml
                        +
                        +

                        Here, we randomly decided to import a pattern defined by the Ontology of Biological Attributes (an ontology of traits such as tail length or head size), for example to represent cat traits in our Cat Ontology. After adding the above URL to our the external.txt file, we can add it to our pipeline:

                        +
                        sh run.sh make update_patterns
                        +
                        +

                        You will now see the entity_attribute.yaml template in src/patterns/dosdp-patterns. We will not do anything with this template as part of this tutorial, so you can remove it again if you wish (by removing the URL from the external.txt file and physically deleting the src/patterns/dosdp-patterns/entity_attribute.yaml file).

                        +

                        DOSDP pipelines in ODK

                        +

                        Sometimes, we want to manage more than one DOSDP pipeline at once. For example, in more than one of our projects, we have some patterns that are automatically generated by software tools, and others that are manually curated by ontology developers. In other use cases, we sometimes want to restrict the pattern pipelines to generating only logical axioms. In either case, we can add new pipelines by adding the following to the src/ontology/youront-odk.yaml file:

                        +
                        pattern_pipelines_group:
                        +  products:
                        +    - id: manual
                        +      dosdp_tools_options: "--obo-prefixes=true --restrict-axioms-to=logical"
                        +    - id: auto
                        +      dosdp_tools_options: "--obo-prefixes=true"
                        +
                        +

                        This does the following: It tells the ODK that you want

                        +

                        Reference

                        +

                        A full example ODK configuration

                        +
                        id: cato
                        +title: "Cat Anatomy Ontology"
                        +github_org: obophenotype
                        +git_main_branch: main
                        +use_dosdps: TRUE
                        +repo: cat_anatomy_ontology
                        +release_artefacts:
                        +  - base
                        +  - full
                        +  - simple
                        +primary_release: full
                        +export_formats:
                        +  - owl
                        +  - obo
                        +  - json
                        +import_group:
                        +  products:
                        +    - id: ro
                        +    - id: pato
                        +    - id: omo
                        +robot_java_args: '-Xmx8G'
                        +pattern_pipelines_group:
                        +  products:
                        +    - id: manual
                        +      dosdp_tools_options: "--obo-prefixes=true --restrict-axioms-to=logical"
                        +    - id: auto
                        +      dosdp_tools_options: "--obo-prefixes=true"
                        +
                        +

                        ODK configuration reference for DOSDP

                        + + + + + + + + + + + + + + + + + +
                        FlagExplanation
                        use_dosdps: TRUEActivates DOSDP in your ODK repository setup
                        pattern_pipelines_group:
                        products:
                        - id: manual
                        dosdp_tools_options: "--obo-prefixes=true --restrict-axioms-to=logical"
                        Adding a manual pipeline to your DOSDP setup in which only logical axioms are generated.
                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/dosdp-overview/index.html b/tutorial/dosdp-overview/index.html new file mode 100644 index 000000000..1722c6c9c --- /dev/null +++ b/tutorial/dosdp-overview/index.html @@ -0,0 +1,3968 @@ + + + + + + + + + + + + + + + + + + + + + + + + Getting started with DOSDP templates - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        + + + + + + + + + + + + + +

                        Getting started with DOSDP templates

                        +

                        Dead Simple OWL Design patterns (DOSDP) is a templating system for documenting and generating new OWL classes. The templates themselves are designed to be human readable and easy to author. Separate tables (TSV files) are used to specify individual classes.

                        +

                        The complete DOSDP documentation can be found here http://incatools.github.io/dead_simple_owl_design_patterns/.

                        +

                        For another DOSDP tutorial see here.

                        +

                        Anatomy of a DOSDP file:

                        +

                        A DOSDP tempaltes are written in YAML) file, an easily editable format for encoding nested data structures. At the top level of nesting is a set of 'keys', which must match those specified in the DOSDP standard. The various types of key and their function are outlined below. Each key is followed by a colon and then a value, which may be a text string, a list or another set of keys. Lists items are indicated using a '-'. Nesting is achieved via indenting using some standard number of spaces (typically 3 or 4). Here's a little illustration:

                        +
                        key1: some text
                        +key2:
                        +  - first list item (text; note the indent)
                        +  - second list item
                        +key3:
                        +  key_under_key3: some text
                        +  another_key_under_key3:
                        +    - first list item (text; note the indent)
                        +    - second list item
                        +  yet_another_key_under_key3:
                        +    key_under_yet_another_key_under_key3: some more text
                        +
                        +

                        In the following text, keys and values together are sometimes referred to as 'fields'.

                        +

                        Pattern level keys

                        +

                        Reference doc

                        +

                        A set of fields that specify general information about a pattern: name, description, IRI, contributors, examples etc

                        +

                        e.g.

                        +
                        pattern_name: abnormalAnatomicalEntity
                        +pattern_iri: http://purl.obolibrary.org/obo/upheno/patterns/abnormalAnatomicalEntity.yaml
                        +description: "Any unspecified abnormality of an anatomical entity."
                        +
                        +contributors:
                        +  - https://orcid.org/0000-0002-9900-7880
                        +
                        +

                        Dictionaries

                        +

                        Reference doc

                        +

                        A major aim of the DOSDP system is to produce self-contained, human-readable templates. Templates need IDs in order to be reliably used programatically, but templates that only use IDs are not human readable. DOSDPs therefore include a set of dictionaries that map labels to IDs. Strictly any readable name can be used, but by convention we use class labels. IDs must be OBO curie style e.g. CL:0000001).

                        +

                        Separate dictionaries are required for classes, relations (object properties) & annotationProperties +e.g.

                        +
                        classes:
                        +  quality: PATO:0000001
                        +  abnormal: PATO:0000460
                        +  anatomical entity: UBERON:0001062
                        +
                        +relations:
                        +  inheres_in_part_of: RO:0002314
                        +  has_modifier: RO:0002573
                        +  has_part: BFO:0000051
                        +
                        +

                        Variables

                        +

                        Reference doc

                        +

                        These fields specify the names of pattern variables (TSV column names) and map these to a range. e.g. This specifies a variable called 'anatomy' with the range 'anatomical entity':

                        +
                        vars:
                        +  anatomy: "'anatomical entity'"
                        +
                        +

                        The var name (anatomy) corresponds to a column name in the table (TSV file) used in combination with this template, to generate new terms based on the template. The range specifies what type of term is allowed in this column - in this case 'anatomical entity' (UBERON:0001062; as specified in the dictionary) or one of its subclasses, e.g.-

                        + + + + + + + + + + + +
                        anatomy
                        UBERON:0001154
                        +

                        There are various types of variables:

                        +

                        vars are used to specify OWL classes (see example above). data_vars and data_list_vars are used to specify single pieces or data lists respectively. The range of data_vars is specified using XSD types. e.g.

                        +
                        data_vars:
                        +  number: xsd:int
                        +
                        +data_list_vars:
                        +  xrefs: xsd:string
                        +
                        +

                        A table used to specify classes following this pattern could have the following content. Note that in lists, multiple elements are separated by a '|'.

                        + + + + + + + + + + + + + +
                        numberxrefs
                        1pubmed:123456|DOI:10.1016/j.cell.2016.07.054
                        +

                        Template fields

                        +

                        Template fields are where the content of classes produced by the template is specified. These mostly follow printf format: A text field has variable slots specified using %s (for strings), %d for integers and %f for floats (decimals). Variables slots are filled, in order of appearance in the text, with values coming from a list of variables in an associated vars field e.g.

                        +
                        name:
                        +  text: "%s of %s"
                        +  vars:
                        +    - neuron
                        +    - brain_region
                        +
                        +

                        If the value associated with the neuron var is (the class) 'glutamatergic neuron' and the value associated with the = 'brain region' var is 'primary motor cortext', this will generate a classes with the name (label) "glutamatergic neuron of primary motor cortex".

                        +

                        OBO fields

                        +

                        Reference doc

                        +

                        DOSDPs include a set of convenience fields for annotation of classes that follow OBO conventions for field names and their mappings to OWL annotation properties. These include name, def, comment, namespace. When the value of a var is an OWL class, the name (label) of the var is used in the substitution. (see example above).

                        +

                        The annotation axioms generated by these template fields can be annotated. One OBO field exists for this purpose: xrefs allows annotation with a list of references using the obo standard xref annotation property (curies)

                        +

                        e.g.

                        +
                        data_list_vars:
                        +  xrefs: xsd:string
                        +
                        +def:
                        +  text: "Any %s that has a soma located in the %s"
                        +  vars:
                        +    - neuron
                        +    - brain_region
                        +  xrefs: xrefs
                        +
                        +

                        Logical axioms convenience fields

                        +

                        Reference doc

                        +

                        Where a single equivalent Class, subclassOf or GCI axiom is specified, you may use the keys 'EquivalentTo', 'subClassOf' or 'GCI' respectively. If multiple axioms of any type are needed, use the core field logical_axioms.

                        +

                        Core fields

                        +
                        annotations:
                        +  - annotationProperty:
                        +    text:
                        +    vars:
                        +    annotations: ...
                        +  - annotationProperty:
                        +    text:
                        +    vars:
                        +
                        +logical_axioms:
                        +  - axiom_type: subClassOf
                        +    text:
                        +    vars:
                        +      -
                        +      -
                        +  - axiom_type: subClassOf
                        +    text:
                        +    vars:
                        +      -
                        +      -
                        +    annotations:
                        +      - ...
                        +
                        +

                        Advanced usage:

                        +

                        Optionals and multiples (0-many)

                        +

                        TBA

                        +

                        Using DOSDP templates in ODK Workflows

                        +

                        The Ontology Development Kit (ODK) comes with a few pre-configured workflows involving DOSDP templates. For a detailed tutorial see here.

                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/dosdp-template/index.html b/tutorial/dosdp-template/index.html new file mode 100644 index 000000000..75f5189b9 --- /dev/null +++ b/tutorial/dosdp-template/index.html @@ -0,0 +1,3887 @@ + + + + + + + + + + + + + + + + + + + + + + + + DOSDP Templates Basic Tutorial - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + + + + + +
                        +
                        + + + + + + + + + + + + + +

                        Dead Simple Ontology Design Patterns (DOSDP)

                        +

                        Note: This is an updated Version of Jim Balhoff's DOSDP tutorial here.

                        +

                        The main use case for dosdp-tools (and the DOS-DP framework) is managing a set of ontology terms, which all follow a common logical pattern, by simply collecting the unique aspect of each term as a line in a spreadsheet. For example, we may be developing an ontology of environmental exposures. We would like to have terms in our ontology which represent exposure to a variety of stressors, such as chemicals, radiation, social stresses, etc.

                        +

                        Creating an ontology of environmental exposures

                        +

                        To maximize reuse and facilitate data integration, we can build our exposure concepts by referencing terms from domain-specific ontologies, such as the Chemical Entities of Biological Interest Ontology (ChEBI) for chemicals. By modeling each exposure concept in the same way, we can use a reasoner to leverage the chemical classification provided by ChEBI to provide a classification for our exposure concepts. Since each exposure concept has a logical definition based on our data model for exposure, there is no need to manually manage the classification hierarchy. Let's say our model for exposure concepts holds that an "exposure" is an event with a particular input (the thing the subject is exposed to):

                        +

                        'exposure to X' EquivalentTo 'exposure event' and 'has input' some X

                        +

                        If we need an ontology class to represent 'exposure to sarin' (bad news!), we can simply use the term sarin from ChEBI, and create a logical definition:

                        +

                        'exposure to sarin' EquivalentTo 'exposure event' and 'has input' some sarin

                        +

                        We can go ahead and create some other concepts we need for our exposure data:

                        +

                        'exposure to asbestos' EquivalentTo 'exposure event' and 'has input' some asbestos

                        +

                        'exposure to chemical substance' EquivalentTo 'exposure event' and 'has input' some 'chemical substance'

                        +

                        These definitions again can reference terms provided by ChEBI: asbestos and chemical substance

                        +

                        Classifying our concepts

                        +

                        Since the three concepts we've created all follow the same logical model, their hierarchical relationship can be logically determined by the relationships of the chemicals they reference. ChEBI asserts this structure for those terms:

                        +
                        'chemical substance'
                        +         |
                        +         |
                        +   --------------
                        +  |              |
                        +  |              |
                        +sarin        asbestos
                        +
                        +

                        Based on this, an OWL reasoner can automatically tell us the relationships between our exposure concepts:

                        +
                                'exposure to chemical substance'
                        +                       |
                        +                       |
                        +           --------------------------
                        +          |                          |
                        +          |                          |
                        +'exposure to sarin'        'exposure to asbestos'
                        +
                        +

                        To support this, we simply need to declare the ChEBI OWL file as an owl:import in our exposure ontology, and use an OWL reasoner such as ELK.

                        +

                        Managing terms with dosdp-tools

                        +

                        Creating terms by hand like we just did works fine, and relying on the reasoner for the classification will save us a lot of trouble and maintain correctness as our ontology grows. But since all the terms use the same logical pattern, it would be nice to keep this in one place; this will help make sure we always follow the pattern correctly when we create new concepts. We really only need to store the list of inputs (e.g. chemicals) in order to create all our exposure concepts. As we will see later, we may also want to manage separate sets of terms that follow other, different, patterns. To do this with dosdp-tools, we need three main files: a pattern template, a spreadsheet of pattern fillers, and a source ontology. You will also usually need a file of prefix definitions so that the tool knows how to expand your shortened identifiers into IRIs.

                        +

                        For our chemical exposures, getting the source ontology is easy: just download chebi.owl. Note—it's about 450 MB.

                        +

                        For our pattern fillers spreadsheet, we just need to make a tab-delimited file containing the chemical stressors for which we need exposure concepts. The file needs a column for the term IRI to be used for the generated class (this column is always called defined_class), and also a column for the chemical to reference (choose a label according to your data model). It should look like this:

                        +
                        defined_class input
                        +EXPOSO:1      CHEBI:75701
                        +EXPOSO:2      CHEBI:46661
                        +EXPOSO:3      CHEBI:59999
                        +
                        +

                        The columns should be tab-separated—you can download a correctly formatted file to follow along. For now you will just maintain this file by hand, adding chemicals by looking up their ID in ChEBI, and manually choosing the next ID for your generated classes. In the future this may be simplified using the DOS-DP table editor, which is under development.

                        +

                        The trickiest part to DOS-DP is creating your pattern template (but it's not so hard). Pattern templates are written in YAML, a simple file format based on keys and values. The keys are text labels; values can be plain values, another key-value structure, or a list. The DOS-DP schema specifies the keys and values which can be used in a pattern file. We'll use most of the common entries in this example. Read the comments (lines starting with #) for explanation of the various fields:

                        +
                        # We can provide a name for this pattern here.
                        +pattern_name: exposure_with_input
                        +
                        +# In 'classes', we define the terms we will use in this pattern.
                        +# In the OBO community the terms often have numeric IDs, so here
                        +# we can provide human-readable names we can use further in the pattern.
                        +# The key is the name to be used; the value is the ID in prefixed form (i.e. a CURIE).
                        +classes:
                        +  exposure event: ExO:0000002
                        +  Thing: owl:Thing
                        +
                        +# Use 'relations' the same way as 'classes',
                        +# but for the object properties used in the pattern.
                        +relations:
                        +  has input: RO:0002233
                        +
                        +# The 'vars' section defines the various slots that can be
                        +# filled in for this pattern. We have only one, which we call 'input'.
                        +# The value is the range, meaning the class of things that are valid
                        +# values for this pattern. By specifying owl:Thing, we're allowing any
                        +# class to be provided as a variable filler. You need a column in your
                        +# spreadsheet for each variable defined here, in addition to the `defined class` column.
                        +vars:
                        +  input: "Thing"
                        +
                        +# We can provide a template for an `rdfs:label` value to generate
                        +# for our new term. dosdp-tools will search the source ontology
                        +# to find the label for the filler term, and fill it into the
                        +# name template in place of the %s.
                        +name:
                        +  text: "exposure to %s"
                        +  vars:
                        +    - input
                        +
                        +# This works the same as label generation, but instead creates
                        +# a definition annotation.
                        +def:
                        +  text: "A exposure event involving the interaction of an exposure receptor to %s. Exposure may be through a variety of means, including through the air or surrounding medium, or through ingestion."
                        +  vars:
                        +    - input
                        +
                        +# Here we can generate a logical axiom for our new concept. Create an
                        +# expression using OWL Manchester syntax. The expression can use any
                        +# of the terms defined at the beginning of the pattern. A reference
                        +# to the variable value will be inserted in place of the %s.
                        +equivalentTo:
                        +  text: "'exposure event' and 'has input' some %s"
                        +  vars:
                        +    - input
                        +
                        +

                        Download the pattern template file to follow along.

                        +

                        Now we only need one more file before we can run dosdp-tools. A file of prefix definitions (also in YAML format) will specify how to expand the CURIEs we used in our spreadsheet and pattern files:

                        +
                        EXPOSO: http://example.org/exposure/
                        +
                        +

                        Here we are specifying how to expand our EXPOSO prefix (used in our spreadsheet defined_class column). To expand the others, we'll pass a convenience option to dosdp-tools, --obo-prefixes, which will activate some predefined prefixes such as owl:, and handle any other prefixes using the standard expansion for OBO IDs: http://purl.obolibrary.org/obo/PREFIX_. Here's a link to the prefixes file.

                        +

                        Now we're all set to run dosdp-tools! If you've downloaded or created all the necessary files, run this command to generate your ontology of exposures (assuming you've added the dosdp-tools to your Unix PATH):

                        +
                        dosdp-tools generate --obo-prefixes=true --prefixes=prefixes.yaml --infile=exposure_with_input.tsv --template=exposure_with_input.yaml --ontology=chebi.owl --outfile=exposure_with_input.owl
                        +
                        +

                        This will apply the pattern to each line in your spreadsheet, and save the result in an ontology saved at exposure_with_input.owl (it should look something like this). If you take a look at this ontology in a text editor or in Protégé, you'll see that it contains three classes, each with a generated label, text definition, and equivalent class definition. You're done!

                        +

                        Well... you're sort of done. But wouldn't it be nice if your exposure ontology included some information about the chemicals you referenced? Without this our reasoner can't classify our exposure concepts. As we said above, we could add an owl:import declaration and load all of ChEBI, but your exposure ontology has three classes and ChEBI has over 120,000 classes. Instead, we can use the ROBOT tool to extract a module of just the relevant axioms from ChEBI. Later, we will also see how to use ROBOT to merge the outputs from multiple DOS-DP patterns into one ontology. You can download ROBOT from its homepage.

                        +

                        Extracting a module from the source ontology

                        +

                        ROBOT has a few different methods for extracting a subset from an ontology. We'll use the Syntactic Locality Module Extractor (SLME) to get a set of axioms relevant to the ChEBI terms we've referenced. ROBOT will need a file containing the list of terms. We can use a Unix command to get these out of our spreadsheet file:

                        +
                        sed '1d' exposure_with_input.tsv | cut -f 2 >inputs.txt
                        +
                        +

                        We'll end up with a simple list:

                        +
                        CHEBI:75701
                        +CHEBI:46661
                        +CHEBI:59999
                        +
                        +

                        Now we can use ROBOT to extract an SLME bottom module for those terms out of ChEBI:

                        +
                        robot extract --method BOT --input chebi.owl --term-file inputs.txt --output chebi_extract.owl
                        +
                        +

                        Our ChEBI extract only has 63 classes. Great! If you want, you can merge the ChEBI extract into your exposure ontology before releasing it to the public:

                        +
                        robot merge --input exposure_with_input.owl --input chebi_extract.owl --output exposo.owl
                        +
                        +

                        Now you can open exposo.owl in Protégé, run the reasoner, and see a correct classification for your exposure concepts! You may notice that your ontology is missing labels for ExO:0000002 ('exposure event') and RO:0002233 ('has input'). If you want, you can use ROBOT to extract that information from ExO and RO.

                        +

                        Working with multiple patterns

                        +

                        You will often want to generate ontology modules using more than one DOS-DP pattern. For example, you may want to organize environmental exposures by an additional axis of classification, such as exposure to substances with various biological roles, based on information provided by ChEBI. This requires a slightly different logical expression, so we'll make a new pattern:

                        +
                        pattern_name: exposure_with_input_with_role
                        +
                        +classes:
                        +  exposure event: ExO:0000002
                        +  Thing: owl:Thing
                        +
                        +relations:
                        +  has input: RO:0002233
                        +  has role: RO:0000087
                        +
                        +vars:
                        +  input: "Thing"
                        +
                        +name:
                        +  text: "exposure to %s"
                        +  vars:
                        +    - input
                        +
                        +def:
                        +  text: "A exposure event involving the interaction of an exposure receptor to a substance with %s role. Exposure may be through a variety of means, including through the air or surrounding medium, or through ingestion."
                        +  vars:
                        +    - input
                        +
                        +equivalentTo:
                        +  text: "'exposure event' and 'has input' some ('has role' some %s)"
                        +  vars:
                        +    - input
                        +
                        +

                        Let's create an input file for this pattern, with a single filler, neurotoxin:

                        +
                        defined_class   input
                        +EXPOSO:4    CHEBI:50910
                        +
                        +

                        Now we can run dosdp-tools for this pattern:

                        +
                        dosdp-tools generate --obo-prefixes --prefixes=prefixes.yaml --infile=exposure_with_input_with_role.tsv --template=exposure_with_input_with_role.yaml --ontology=chebi.owl --outfile=exposure_with_input_with_role.owl
                        +
                        +

                        We can re-run our ChEBI module extractor, first appending the terms used for this pattern to the ones we used for the first pattern:

                        +
                        sed '1d' exposure_with_input_with_role.tsv | cut -f 2 >>inputs.txt
                        +
                        +

                        And then run robot extract exactly as before:

                        +
                        robot extract --method BOT --input chebi.owl --term-file inputs.txt --output chebi_extract.owl
                        +
                        +

                        Now we just want to merge both of our generated modules, along with our ChEBI extract:

                        +
                        robot merge --input exposure_with_input.owl --input exposure_with_input_with_role.owl --input chebi_extract.owl --output exposo.owl
                        +
                        +

                        If you open the new exposo.owl in Protégé and run the reasoner, you'll now see 'exposure to sarin' classified under both 'exposure to chemical substance' and also 'exposure to neurotoxin'.

                        +

                        Conclusion

                        +

                        By using dosdp-tools and robot together, you can effectively develop ontologies which compose parts of ontologies from multiple domains using standard patterns. You will probably want to orchestrate the types of commands used in this tutorial within a Makefile, so that you can automate this process for easy repeatability.

                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/exomiser-tutorial/index.html b/tutorial/exomiser-tutorial/index.html new file mode 100644 index 000000000..8e68c08b9 --- /dev/null +++ b/tutorial/exomiser-tutorial/index.html @@ -0,0 +1,4583 @@ + + + + + + + + + + + + + + + + + + + + + + + + Introduction to Exomiser - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + + + + + +
                        +
                        + + + + + + + + + + + + + +

                        Introduction to Exomiser

                        + +

                        Tutorial: an introduction to Exomiser

                        +

                        +

                        Exomiser is a Java program that ranks potential rare Mendelian disease-causing variants from whole-exome or whole-genome sequencing data. Starting from a patient's VCF file and a set of phenotypes encoded using the Human Phenotype Ontology (HPO), it will annotate, filter and prioritise likely causative variants. The program does this based on user-defined criteria such as a variant's predicted pathogenicity, frequency of occurrence in a population and also how closely the given patient's phenotype matches any known phenotype of genes from human disease and model organism data.

                        +

                        In this tutorial, we will learn how to install and run Exomiser with Docker, and how to interpret the results in various output formats detailing the predicted causative genes and variants. If you prefer to work locally, instructions are also provided below for Windows and Linux/Mac users.

                        +

                        The complete Exomiser documentation can be found here, including some relevant references here, and the Exomiser GitHub repository here.

                        +

                        Please note that this tutorial is up-to-date with the current latest release 13.2.0 and data version up to 2302 (Feb 2023).

                        +

                        PREREQUISITES

                        +

                        You know:

                        +
                          +
                        • how to use a command line interface.
                        • +
                        +

                        You have:

                        +
                          +
                        • +

                          Docker installed and running on your machine. Check out this simple guide to set up Docker for Windows or Docker for Mac.

                          +
                        • +
                        • +

                          We recommend to have Exomiser installed via Docker prior to the tutorial. Open a terminal and run the command below:

                          +
                        • +
                        +
                        docker pull exomiser/exomiser-cli:13.2.0
                        +
                        + +

                        Alternatively:

                        +

                        # download the data via
                        +wget https://github.com/iQuxLE/Exomiser-Tutorial/raw/main/Exomiser-Tutorial.zip
                        +# OR clone the repository
                        +git clone https://github.com/iQuxLE/Exomiser-Tutorial.git
                        +
                        +# unzip
                        +unzip Exomiser-Tutorial.zip
                        +
                        +Since the VCF files for parts of the example data are relatively large, you need to download the following separately and put it into the Exomiser-Tutorial folder.

                        +
                        # download
                        +wget https://github.com/iQuxLE/Exomiser-Tutorial/raw/main/pfeiffer-family-vcf.zip
                        +# unzip
                        +unzip pfeiffer-family-vcf.zip -d Exomiser-Tutorial/exomiser-config/
                        +
                        +

                        The Exomiser-Tutorial folder contains a directory called exomiser-config (with all the VCF and analysis files) +and exomiser-overview (with some introductory slides).

                        +
                          +
                        • Importantly, we highly recommend downloading the Exomiser data prior to the tutorial in order to follow along. The data required to run Exomiser is ~80GB and will take a while to download and unpack (depending on your internet connection, it may take a few hours). For this tutorial, you only need to download the Exomiser phenotype data and the variant data for the hg19 assembly. If you have your own samples to run with Exomiser and the VCF files are built on the hg38 build, then you will need to download the hg38 variant data as well. The current data version that we will use in this tutorial is 2302 (Feb 2023). This will change in the future. Always make sure that you use the latest data version available. To download the Exomiser data from the terminal:
                        • +
                        +
                        # create an empty directory for exomiser-data within the Exomiser-Tutorial folder:
                        +cd /path/to/Exomiser-Tutorial/
                        +mkdir exomiser-data
                        +cd exomiser-data
                        +# download the data
                        +wget https://data.monarchinitiative.org/exomiser/latest/2302_phenotype.zip # for the phenotype database
                        +wget https://data.monarchinitiative.org/exomiser/latest/2302_hg19.zip # for the hg19 variant database
                        +# unzip the data
                        +unzip "2302_*.zip"
                        +
                        +

                        Otherwise, visit the links and download the data in your own exomiser-data directory:

                        +

                        2302 phenotype database

                        +

                        2302 hg19 variant database

                        +

                        Install 7-Zip for unzipping the database files. The built-in archiving software has issues extracting the zip files. Extract the database files (2302_phenotype.zip, 2302_hg19.zip) by right-clicking the archive and selecting 7-Zip > Extract files… into the exomiser-data directory.

                        +

                        Your Exomiser-Tutorial directory should now be structured as follows:

                        +
                        Exomiser-Tutorial
                        +    ├── exomiser-config
                        +    ├── exomiser-data
                        +    │ ├── 2302_hg19
                        +    │ └── 2302_phenotype
                        +    └── exomiser-overview
                        +      └── exomiser-tutorial-slides
                        +
                        +

                        Outline of the tutorial

                        + +

                        Exomiser overview

                        +

                        For a quick overview of Exomiser take a look at the slides located in +the Google Drive +or GitHub repo.

                        +

                        Exomiser installation

                        +

                        via Docker

                        +

                        (recommended to be installed prior to the tutorial; if you run the command below again, you should receive the message "Image is up to date for exomiser/exomiser-cli:13.2.0")

                        +
                        docker pull exomiser/exomiser-cli:13.2.0
                        +
                        +

                        via Windows

                        +
                          +
                        1. Install 7-Zip for unzipping the archive files. The built-in archiving software has issues extracting the zip files.
                        2. +
                        3. Download the exomiser-cli-13.2.0-distribution.zip distribution from Monarch.
                        4. +
                        5. Download the variant 2302_hg19.zip and phenotype 2302_phenotype.zip data files from Monarch.
                        6. +
                        7. Extract the distribution files by right-clicking exomiser-cli-13.2.0-distribution.zip and selecting 7-Zip > Extract Here
                        8. +
                        9. Extract the data files (e.g. 2302_phenotype.zip, 2302_hg19.zip) by right-clicking the archive and selecting 7-Zip > Extract files… into the exomiser data directory. By default, Exomiser expects this to be ‘exomiser-cli-13.2.0/data’, but this can be changed in the application.properties.
                        10. +
                        +

                        via Linux/Mac

                        +

                        The following shell script should work:

                        +
                        # download the distribution (won't take long)
                        +wget https://data.monarchinitiative.org/exomiser/latest/exomiser-cli-13.2.0-distribution.zip
                        +# download the data (this is ~80GB and will take a while). If you only require a single assembly, only download the relevant files.
                        +wget https://data.monarchinitiative.org/exomiser/latest/2302_hg19.zip
                        +wget https://data.monarchinitiative.org/exomiser/latest/2302_phenotype.zip
                        +# unzip the distribution and data files - this will create a directory called 'exomiser-cli-13.2.0' in the current working directory (with examples and application.properties)
                        +unzip exomiser-cli-13.2.0-distribution.zip
                        +unzip '2302_*.zip' -d exomiser-cli-13.2.0/data
                        +
                        +

                        Configuring the application.properties

                        +

                        The application.properties file needs to be updated to point to the correct location of the Exomiser data. For the purpose of this tutorial, this is already sorted, pointing to the mounted directory inside the Docker container exomiser.data-directory=/exomiser-data.

                        +

                        Also, you want to make sure to edit the file to use the correct data version (currently 2302):

                        +
                         exomiser.hg19.data-version=2302
                        + exomiser.phenotype.data-version=2302
                        +
                        +

                        Tutorials

                        +

                        Monarch OBO Training Tutorial

                        + + +

                        Running Exomiser

                        +

                        For this tutorial, we will focus on running Exomiser on a single-sample (whole-exome) VCF file. Additional instructions for running Exomiser on multi-sample VCF data and large jobs are also provided below.

                        +

                        Using phenopackets

                        +

                        It is recommended to provide Exomiser with the input sample as a Phenopacket. Exomiser will accept this in either JSON +or YAML format. We will use the example pfeiffer-phenopacket.yml below:

                        +
                        id: manuel
                        +subject:
                        +  id: manuel
                        +  sex: MALE
                        +phenotypicFeatures:
                        +  - type:
                        +      id: HP:0001159
                        +      label: Syndactyly
                        +  - type:
                        +      id: HP:0000486
                        +      label: Strabismus
                        +  - type:
                        +      id: HP:0000327
                        +      label: Hypoplasia of the maxilla
                        +  - type:
                        +      id: HP:0000520
                        +      label: Proptosis
                        +  - type:
                        +      id: HP:0000316
                        +      label: Hypertelorism
                        +  - type:
                        +      id: HP:0000244
                        +      label: Brachyturricephaly
                        +htsFiles:
                        +  - uri: exomiser/Pfeiffer.vcf.gz
                        +    htsFormat: VCF
                        +    genomeAssembly: hg19
                        +metaData:
                        +  created: '2019-11-12T13:47:51.948Z'
                        +  createdBy: julesj
                        +  resources:
                        +    - id: hp
                        +      name: human phenotype ontology
                        +      url: http://purl.obolibrary.org/obo/hp.owl
                        +      version: hp/releases/2019-11-08
                        +      namespacePrefix: HP
                        +      iriPrefix: 'http://purl.obolibrary.org/obo/HP_'
                        +  phenopacketSchemaVersion: 1.0
                        +
                        +
                        +

                        NOTE: This is an example of a v1.0 phenopacket, there is a more recent release of v2.0. Exomiser can run +phenopackets built with either v1.0 or v2.0 schema. You can find out more about the v2.0 phenopacket schema and how to +build one with Python or Java here. To convert a phenopacket +v1.0 to v2.0, you can use phenopacket-tools.

                        +
                        +

                        Analysis settings

                        +

                        Below are the default analysis settings from pfeiffer-analysis.yml that we will use in our tutorial:

                        +
                        ---
                        +analysis:
                        +  #FULL or PASS_ONLY
                        +  analysisMode: PASS_ONLY
                        +  # In cases where you do not want any cut-offs applied an empty map should be used e.g. inheritanceModes: {}
                        +  # These are the default settings, with values representing the maximum minor allele frequency in percent (%) permitted for an
                        +  # allele to be considered as a causative candidate under that mode of inheritance.
                        +  # If you just want to analyse a sample under a single inheritance mode, delete/comment-out the others. For AUTOSOMAL_RECESSIVE
                        +  # or X_RECESSIVE ensure *both* relevant HOM_ALT and COMP_HET modes are present.
                        +  inheritanceModes: {
                        +    AUTOSOMAL_DOMINANT: 0.1,
                        +    AUTOSOMAL_RECESSIVE_COMP_HET: 2.0,
                        +    AUTOSOMAL_RECESSIVE_HOM_ALT: 0.1,
                        +    X_DOMINANT: 0.1,
                        +    X_RECESSIVE_COMP_HET: 2.0,
                        +    X_RECESSIVE_HOM_ALT: 0.1,
                        +    MITOCHONDRIAL: 0.2
                        +  }
                        +  #Possible frequencySources:
                        +  #Thousand Genomes project http://www.1000genomes.org/
                        +  #   THOUSAND_GENOMES,
                        +  #ESP project http://evs.gs.washington.edu/EVS/
                        +  #   ESP_AFRICAN_AMERICAN, ESP_EUROPEAN_AMERICAN, ESP_ALL,
                        +  #ExAC project http://exac.broadinstitute.org/about
                        +  #   EXAC_AFRICAN_INC_AFRICAN_AMERICAN, EXAC_AMERICAN,
                        +  #   EXAC_SOUTH_ASIAN, EXAC_EAST_ASIAN,
                        +  #   EXAC_FINNISH, EXAC_NON_FINNISH_EUROPEAN,
                        +  #   EXAC_OTHER
                        +  #Possible frequencySources:
                        +  #Thousand Genomes project - http://www.1000genomes.org/ (THOUSAND_GENOMES)
                        +  #TOPMed - https://www.nhlbi.nih.gov/science/precision-medicine-activities (TOPMED)
                        +  #UK10K - http://www.uk10k.org/ (UK10K)
                        +  #ESP project - http://evs.gs.washington.edu/EVS/ (ESP_)
                        +  #   ESP_AFRICAN_AMERICAN, ESP_EUROPEAN_AMERICAN, ESP_ALL,
                        +  #ExAC project http://exac.broadinstitute.org/about (EXAC_)
                        +  #   EXAC_AFRICAN_INC_AFRICAN_AMERICAN, EXAC_AMERICAN,
                        +  #   EXAC_SOUTH_ASIAN, EXAC_EAST_ASIAN,
                        +  #   EXAC_FINNISH, EXAC_NON_FINNISH_EUROPEAN,
                        +  #   EXAC_OTHER
                        +  #gnomAD - http://gnomad.broadinstitute.org/ (GNOMAD_E, GNOMAD_G)
                        +  frequencySources: [
                        +    THOUSAND_GENOMES,
                        +    TOPMED,
                        +    UK10K,
                        +
                        +    ESP_AFRICAN_AMERICAN, ESP_EUROPEAN_AMERICAN, ESP_ALL,
                        +
                        +    EXAC_AFRICAN_INC_AFRICAN_AMERICAN, EXAC_AMERICAN,
                        +    EXAC_SOUTH_ASIAN, EXAC_EAST_ASIAN,
                        +    EXAC_FINNISH, EXAC_NON_FINNISH_EUROPEAN,
                        +    EXAC_OTHER,
                        +
                        +    GNOMAD_E_AFR,
                        +    GNOMAD_E_AMR,
                        +    #        GNOMAD_E_ASJ,
                        +    GNOMAD_E_EAS,
                        +    GNOMAD_E_FIN,
                        +    GNOMAD_E_NFE,
                        +    GNOMAD_E_OTH,
                        +    GNOMAD_E_SAS,
                        +
                        +    GNOMAD_G_AFR,
                        +    GNOMAD_G_AMR,
                        +    #        GNOMAD_G_ASJ,
                        +    GNOMAD_G_EAS,
                        +    GNOMAD_G_FIN,
                        +    GNOMAD_G_NFE,
                        +    GNOMAD_G_OTH,
                        +    GNOMAD_G_SAS
                        +  ]
                        +  # Possible pathogenicitySources: (POLYPHEN, MUTATION_TASTER, SIFT), (REVEL, MVP), CADD, REMM
                        +  # REMM is trained on non-coding regulatory regions
                        +  # *WARNING* if you enable CADD or REMM ensure that you have downloaded and installed the CADD/REMM tabix files
                        +  # and updated their location in the application.properties. Exomiser will not run without this.
                        +  pathogenicitySources: [ REVEL, MVP ]
                        +  #this is the standard exomiser order.
                        +  #all steps are optional
                        +  steps: [
                        +    #hiPhivePrioritiser: {},
                        +    #priorityScoreFilter: {priorityType: HIPHIVE_PRIORITY, minPriorityScore: 0.500},
                        +    #intervalFilter: {interval: 'chr10:123256200-123256300'},
                        +    # or for multiple intervals:
                        +    #intervalFilter: {intervals: ['chr10:123256200-123256300', 'chr10:123256290-123256350']},
                        +    # or using a BED file - NOTE this should be 0-based, Exomiser otherwise uses 1-based coordinates in line with VCF
                        +    #intervalFilter: {bed: /full/path/to/bed_file.bed},
                        +    #genePanelFilter: {geneSymbols: ['FGFR1','FGFR2']},
                        +      failedVariantFilter: { },
                        +    #qualityFilter: {minQuality: 50.0},
                        +      variantEffectFilter: {
                        +        remove: [
                        +            FIVE_PRIME_UTR_EXON_VARIANT,
                        +            FIVE_PRIME_UTR_INTRON_VARIANT,
                        +            THREE_PRIME_UTR_EXON_VARIANT,
                        +            THREE_PRIME_UTR_INTRON_VARIANT,
                        +            NON_CODING_TRANSCRIPT_EXON_VARIANT,
                        +            UPSTREAM_GENE_VARIANT,
                        +            INTERGENIC_VARIANT,
                        +        REGULATORY_REGION_VARIANT,
                        +        CODING_TRANSCRIPT_INTRON_VARIANT,
                        +        NON_CODING_TRANSCRIPT_INTRON_VARIANT,
                        +        DOWNSTREAM_GENE_VARIANT
                        +      ]
                        +    },
                        +    # removes variants represented in the database
                        +    #knownVariantFilter: {},
                        +    frequencyFilter: {maxFrequency: 2.0},
                        +    pathogenicityFilter: {keepNonPathogenic: true},
                        +    # inheritanceFilter and omimPrioritiser should always run AFTER all other filters have completed
                        +    inheritanceFilter: {},
                        +    # omimPrioritiser isn't mandatory.
                        +    omimPrioritiser: {},
                        +    #priorityScoreFilter: {minPriorityScore: 0.4},
                        +    # Other prioritisers: Only combine omimPrioritiser with one of these.
                        +    # Don't include any if you only want to filter the variants.
                        +    hiPhivePrioritiser: {},
                        +    # or run hiPhive in benchmarking mode:
                        +    #hiPhivePrioritiser: {runParams: 'mouse'},
                        +    #phivePrioritiser: {}
                        +    #phenixPrioritiser: {}
                        +    #exomeWalkerPrioritiser: {seedGeneIds: [11111, 22222, 33333]}
                        +  ]
                        +outputOptions:
                        +    outputContributingVariantsOnly: false
                        +    #numGenes options: 0 = all or specify a limit e.g. 500 for the first 500 results
                        +    numGenes: 0
                        +    #minExomiserGeneScore: 0.7
                        +    # Path to the desired output directory. Will default to the 'results' subdirectory of the exomiser install directory
                        +    outputDirectory: results
                        +    # Filename for the output files. Will default to {input-vcf-filename}-exomiser
                        +    outputFileName: Pfeiffer-HIPHIVE-exome
                        +    #out-format options: HTML, JSON, TSV_GENE, TSV_VARIANT, VCF (default: HTML)
                        +    outputFormats: [HTML, JSON, TSV_GENE, TSV_VARIANT]
                        +
                        +

                        Running via Docker

                        +
                        docker run -it -v "/path/to/Exomiser-Tutorial/exomiser-data:/exomiser-data" \
                        +-v "/path/to/Exomiser-Tutorial/exomiser-config/:/exomiser" \
                        +-v "/path/to/Exomiser-Tutorial/exomiser-results:/results" \
                        +exomiser/exomiser-cli:13.2.0 \
                        +--sample /exomiser/pfeiffer-phenopacket.yml \
                        +--analysis /exomiser/pfeiffer-analysis.yml \
                        +--spring.config.location=/exomiser/application.properties
                        +
                        +

                        This command will produce Pfeiffer-HIPHIVE-exome.html, Pfeiffer-HIPHIVE-exome.json, Pfeiffer-HIPHIVE-exome.genes.tsv and Pfeiffer-HIPHIVE-exome.variants.tsv in your exomiser-results directory.

                        +

                        Running locally

                        +

                        Assuming that you are within the exomiser-cli-13.2.0 distribution folder:

                        +
                        java -jar exomiser-cli-13.2.0.jar --sample examples/pfeiffer-phenopacket.yml \
                        +--analysis examples/exome-analysis.yml --output examples/output-options.yml  
                        +
                        +

                        Analysing multi-sample VCF files

                        +

                        When analysing a multi-sample VCF file, you must detail the pedigree information in a phenopacket describing a Family +object:

                        +

                        e.g. Exomiser-Tutorial/exomiser-config/pfeiffer-family.yml

                        +
                        id: ISDBM322017-family
                        +proband:
                        +  subject:
                        +    id: ISDBM322017
                        +    sex: FEMALE
                        +  phenotypicFeatures:
                        +    - type:
                        +        id: HP:0001159
                        +        label: Syndactyly
                        +    - type:
                        +        id: HP:0000486
                        +        label: Strabismus
                        +    - type:
                        +        id: HP:0000327
                        +        label: Hypoplasia of the maxilla
                        +    - type:
                        +        id: HP:0000520
                        +        label: Proptosis
                        +    - type:
                        +        id: HP:0000316
                        +        label: Hypertelorism
                        +    - type:
                        +        id: HP:0000244
                        +        label: Brachyturricephaly
                        +pedigree:
                        +  persons:
                        +    - individualId: ISDBM322017
                        +      paternalId: ISDBM322016
                        +      maternalId: ISDBM322018
                        +      sex: FEMALE
                        +      affectedStatus: AFFECTED
                        +    - individualId: ISDBM322015
                        +      paternalId: ISDBM322016
                        +      maternalId: ISDBM322018
                        +      sex: MALE
                        +      affectedStatus: UNAFFECTED
                        +    - individualId: ISDBM322016
                        +      sex: MALE
                        +      affectedStatus: UNAFFECTED
                        +    - individualId: ISDBM322018
                        +      sex: FEMALE
                        +      affectedStatus: UNAFFECTED
                        +htsFiles:
                        +  - uri: exomiser/Pfeiffer-quartet.vcf.gz
                        +    htsFormat: VCF
                        +    genomeAssembly: GRCh37
                        +metaData:
                        +  created: '2019-11-12T13:47:51.948Z'
                        +  createdBy: julesj
                        +  resources:
                        +    - id: hp
                        +      name: human phenotype ontology
                        +      url: http://purl.obolibrary.org/obo/hp.owl
                        +      version: hp/releases/2019-11-08
                        +      namespacePrefix: HP
                        +      iriPrefix: 'http://purl.obolibrary.org/obo/HP_'
                        +  phenopacketSchemaVersion: 1.0
                        +
                        +

                        Running via Docker:

                        +
                        docker run -it -v '/path/to/Exomiser-Tutorial/exomiser-data:/exomiser-data' \
                        +-v '/path/to/Exomiser-Tutorial/exomiser-config/:/exomiser' \
                        +-v '/path/to/Exomiser-Tutorial/exomiser-results:/results' \
                        +exomiser/exomiser-cli:13.2.0 \
                        +--sample /exomiser/pfeiffer-family.yml \
                        +--analysis /exomiser/pfeiffer-analysis.yml \
                        +--spring.config.location=/exomiser/application.properties
                        +
                        +

                        Running locally:

                        +

                        Assuming that you are within the exomiser-cli-13.2.0 distribution folder

                        +
                        java -jar exomiser-cli-13.2.0.jar --sample examples/pfeiffer-family.yml --analysis examples/exome-analysis.yml --output examples/output-options.yml
                        +
                        +

                        Running large jobs (batch)

                        +

                        The above commands can be added to a batch file for example in the +file Exomiser-Tutorial/exomiser-config/test-analysis-batch-commands.txt. Using it with Docker we recommend creating a +new directory for the batch files and mounting that to the Docker container.

                        +

                        Running via Docker:

                        +
                        docker run -it -v '/path/to/Exomiser-Tutorial/exomiser-data:/exomiser-data' \
                        +-v '/path/to/Exomiser-Tutorial/exomiser-config/:/exomiser' \
                        +-v '/path/to/Exomiser-Tutorial/exomiser-results:/results' \
                        +-v '/path/to/Exomiser-Tutorial/exomiser-batch-files:/batch-files' \
                        +exomiser/exomiser-cli:13.2.0 \
                        +--batch /batch-files/test-analysis-batch-commands.txt
                        +--spring.config.location=/exomiser/application.properties
                        +
                        +

                        Running locally:

                        +

                        Assuming that you are within the exomiser-cli-13.2.0 distribution folder

                        +
                        java -jar exomiser-cli-13.2.0.jar --batch examples/test-analysis-batch-commands.txt
                        +
                        +

                        The advantage of this is that a single command will be able to analyse many samples in far less time than starting a new +JVM for each as there will be no start-up penalty after the initial start and the Java JIT compiler will be able to take +advantage of a longer-running process to optimise the runtime code. For maximum throughput on a cluster consider +splitting your batch jobs over multiple nodes.

                        +

                        Results

                        +

                        Depending on the output options provided, Exomiser will write out at least an HTML and JSON output file in the results subdirectory of the Exomiser installation (by default) or a user-defined results directory as indicated in the output options.

                        +

                        As a general rule, all output files contain a ranked list of genes and variants with the top-ranked gene/variant displayed first. The exception being the VCF output (if requested in the output options; not requested in this tutorial) which, since version 13.1.0, is sorted according to VCF convention and tabix indexed.

                        +

                        In our tutorial, we requested HTML, JSON, TSV_VARIANT and TSV_GENE output formats which are briefly outlined below.

                        +

                        HTML

                        +

                        A few relevant screenshots from Pfeiffer-HIPHIVE-exome.html: +HTML annotation 1 +HTML annotation 2 +HTML annotation 3

                        +

                        JSON

                        +

                        The JSON file represents the most accurate representation of the results, as it is referenced internally by Exomiser. As +such, we don’t provide a schema for this, but it has been pretty stable and breaking changes will only occur with major +version changes to the software. Minor additions are to be expected for minor releases, as per the SemVer specification.

                        +

                        We recommend using Python or JQ to extract data from this file. To give you an idea of how you can extract some data with Python, we have provided examples of how you can iterate over the results below. However, there is a lot more information content that you can pull out from the JSON results file, this only provides a snippet of what you can do.

                        +
                        # import json library
                        +import json
                        +
                        +# to load in the exomiser json result
                        +with open("path/to/Exomiser-Tutorial/Pfeiffer-HIPHIVE-exome.json") as exomiser_json_result:
                        +    exomiser_result = json.load(exomiser_json_result)
                        +exomiser_json_result.close()
                        +
                        +# to retrieve all predicted genes and corresponding identifier (ENSEMBL)
                        +gene_results = []
                        +for result in exomiser_result:
                        +    gene_results.append({result["geneSymbol"]: result["geneIdentifier"]["geneId"]})
                        +
                        +# to retrieve all predicted variants
                        +variant_results = []
                        +for result in exomiser_result:
                        +  for moi in result["geneScores"]:  # iterating over all modes of inheritance
                        +    if "contributingVariants" in moi:  #  checking if there is evidence of contributing variants
                        +        for cv in moi["contributingVariants"]:  # iterating over all contributing variants
                        +          variant_results.append({"chromosome": cv["contigName"],
                        +                                  "start_pos": cv["start"],
                        +                                  "end_pos": cv["end"],
                        +                                  "ref_allele": cv["ref"],
                        +                                  "alt_allele": cv["alt"]})
                        +
                        +

                        TSV VARIANTS

                        +

                        In the Pfeiffer-HIPHIVE-exome.variants.tsv file it is possible for a variant to appear multiple times, depending on the MOI it is compatible with. For example, in the excerpt of the file below, MUC6 has two variants ranked 7th under the AD model and two ranked 8th under an AR (compound heterozygous) model. In the AD case the CONTRIBUTING_VARIANT column indicates whether the variant was (1) or wasn't (0) used for calculating the EXOMISER_GENE_COMBINED_SCORE and EXOMISER_GENE_VARIANT_SCORE.

                        +
                        #RANK   ID      GENE_SYMBOL     ENTREZ_GENE_ID  MOI     P-VALUE EXOMISER_GENE_COMBINED_SCORE    EXOMISER_GENE_PHENO_SCORE       EXOMISER_GENE_VARIANT_SCORE     EXOMISER_VARIANT_SCORE  CONTRIBUTING_VARIANT    WHITELIST_VARIANT       VCF_ID  RS_ID   CONTIG  START   END     REF     ALT     CHANGE_LENGTH   QUAL    FILTER  GENOTYPE        FUNCTIONAL_CLASS        HGVS    EXOMISER_ACMG_CLASSIFICATION    EXOMISER_ACMG_EVIDENCE  EXOMISER_ACMG_DISEASE_ID        EXOMISER_ACMG_DISEASE_NAME      CLINVAR_ALLELE_ID       CLINVAR_PRIMARY_INTERPRETATION  CLINVAR_STAR_RATING     GENE_CONSTRAINT_LOEUF   GENE_CONSTRAINT_LOEUF_LOWER     GENE_CONSTRAINT_LOEUF_UPPER     MAX_FREQ_SOURCE MAX_FREQ        ALL_FREQ        MAX_PATH_SOURCE MAX_PATH        ALL_PATH
                        +1       10-123256215-T-G_AD     FGFR2   2263    AD      0.0000  0.9957  0.9187  1.0000  1.0000  1       1               rs121918506     10      123256215       123256215       T       G       0       900.0000        PASS    0/1     missense_variant        FGFR2:ENST00000346997.2:c.1688A>C:p.(Glu563Ala) PATHOGENIC      PM2,PP3_Strong,PP4,PP5_Strong   ORPHA:87        Apert syndrome  28333   PATHOGENIC_OR_LIKELY_PATHOGENIC 2       0.13692 0.074   0.27                            REVEL   0.965   REVEL=0.965,MVP=0.9517972
                        +2       5-71755984-C-G_AD       ZNF366  167465  AD      0.0018  0.9237  0.8195  0.7910  0.7910  1       0               rs375204168     5       71755984        71755984        C       G       0       380.8900        PASS    0/1     splice_region_variant   ZNF366:ENST00000318442.5:c.1332+8G>C:p.?        UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.27437 0.155   0.515   EXAC_AMERICAN   0.07975895      THOUSAND_GENOMES=0.01997,TOPMED=0.01096,ESP_EUROPEAN_AMERICAN=0.0116,ESP_ALL=0.0077,EXAC_AMERICAN=0.07975895,EXAC_NON_FINNISH_EUROPEAN=0.010914307,GNOMAD_E_AMR=0.07153929,GNOMAD_E_NFE=0.010890082,GNOMAD_E_OTH=0.018328445
                        +3       16-2150254-G-A_AD       PKD1    5310    AD      0.0050  0.8272  0.6597  0.8707  0.8707  1       0               rs147967021     16      2150254 2150254 G       A       0       406.0800        PASS    0/1     missense_variant        PKD1:ENST00000262304.4:c.9625C>T:p.(Arg3209Cys) UNCERTAIN_SIGNIFICANCE                          1319391 UNCERTAIN_SIGNIFICANCE  1       0.12051 0.082   0.179   EXAC_AMERICAN   0.06979585      THOUSAND_GENOMES=0.01997,TOPMED=0.007934,EXAC_AMERICAN=0.06979585,EXAC_NON_FINNISH_EUROPEAN=0.0015655332,EXAC_SOUTH_ASIAN=0.012149192,GNOMAD_E_AFR=0.006708708,GNOMAD_E_AMR=0.05070389,GNOMAD_E_NFE=0.002718672,GNOMAD_E_SAS=0.013009822,GNOMAD_G_AFR=0.011462632       MVP     0.8792868       REVEL=0.346,MVP=0.8792868
                        +4       3-56653839-CTG-C_AD     CCDC66  285331  AD      0.0051  0.8262  0.5463  0.9984  0.9984  1       0               rs751329549     3       56653839        56653841        CTG     C       -2      1872.9400       PASS    0/1     frameshift_truncation   CCDC66:ENST00000326595.7:c.2572_2573del:p.(Val858Glnfs*6)       UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.9703  0.78    1.215   GNOMAD_E_AMR    0.011914691     TOPMED=7.556E-4,EXAC_EAST_ASIAN=0.01155535,EXAC_NON_FINNISH_EUROPEAN=0.0015023135,GNOMAD_E_AMR=0.011914691,GNOMAD_E_EAS=0.0057977736,GNOMAD_E_NFE=8.988441E-4
                        +5       13-110855918-C-G_AD     COL4A1  1282    AD      0.0075  0.7762  0.5288  0.9838  0.9838  1       0               rs150182714     13      110855918       110855918       C       G       0       1363.8700       PASS    0/1     missense_variant        COL4A1:ENST00000375820.4:c.994G>C:p.(Gly332Arg) UNCERTAIN_SIGNIFICANCE  PP3_Moderate    OMIM:175780     Brain small vessel disease with or without ocular anomalies     333515  CONFLICTING_PATHOGENICITY_INTERPRETATIONS       1       0.065014        0.035   0.128   ESP_EUROPEAN_AMERICAN   0.0233  THOUSAND_GENOMES=0.01997,TOPMED=0.0068,ESP_EUROPEAN_AMERICAN=0.0233,ESP_ALL=0.0154,EXAC_AFRICAN_INC_AFRICAN_AMERICAN=0.009609841,EXAC_NON_FINNISH_EUROPEAN=0.007491759,GNOMAD_E_AFR=0.013068479,GNOMAD_E_NFE=0.0071611437,GNOMAD_G_NFE=0.013324451      MVP     0.9869305       REVEL=0.886,MVP=0.9869305
                        +6       6-132203615-G-A_AD      ENPP1   5167    AD      0.0079  0.7695  0.5112  0.9996  0.9996  1       0               rs770775549     6       132203615       132203615       G       A       0       922.9800        PASS    0/1     splice_donor_variant    ENPP1:ENST00000360971.2:c.2230+1G>A:p.? UNCERTAIN_SIGNIFICANCE  PVS1_Strong                             NOT_PROVIDED    0       0.41042 0.292   0.586   GNOMAD_E_SAS    0.0032486517    TOPMED=7.556E-4,EXAC_NON_FINNISH_EUROPEAN=0.0014985314,GNOMAD_E_NFE=0.0017907989,GNOMAD_E_SAS=0.0032486517
                        +7       11-1018088-TG-T_AD      MUC6    4588    AD      0.0089  0.7563  0.5046  0.9990  0.9990  1       0               rs765231061     11      1018088 1018089 TG      T       -1      441.8100        PASS    0/1     frameshift_variant      MUC6:ENST00000421673.2:c.4712del:p.(Pro1571Hisfs*21)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.0070363074    GNOMAD_E_AMR=0.0030803352,GNOMAD_G_NFE=0.0070363074
                        +7       11-1018093-G-GT_AD      MUC6    4588    AD      0.0089  0.7563  0.5046  0.9990  0.9989  0       0               rs376177791     11      1018093 1018093 G       GT      1       592.4500        PASS    0/1     frameshift_elongation   MUC6:ENST00000421673.2:c.4707dup:p.(Pro1570Thrfs*136)   NOT_AVAILABLE                                   NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.007835763     GNOMAD_G_NFE=0.007835763
                        +8       11-1018088-TG-T_AR      MUC6    4588    AR      0.0089  0.7562  0.5046  0.9990  0.9990  1       0               rs765231061     11      1018088 1018089 TG      T       -1      441.8100        PASS    0/1     frameshift_variant      MUC6:ENST00000421673.2:c.4712del:p.(Pro1571Hisfs*21)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.0070363074    GNOMAD_E_AMR=0.0030803352,GNOMAD_G_NFE=0.0070363074
                        +8       11-1018093-G-GT_AR      MUC6    4588    AR      0.0089  0.7562  0.5046  0.9990  0.9989  1       0               rs376177791     11      1018093 1018093 G       GT      1       592.4500        PASS    0/1     frameshift_elongation   MUC6:ENST00000421673.2:c.4707dup:p.(Pro1570Thrfs*136)   UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.79622 0.656   0.971   GNOMAD_G_NFE    0.007835763     GNOMAD_G_NFE=0.007835763
                        +9       7-44610376-G-A_AD       DDX56   54606   AD      0.0091  0.7545  0.5036  0.9992  0.9992  1       0               rs774566321     7       44610376        44610376        G       A       0       586.6600        PASS    0/1     stop_gained     DDX56:ENST00000258772.5:c.991C>T:p.(Arg331*)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.56071 0.379   0.852   EXAC_SOUTH_ASIAN        0.006114712     EXAC_SOUTH_ASIAN=0.006114712,GNOMAD_E_SAS=0.0032509754
                        +10      14-96730313-G-A_AD      BDKRB1  623     AD      0.0093  0.7525  0.5018  1.0000  1.0000  1       0                       14      96730313        96730313        G       A       0       378.2200        PASS    0/1     stop_gained     BDKRB1:ENST00000216629.6:c.294G>A:p.(Trp98*)    UNCERTAIN_SIGNIFICANCE                                  NOT_PROVIDED    0       0.52212 0.272   1.097                                        
                        +
                        +

                        TSV GENES

                        +

                        In the Pfeiffer-HIPHIVE-exome.genes.tsv file, all the various phenotypic scores and HPO matches from the HUMAN, MOUSE, FISH and PPI comparisons are reported per each gene. It is possible for a gene to appear multiple times, depending on the MOI it is compatible with, given the filtered variants. For example in the example below MUC6 is ranked 7th under the AD model and 8th under an AR model. +

                        #RANK   ID      GENE_SYMBOL     ENTREZ_GENE_ID  MOI     P-VALUE EXOMISER_GENE_COMBINED_SCORE    EXOMISER_GENE_PHENO_SCORE       EXOMISER_GENE_VARIANT_SCORE     HUMAN_PHENO_SCORE       MOUSE_PHENO_SCORE       FISH_PHENO_SCORE        WALKER_SCORE    PHIVE_ALL_SPECIES_SCORE OMIM_SCORE      MATCHES_CANDIDATE_GENE  HUMAN_PHENO_EVIDENCE    MOUSE_PHENO_EVIDENCE    FISH_PHENO_EVIDENCE     HUMAN_PPI_EVIDENCE      MOUSE_PPI_EVIDENCE      FISH_PPI_EVIDENCE
                        +1       FGFR2_AD        FGFR2   2263    AD      0.0000  0.9957  0.9187  1.0000  0.8671  0.9187  0.0000  0.5057  0.9187  1.0000  0       Apert syndrome (ORPHA:87): Syndactyly (HP:0001159)-Toe syndactyly (HP:0001770), Strabismus (HP:0000486)-Strabismus (HP:0000486), Hypoplasia of the maxilla (HP:0000327)-Hypoplasia of the maxilla (HP:0000327), Proptosis (HP:0000520)-Proptosis (HP:0000520), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Brachyturricephaly (HP:0000244),  Strabismus (HP:0000486)-ocular hypertelorism (MP:0001300), Hypoplasia of the maxilla (HP:0000327)-short maxilla (MP:0000097), Proptosis (HP:0000520)-exophthalmos (MP:0002750), Hypertelorism (HP:0000316)-ocular hypertelorism (MP:0001300), Brachyturricephaly (HP:0000244)-abnormal frontal bone morphology (MP:0000107),                    Proximity to FGF18 Syndactyly (HP:0001159)-abnormal metatarsal bone morphology (MP:0003072), Strabismus (HP:0000486)-abnormal neurocranium morphology (MP:0000074), Hypoplasia of the maxilla (HP:0000327)-maxilla hypoplasia (MP:0000457), Proptosis (HP:0000520)-abnormal neurocranium morphology (MP:0000074), Hypertelorism (HP:0000316)-abnormal neurocranium morphology (MP:0000074), Brachyturricephaly (HP:0000244)-abnormal neurocranium morphology (MP:0000074),
                        +2       ZNF366_AD       ZNF366  167465  AD      0.0018  0.9237  0.8195  0.7910  0.0000  0.8195  0.0000  0.5015  0.8195  1.0000  0               Syndactyly (HP:0001159)-syndactyly (MP:0000564), Strabismus (HP:0000486)-microphthalmia (MP:0001297), Hypoplasia of the maxilla (HP:0000327)-micrognathia (MP:0002639), Proptosis (HP:0000520)-microphthalmia (MP:0001297), Hypertelorism (HP:0000316)-microphthalmia (MP:0001297), Brachyturricephaly (HP:0000244)-microphthalmia (MP:0001297),                Proximity to CTBP1 associated with Wolf-Hirschhorn syndrome (ORPHA:280): Syndactyly (HP:0001159)-Arachnodactyly (HP:0001166), Strabismus (HP:0000486)-Strabismus (HP:0000486), Hypoplasia of the maxilla (HP:0000327)-Micrognathia (HP:0000347), Proptosis (HP:0000520)-Proptosis (HP:0000520), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Calvarial skull defect (HP:0001362),
                        +3       PKD1_AD PKD1    5310    AD      0.0050  0.8272  0.6597  0.8707  0.0000  0.6597  0.2697  0.5069  0.6597  1.0000  0               Strabismus (HP:0000486)-micrognathia (MP:0002639), Hypoplasia of the maxilla (HP:0000327)-micrognathia (MP:0002639), Proptosis (HP:0000520)-micrognathia (MP:0002639), Hypertelorism (HP:0000316)-micrognathia (MP:0002639), Brachyturricephaly (HP:0000244)-micrognathia (MP:0002639),         Hypoplasia of the maxilla (HP:0000327)-mandibular arch skeleton malformed, abnormal (ZP:0001708),       Proximity to IFT88 associated with Retinitis pigmentosa (ORPHA:791): Strabismus (HP:0000486)-Ophthalmoplegia (HP:0000602), Hypoplasia of the maxilla (HP:0000327)-Wide nasal bridge (HP:0000431),       Proximity to IFT88 Syndactyly (HP:0001159)-polydactyly (MP:0000562), Strabismus (HP:0000486)-supernumerary molars (MP:0010773), Hypoplasia of the maxilla (HP:0000327)-supernumerary molars (MP:0010773), Proptosis (HP:0000520)-supernumerary molars (MP:0010773), Hypertelorism (HP:0000316)-supernumerary molars (MP:0010773), Brachyturricephaly (HP:0000244)-abnormal coronal suture morphology (MP:0003840),
                        +4       CCDC66_AD       CCDC66  285331  AD      0.0051  0.8262  0.5463  0.9984  0.0000  0.5463  0.0000  0.0000  0.5463  1.0000  0               Strabismus (HP:0000486)-abnormal cone electrophysiology (MP:0004022), Hypoplasia of the maxilla (HP:0000327)-abnormal rod electrophysiology (MP:0004021), Proptosis (HP:0000520)-abnormal rod electrophysiology (MP:0004021), Hypertelorism (HP:0000316)-abnormal rod electrophysiology (MP:0004021), Brachyturricephaly (HP:0000244)-abnormal retina photoreceptor layer morphology (MP:0003728),
                        +5       COL4A1_AD       COL4A1  1282    AD      0.0075  0.7762  0.5288  0.9838  0.3882  0.5288  0.0000  0.5047  0.5288  1.0000  0       Brain small vessel disease with or without ocular anomalies (OMIM:175780): Strabismus (HP:0000486)-Exotropia (HP:0000577),      Strabismus (HP:0000486)-buphthalmos (MP:0009274), Hypoplasia of the maxilla (HP:0000327)-abnormal cornea morphology (MP:0001312), Proptosis (HP:0000520)-abnormal cornea morphology (MP:0001312), Hypertelorism (HP:0000316)-abnormal cornea morphology (MP:0001312), Brachyturricephaly (HP:0000244)-abnormal retina morphology (MP:0001325),          Proximity to COL7A1 associated with Localized dystrophic epidermolysis bullosa, pretibial form (ORPHA:79410): Syndactyly (HP:0001159)-Nail dystrophy (HP:0008404), Hypoplasia of the maxilla (HP:0000327)-Carious teeth (HP:0000670),   Proximity to COL7A1 Syndactyly (HP:0001159)-abnormal digit morphology (MP:0002110), Strabismus (HP:0000486)-abnormal tongue morphology (MP:0000762), Hypoplasia of the maxilla (HP:0000327)-abnormal tongue morphology (MP:0000762), Proptosis (HP:0000520)-abnormal tongue morphology (MP:0000762), Hypertelorism (HP:0000316)-abnormal tongue morphology (MP:0000762),
                        +6       ENPP1_AD        ENPP1   5167    AD      0.0079  0.7695  0.5112  0.9996  0.3738  0.5112  0.0000  0.5044  0.5112  1.0000  0       Autosomal recessive hypophosphatemic rickets (ORPHA:289176): Hypoplasia of the maxilla (HP:0000327)-Tooth abscess (HP:0030757), Brachyturricephaly (HP:0000244)-Craniosynostosis (HP:0001363),  Syndactyly (HP:0001159)-abnormal elbow joint morphology (MP:0013945), Strabismus (HP:0000486)-abnormal retina morphology (MP:0001325), Hypoplasia of the maxilla (HP:0000327)-abnormal snout skin morphology (MP:0030533), Proptosis (HP:0000520)-abnormal retina morphology (MP:0001325), Hypertelorism (HP:0000316)-abnormal retina morphology (MP:0001325), Brachyturricephaly (HP:0000244)-abnormal retina morphology (MP:0001325),                 Proximity to DMP1 associated with Autosomal recessive hypophosphatemic rickets (ORPHA:289176): Hypoplasia of the maxilla (HP:0000327)-Tooth abscess (HP:0030757), Brachyturricephaly (HP:0000244)-Craniosynostosis (HP:0001363),        Proximity to DMP1 Syndactyly (HP:0001159)-abnormal long bone hypertrophic chondrocyte zone (MP:0000165), Strabismus (HP:0000486)-abnormal dental pulp cavity morphology (MP:0002819), Hypoplasia of the maxilla (HP:0000327)-abnormal dental pulp cavity morphology (MP:0002819), Proptosis (HP:0000520)-abnormal dental pulp cavity morphology (MP:0002819), Hypertelorism (HP:0000316)-abnormal dental pulp cavity morphology (MP:0002819), Brachyturricephaly (HP:0000244)-abnormal dental pulp cavity morphology (MP:0002819),
                        +7       MUC6_AD MUC6    4588    AD      0.0089  0.7563  0.5046  0.9990  0.0000  0.0000  0.0000  0.5046  0.5046  1.0000  0                               Proximity to GALNT2 associated with Congenital disorder of glycosylation, type IIt (OMIM:618885): Syndactyly (HP:0001159)-Sandal gap (HP:0001852), Strabismus (HP:0000486)-Alternating exotropia (HP:0031717), Hypoplasia of the maxilla (HP:0000327)-Tented upper lip vermilion (HP:0010804), Proptosis (HP:0000520)-Hypertelorism (HP:0000316), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Brachycephaly (HP:0000248),
                        +8       MUC6_AR MUC6    4588    AR      0.0089  0.7562  0.5046  0.9990  0.0000  0.0000  0.0000  0.5046  0.5046  1.0000  0                               Proximity to GALNT2 associated with Congenital disorder of glycosylation, type IIt (OMIM:618885): Syndactyly (HP:0001159)-Sandal gap (HP:0001852), Strabismus (HP:0000486)-Alternating exotropia (HP:0031717), Hypoplasia of the maxilla (HP:0000327)-Tented upper lip vermilion (HP:0010804), Proptosis (HP:0000520)-Hypertelorism (HP:0000316), Hypertelorism (HP:0000316)-Hypertelorism (HP:0000316), Brachyturricephaly (HP:0000244)-Brachycephaly (HP:0000248),
                        +9       DDX56_AD        DDX56   54606   AD      0.0091  0.7545  0.5036  0.9992  0.0000  0.0000  0.3788  0.5036  0.5036  1.0000  0                       Brachyturricephaly (HP:0000244)-head decreased width, abnormal (ZP:0000407),            Proximity to PAK1IP1 Strabismus (HP:0000486)-abnormal maxilla morphology (MP:0000455), Hypoplasia of the maxilla (HP:0000327)-abnormal maxilla morphology (MP:0000455), Proptosis (HP:0000520)-abnormal maxilla morphology (MP:0000455), Hypertelorism (HP:0000316)-abnormal maxilla morphology (MP:0000455), Brachyturricephaly (HP:0000244)-decreased forebrain size (MP:0012138),
                        +10      BDKRB1_AD       BDKRB1  623     AD      0.0093  0.7525  0.5018  1.0000  0.0000  0.0000  0.0000  0.5018  0.5018  1.0000  0                                       Proximity to OPN4 Strabismus (HP:0000486)-abnormal visual pursuit (MP:0006156), Hypoplasia of the maxilla (HP:0000327)-abnormal visual pursuit (MP:0006156), Proptosis (HP:0000520)-abnormal visual pursuit (MP:0006156), Hypertelorism (HP:0000316)-abnormal visual pursuit (MP:0006156), Brachyturricephaly (HP:0000244)-abnormal retina ganglion cell morphology (MP:0008056),
                        +

                        +

                        Docker for Mac

                        +

                        Follow this link and download the Docker.dmg for your operating +system.

                        +

                        Mac Image One

                        +

                        The Docker.dmg will be found in your /Downloads directory.

                        +

                        Mac Image Two

                        +

                        After double-clicking on the Docker.dmg a new window will come up:

                        +

                        Mac Image Three

                        +

                        Drag and drop the Docker app into your /Applications folder. +Double-click on the Docker symbol. +Docker Desktop will start in the background, after you allow it to be opened.

                        +

                        Mac Image Six

                        +

                        Additionally, this window will come up to agree the Docker subscription service agreement.

                        +

                        Mac Image Seven

                        +

                        After running the installation restart your terminal and check the Docker installation again from inside your +terminal with:

                        +
                        docker --version
                        +
                        +

                        If the output gives you a version and no error you are ready to go. If you have not already restarted your terminal do +this now, +and the error should be fixed.

                        +

                        In case you get an error message like this, please ensure you have downloaded the correct docker.dmg.

                        +

                        Mac Image Eight

                        +

                        Now, whenever you want to pull images make sure that Docker is running in the background. Otherwise, you may get an +error stating it's not able to connect to the Docker deamon.

                        +

                        Docker for Windows

                        +

                        Follow this link and download the Docker installer for +Windows.

                        +

                        Inside your /Downloads directory, search for the Installer and double-click.

                        +

                        Windows Image One

                        +

                        To run on Windows Docker requires a virtual machine. Docker recommends using WSL2. +More information on this can be found here.

                        +

                        Windows Image Two

                        +

                        Click “Ok” and wait a bit.

                        +

                        Windows Image Three

                        +

                        Now you will have to restart your computer.

                        +

                        Windows Image Four

                        +

                        After restarting, Docker should start automatically and the Service Agreement will come up, which you will have to agree +to use Docker:

                        +

                        Windows Image Five

                        +

                        If the Docker desktop app is showing this warning upon start, do not click “Restart”, yet. Instead, follow the link and +install the kernel update.

                        +

                        Windows Image Six

                        +

                        The link should point you to an address with a separate download link.

                        +

                        Windows Image Seven

                        +

                        Start and finish the installation for WSL.

                        +

                        Windows Image Eight

                        +

                        If you still have the Docker Desktop dialog window open in the background, click on Restart. Otherwise, just restart +your computer as you normally do.

                        +

                        Windows Image Nine

                        +

                        If Docker Desktop did not start on its own, simply open it from the shortcut on your Desktop. You can do the initial +orientation by clicking "Start".

                        +

                        Windows Image Ten

                        +

                        After this, your Docker Desktop screen should look like this:

                        +

                        Windows Image Eleven

                        +

                        Now, whenever you want to pull images make sure that Docker is running in the background.

                        + + + + + + +
                        +
                        + + +
                        + +
                        + + + +
                        +
                        +
                        +
                        + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/fhkb/index.html b/tutorial/fhkb/index.html new file mode 100644 index 000000000..9964e6cdc --- /dev/null +++ b/tutorial/fhkb/index.html @@ -0,0 +1,5784 @@ + + + + + + + + + + + + + + + + + + + + + + + + Family History Knowledge Base (FHKB) tutorial - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        + +
                        + + + + +
                        + + +
                        + +
                        + + + + + + +
                        +
                        + + + +
                        +
                        +
                        + + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        +
                        + + + +
                        +
                        + + + + + + + + + + + + + +

                        Manchester Family History Advanced OWL

                        +

                        This is a fork of the infamous Manchester Family History Advanced OWL Tutorial version 1.1, located at

                        +

                        http://owl.cs.manchester.ac.uk/publications/talks-and-tutorials/fhkbtutorial/

                        +

                        The translation to markdown is not without issue, but we are making a start to making the tutorial a bit more accessible. +This reproduction is done with kind permission by Robert Stevens.

                        +

                        Original credits (Version 1.1, see pdf):

                        +

                        Authors:

                        +
                          +
                        • Robert Stevens
                        • +
                        • Margaret Stevens
                        • +
                        • Nicolas Matentzoglu
                        • +
                        • Simon Jupp
                        • +
                        +
                        Bio-Health Informatics Group
                        +School of Computer Science
                        +University of Manchester
                        +Oxford Road
                        +Manchester
                        +United Kingdom
                        +M13 9PL
                        +robert.stevens@manchester.ac.uk
                        +
                        +

                        Contributors

                        +
                          +
                        • v 1.0 Robert Stevens, Margaret Stevens, Nicolas Matentzoglu and Simon Jupp
                        • +
                        • v 1.1 Robert Stevens, Nicolas Matentzoglu
                        • +
                        • v 2.0 (Web version) Robert Stevens, Nicolas Matentzoglu, Shawn Tan
                        • +
                        +
                        The University of Manchester
                        +Copyright© The University of Manchester
                        +November 25, 2015
                        +
                        +

                        Acknowledgements

                        +

                        This tutorial was realised as part of the Semantic Web Authoring Tool (SWAT) project (see http://www.swatproject.org), +which is supported by the UK Engineering and Physical Sciences Research +Council (EPSRC) grant EP/G032459/1, to the University of Manchester, the University of Sussex and +the Open University.

                        +

                        Dedication

                        +

                        The Stevens family—all my ancestors were necessary for this to happen. Also, for my Mum who gathered +all the information.

                        +

                        Contents

                        +

                        Preamble

                        +
                          +
                        • 0.1 Licencing
                        • +
                        • 0.2 Reporting Errors
                        • +
                        • 0.3 Acknowledgements
                        • +
                        +

                        1. Introduction

                        +
                          +
                        • 1.1 Learning Outcomes
                        • +
                        • 1.2 Why Family History?
                        • +
                        • 1.3 How to use this Tutorial
                        • +
                        • 1.4 FHKB Resources
                        • +
                        • 1.5 Conventions used in this Tutorial
                        • +
                        +

                        2. Adding some Individuals to the FHKB

                        +
                          +
                        • 2.1 A World of Objects
                        • +
                        • 2.2 Asserting Parentage Facts
                        • +
                        • 2.3 Summary
                        • +
                        +

                        3. Ancestors and Descendants

                        +
                          +
                        • 3.1 Ancestors and Descendants
                        • +
                        • 3.2 Grandparents and Great Grandparents
                        • +
                        • 3.3 Summary
                        • +
                        +

                        4. Modelling the Person Class

                        +
                          +
                        • 4.1 The Class of Person
                        • +
                        • 4.2 Describing Sex in the FHKB
                        • +
                        • 4.3 Defining Man and Woman
                        • +
                        • 4.4 Describing Parentage in the FHKB
                        • +
                        • 4.5 Who has a father?
                        • +
                        • 4.6 Filling in Domains and Ranges for the FHKB Properties
                        • +
                        • 4.7 Inconsistencies
                        • +
                        • 4.8 Adding Some Defined Classes for Ancestors and so on
                        • +
                        • 4.9 Summary
                        • +
                        +

                        5. Siblings in the FHKB

                        +
                          +
                        • 5.1 Blood relations
                        • +
                        • 5.2 Siblings: Option One
                        • +
                        • 5.2.1 Brothers and Sisters
                        • +
                        • 5.3 Siblings: Option two
                        • +
                        • 5.3.1 Which Modelling Option to Choose for Siblings?
                        • +
                        • 5.4 Half-Siblings
                        • +
                        • 5.5 Aunts and Uncles
                        • +
                        • 5.6 Summary
                        • +
                        +

                        6. Individuals in Class Expressions

                        +
                          +
                        • 6.1 Richard and Robert’s Parents and Ancestors
                        • +
                        • 6.2 Closing Down What we Know About Parents and Siblings
                        • +
                        • 6.3 Summary
                        • +
                        +

                        7. Data Properties in the FHKB

                        +
                          +
                        • 7.1 Adding Some Data Properties for Event Years - 7.1.1 Counting Numbers of Children
                        • +
                        • 7.2 The Open World Assumption
                        • +
                        • 7.3 Adding Given and Family Names
                        • +
                        • 7.4 Summary
                        • +
                        +

                        8. Cousins in the FHKB

                        +
                          +
                        • 8.1 Introducing Cousins
                        • +
                        • 8.2 First Cousins
                        • +
                        • 8.3 Other Degrees and Removes of Cousin
                        • +
                        • 8.4 Doing First Cousins Properly
                        • +
                        • 8.5 Summary
                        • +
                        +

                        9. Marriage in the FHKB

                        +
                          +
                        • 9.1 Marriage - 9.1.1 Spouses
                        • +
                        • 9.2 In-Laws
                        • +
                        • 9.3 Brothers and Sisters In-Law
                        • +
                        • 9.4 Aunts and Uncles in-Law
                        • +
                        • 9.5 Summary
                        • +
                        +

                        10. Extending the TBox

                        +
                          +
                        • 10.1 Adding Defined Classes
                        • +
                        • 10.2 Summary
                        • +
                        +

                        11. Final remarks

                        +

                        A FHKB Family Data

                        +

                        Preamble

                        +

                        0.1 Licencing

                        +

                        The ‘Manchester Family History Advanced OWL Tutorial’ by Robert Stevens, Margaret Stevens, Nicolas +Matentzoglu, Simon Jupp is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported +License.

                        +

                        0.2 Reporting Errors

                        +

                        This manual will almost certainly contain errors, defects and infelicities. Do report them to robert.stevens@manchester.ac.uk supplying chapter, section and some actual context in the form of words will help in fixing any of these issues.

                        +

                        0.3 Acknowledgements

                        +

                        As well as the author list, many people have contributed to this work. Any contribution, such as reporting bugs etc., is rewarded by an acknowledgement of contribution (in alphabetical order) when the authors get around to adding them:

                        +
                          +
                        • Graham Goff;
                        • +
                        • Matthew Horridge;
                        • +
                        • Jared Leo;
                        • +
                        • Fennie Liang;
                        • +
                        • Phil Lord;
                        • +
                        • Fiona McNeill;
                        • +
                        • Eleni Mikroyannidi;
                        • +
                        • George Moulton;
                        • +
                        • Bijan Parsia;
                        • +
                        • Alan Rector;
                        • +
                        • Uli Sattler;
                        • +
                        • Dmitry Tsarkov;
                        • +
                        • Danielle Welter.
                        • +
                        +

                        Chapter 1

                        +

                        Introduction

                        +

                        This tutorial introduces the tutee to many of the more advanced features of the Web Ontology Language (OWL). The topic of family history is used to take the tutee through various modelling issues and, in doing so, using many features of OWL 2 to build a Family History Knowledge Base (FHKB). The exercises are designed to maximise inference about family history through the use of an automated reasoner on an OWL knowledge base (KB) containing many members of the Stevens family.

                        +

                        The aim, therefore, is to enable people to learn advanced features of OWL 2 in a setting that involves both classes and individuals, while attempting to maximise the use of inference within the FHKB.

                        +

                        1.1 Learning Outcomes

                        +

                        By doing this tutorial, a tutee should be able to:

                        +
                          +
                        1. Know about the separation of entities into TBox and ABox;
                        2. +
                        3. Use classes and individuals in modelling;
                        4. +
                        5. Write fancy class expressions;
                        6. +
                        7. Assert facts about individuals;
                        8. +
                        9. Use the effects of property hierarchies, property characteristics, domain/range constraints to drive + inference;
                        10. +
                        11. Use constraints and role chains on inferences about individuals;
                        12. +
                        13. Understand and manage the consequences of the open world assumption in the TBox and ABox;
                        14. +
                        15. Use nominals in class expressions;
                        16. +
                        17. Appreciate some limits of OWL 2.
                        18. +
                        +

                        1.2 Why Family History?

                        +

                        Building an FHKB enables us to meet our learning outcomes through a topic that is accessible to virtually everyone. Family history or genealogy is a good topic for a general tutorial on OWL 2 as it enables us to touch many features of the language and, importantly, it is a field that everyone knows. All people have a family and therefore a family history – even if they do not know their particular family history. A small caveat was put on the topic being accessible to everyone as some cultures differ, for instance, in the description of cousins and labels given to different siblings. Nevertheless, family history remains a topic that everyone can talk about.

                        +

                        Family history is a good topic for an OWL ontology as it obviously involves both individuals – the people involved – and classes of individuals – people, men and women, cousins, etc. Also, it is an area rich in inference; from only knowing parentage and sex of an individual, it is possible to work out all family relationships – for example, sharing parents implies a sibling relationship; one’s parent’s brothers are one’s uncles; one’s parent’s parents are one’s grandparents. So, we should be able to construct an ontology that allows us to both express family history, but also to infer family relationships between people from knowing relatively little about them.

                        +

                        As we will learn through the tutorial, OWL 2 cannot actually do all that is needed to create a FHKB. This is unfortunate, but we use it to our advantage to illustrate some of the limitations of OWL 2. We know that rule based systems can do family history with ease, but that is not the point here; we are not advocating OWL DL as an appropriate mechanism for doing family history, but we do use it as a good educational example.

                        +

                        We make the following assumptions about what people know:

                        +
                          +
                        • We assume that people know OWL to the level that is known at the end of the Pizza tutorial. + Some ground will be covered again, but a lot of basic OWL is assumed.
                        • +
                        • We assume people know how to use Protégé or their OWL environment of choice. We do not give + ‘click by click’ instructions. At some places, some guidance is given, but this is not to be relied + upon as Protégé changes and we will not keep up to date.
                        • +
                        +

                        We make some simplifying assumptions in this tutorial:

                        +
                          +
                        • We take a conventional western view of family history. This appears to have most effects on naming + of sibling and cousin relationships.
                        • +
                        • We take a straight-forward view on the sex of people; this is explored further in Chapter 4;
                        • +
                        • A ‘conventional’ view of marriage is taken; this is explored further in Chapter 9.
                        • +
                        • We make no special treatment of time or dates; we are only interested in years and we do not do + anything fancy; this is explored more in Chapter 7.
                        • +
                        • We assume the ancestors of people go back for ever; obviously this is not true, eventually one would + get back to a primordial soup and one’s ancestors are not humans (members of the classPerson), + but we don’t bother with such niceties.
                        • +
                        +

                        At the end of the tutorial, you should be able to produce a property hierarchy and a TBox or class hierarchy such as shown in Figure 1.1; all supported by use of the automated reasoner and a lot of OWL 2’s features.

                        +

                        Figure 1.1

                        +

                        Figure 1.1: A part of the class and property hierarchy of the final FHKB.

                        +

                        1.3 How to use this Tutorial

                        +

                        Here are some tips on using this manual to the best advantage:

                        +
                          +
                        • Start at the beginning and work towards the end.
                        • +
                        • You can just read the tutorial, but building the FHKB will help you learn much more and much + more easily
                        • +
                        • Use the reasoner in each task; a lot of the FHKB tutorial is about using the reasoner and not doing + so will detract from the learning outcomes.
                        • +
                        +

                        1.4 FHKB Resources

                        +

                        The following resources are available at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial:

                        +
                          +
                        • A full version of the Stevens FHKB.
                        • +
                        • Some links to papers about the FHKB.
                        • +
                        • Some slides about the FHKB tutorial.
                        • +
                        • A set of OWL resources for each stage of the FHKB.
                        • +
                        • Some blogs about the FHKB are at http://robertdavidstevens.wordpress.com.
                        • +
                        +

                        1.5 Conventions used in this Tutorial

                        +
                          +
                        • All OWL is written in Manchester Syntax.
                        • +
                        • When we use FHKB entities within text, we use a sans serif typeface.
                        • +
                        • We use CamelCase for classes and property names.
                        • +
                        • Class names start with upper case.
                        • +
                        • Individual names start with a lower case letter and internal underscores to break words.
                        • +
                        • Property names usually start with ‘is’ or ‘has’ and are CamelCase with a lower case initial letter.
                        • +
                        • Many classes and individuals in the FHKB have annotation properties, usually human readable labels. They show up in some of the examples in Manchester syntax, but are not made explicit as part of the tasks in this tutorial.
                        • +
                        • Every object property is necessarily a sub-property of topObjectProperty. It does not have to be asserted as such. Nevertheless, there might be situations where this relationship is made explicit in this tutorial for illustrative reasons.
                        • +
                        • The individuals we are dealing with represent distinct persons. Throughout the tutorial, once the respective axiom is introduced (chapter 7.1.1), the reader should make sure that all his or her individuals are always made distinct, especially when he or she adds a new one.
                        • +
                        • At the end of each chapter, we note the Description Logic Language (expressivity) needed to represent the ontology and the reasoning times for a number of state of the art reasoning systems. This should get the reader a sense how difficult the FHKB becomes for reasoners to deal with over time.
                        • +
                        • When there is some scary OWL or the reasoner may find the FHKB hard work, you will see a ‘here + be dragons’ image.1 dragon
                        • +
                        +

                        1 The image comes fromhttp://ancienthomeofdragon.homestead.com/May 2012.

                        +

                        Chapter 2

                        +

                        Adding some Individuals to the FHKB

                        +

                        In this chapter we will start by creating a fresh OWL ontology and adding some individuals that will be +surrogates for people in the FHKB. In particular you will:

                        +
                          +
                        1. Create a new OWL ontology for the FHKB;
                        2. +
                        3. Add some individuals that will stand for members of the Stevens family.
                        4. +
                        5. Describe parentage of people.
                        6. +
                        7. Add some facts to specific individuals as to their parentage;
                        8. +
                        9. See the reasoner doing some work.
                        10. +
                        11. At the moment we will ignore sex; sex will not happen until Chapter 4.
                        12. +
                        +

                        2.1 A World of Objects

                        +

                        The ‘world’2 or field of interest we model in an ontology is made up of objects or individuals. Such objects include, but are not limited to:

                        +
                          +
                        • People, their pets, the pizzas they eat;
                        • +
                        • The processes of cooking pizzas, living, running, jumping, undertaking a journey;
                        • +
                        • The spaces within a room, a bowl, an artery;
                        • +
                        • The attributes of things such as colour, dimensions, speed, shape of various objects;
                        • +
                        • Boundaries, love, ideas, plans, hypotheses.
                        • +
                        +

                        2 we use ‘world’ as a synonym of ‘field of interest’ or ‘domain’. ‘World’ does not restrict us to modelling the physical world outside our consciousness.

                        +

                        We observe these objects, either outside lying around in the world or in our heads. OWL is all about modelling such individuals. Whenever we make a statement in OWL, when we write down an axiom, we are making statements about individuals. When thinking about the axioms in an ontology it is best to think about the individuals involved, even if OWL individuals do not actually appear in the ontology. All through this tutorial we will always be returning to the individuals being described in order to help us understand what we are doing and to help us make decisions about how to do it.

                        +

                        2.2 Asserting Parentage Facts

                        +

                        Biologically, everyone has parents; a mother and a father3. The starting point for family history is parentage; we need to relate the family member objects by object properties. An object property relates two objects, in this case a child object with his or her mother or father object. To do this we need to create three object properties:

                        + + + + + + + + + + + +
                        Task 1: Creating object properties for parentage
                        1. Create a new ontology;
                        2. Create an object property hasMother;
                        3. Create a property isMotherOf and give hasMother the InverseOf: isMotherOf;
                        4. Do the same for the property hasFather;
                        5. Create a property hasParent; give it the obvious inverse;
                        6. Make hasMother and hasFather sub-properties of hasParent.
                        7. Run the reasoner and look at the property hierarchy.
                        +

                        Note how the reasoner has automatically completed the sub-hierarchy for isParentOf: isMotherOf and isFatherOf are inferred to be sub-properties of isParentOf.

                        +

                        The OWL snippet below shows some parentage fact assertions on an individual. Note that rather than being assertions to an anonymous individual via some class, we are giving an assertion to a named individual.

                        +
                        Individual: grant_plinth
                        +Facts: hasFather mr_plinth, hasMother mrs_plinth
                        +
                        +

                        3 Don’t quibble; it’s true enough here.

                        + + + + + + + + + + + +
                        Task 2: Create the ABox
                        1. Using the information in Table A.1 (see appendix) about parentage (so the columns about fathers and mothers), enter the fact assertions for the people which appear in rows shaded in grey. We will only use the hasMother and hasFather properties in our fact assertions. You do not need to assert names and birth years yet. This exercise will require you to create an individual for every person we want to talk about, using the Firstname_Secondname_Familyname_Birthyear pattern, as for example in Robert_David_Bright_1965.
                        +

                        camera

                        +
                        While asserting facts about all individuals in the FHKB will be a bit tedious at
                        +times, it might be useful to at least do the task for a subset of the family members.
                        +For the impatient reader, there is a convenience snapshot of the ontology including
                        +the raw individuals available at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                        +
                        +

                        noteiconsmall +

                        If you are working with Protégé, you may want to look at the Matrix plugin for
                        +Protégé at this point. The plugin allows you to add individuals quickly in the
                        +form of a regular table, and can significantly reduce the effort of adding any type
                        +of entity to the ontology. In order to install the matrix plugin, open Protégé and
                        +go to File » Check for plugins. Select the ‘Matrix Views’ plugin. Click install,
                        +wait until the the installation is confirmed, close and re-open Protégé; go to the
                        +‘Window’ menu item, select ‘Tabs’ and add the ‘Individuals matrix’.
                        +

                        +

                        Now do the following:

                        + + + + + + + + + + + +
                        Task 3: DL queries
                        1. Classify the FHKB.
                        2. Issue the DL query hasFather value David_Bright_1934 and look at the answers (remember to check the respective checkbox in Protégé to include individuals in your query results).
                        3. Issue the DL query isFatherOf value Robert_David_Bright_1965. Look at the answers.
                          4. Look at the entailed facts on Robert_David_Bright_1965.
                        +

                        You should find the following:

                        +
                          +
                        • David Bright (1934) is the father of Robert David Bright (1965) and Richard John Bright (1962).
                        • +
                        • Robert David Bright (1965) has David Bright 1934 as a parent.
                        • +
                        +

                        Since we have said that isFatherOf has an inverse of hasFather, and we have asserted that Robert_David_Bright_1965 hasFather David_Bright_1934, we have a simple entailment that David_Bright_1934 isFatherOf Robert_David_Bright_1965. So, without asserting the isFatherOf facts, we have been able to ask and get answers for that DL query.

                        +

                        As we asserted that Robert_David_Bright_1965 hasFather David_Bright_1934, we also infer that he hasParent David_Bright_1934; this is because hasParent is the super-property of hasFather and the sub-property implies the super-property. This works all the way up the property tree until topObjectProperty, so all individuals are related by topObjectProperty—this is always true. This implication ‘upwards’ is the way to interpret how the property hierarchies work.

                        +

                        2.3 Summary

                        +

                        We have now covered the basics of dealing with individuals in OWL ontologies. We have set up some properties, but without domains, ranges, appropriate characteristics and then arranged them in a hierarchy. From only a few assertions in our FHKB, we can already infer many facts about an individual: Simple exploitation of inverses of properties and super-properties of the asserted properties.

                        +

                        We have also encountered some important principles:

                        +
                          +
                        • We get inverses for free.
                        • +
                        • The sub-property implies the super-property. So, hasFather implies the hasParent fact between individuals. This entailment of the super-property is very important and will drive much of the inference we do with the FHKB.
                        • +
                        • Upon reasoning we get the inverses of properties between named individuals for free.
                        • +
                        • Lots is still open. For example, we do not know the sex of individuals and what other children, other than those described, people in the FHKB may have.
                        • +
                        +

                        noteiconsmall

                        +
                        The FHKB ontology at this stage of the tutorial has an expressivity of ALHI.
                        +
                        +

                        noteiconsmall

                        +
                        The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                        +machine by HermiT 1.3.8 is approximately 0.026 sec (0.00001 % of final), by Pellet
                        +2.2.0 0.144 sec (0.00116 % of final) and by FaCT++ 1.6.4 is approximately 0.
                        +sec (0.000 % of final). 0 sec indicates failure or timeout.
                        +
                        +

                        Chapter 3

                        +

                        Ancestors and Descendants

                        +

                        In this Chapter you will:

                        +
                          +
                        1. Use sub-properties and the transitive property characteristic to infer ancestors of people;
                        2. +
                        3. Add properties to the FHKB property hierarchy that will infer ancestors and descendants of a + person without adding any more facts to the FHKB;
                        4. +
                        5. Explore the use of sub-property chains for grandparents, great grandparents and so on;
                        6. +
                        7. Place all of these new object properties in the property hierarchy and in that way learn more about + the implications of the property hierarchy.
                        8. +
                        +

                        camera

                        +
                        Find a snapshot of the ontology at this stage at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial.
                        +
                        +

                        3.1 Ancestors and Descendants

                        +

                        The FHKB has parents established between individuals and we know that all people have two parents. A parent is an ancestor of its children; a person’s parent’s parents are its ancestors; and so on. So, in our FHKB, Robert’s ancestors are David, Margaret, William, Iris, Charles, Violet, James, another Violet, another William, Sarah and so on. If my parent’s parents are my ancestors, then what we need is a transitive version of the hasParent property. Obviously we do not want hasParent to be transitive, as Robert’s grandparents (and so on) would become his parents (and that would be wrong).

                        +

                        We can easily achieve what is necessary. We need a hasAncestor property that has a transitive characteristic. The trick is to make this a super-property of the hasParent property. As explained before, a sub-property implies its super-property. So, if individual x holds a hasParent property with an individual y , then it also holds an instance of its super-property hasAncestor with the individual y. If individual y then holds a hasParent property with another individual z , then there is also, by implication, a hasAncestor property between y and z. As hasAncestor is transitive, x and z also hold a hasAncestor relationship between them.

                        +

                        The inverse of hasAncestor can either be isAncestorOf or hasDescendant. We choose the isAncestorOf option.

                        + + + + + + + + + + + +
                        Task 4: Object properties: exploiting the semantics
                        1. Make a new object property hasRelation, make it symmetric.
                        2. Make a new object property hasAncestor.
                        3. Make it a sub-property of hasRelation and a super-property of hasParent.
                        4. Make hasAncestor transitive.
                        5. Create the inverse isAncestorOf. Do not ‘stitch’ it into the property hierarchy; the reasoner will sort it all out for you.
                        6. Run the reasoner and issue the DL query hasAncestor value William_George_Bright_1901.
                        7. Issue the query isAncestorOf value Robert_David_Bright_1965.
                        +

                        The hasAncestor object property will look like this:

                        +
                        ObjectProperty: hasAncestor
                        +SubPropertyOf: hasRelation
                        +SuperPropertyOf: hasParent,
                        +Characteristics: Transitive
                        +InverseOf: isAncestorOf
                        +
                        +

                        As usual, it is best to think of the objects or individuals involved in the relationships. Consider the three individuals – Robert, David and William. Each has a hasFather property, linking Robert to David and then David to William. As hasFather implies its super-property hasParent, Robert also has a hasParent property with David, and David has a hasParent relation to William. Similarly, as hasParent implies hasAncestor, the Robert object has a hasAncestor relation to the David object and the David object has one to the William object. As hasAncestor is transitive, Robert not only holds this property to the David object, but also to the William object (and so on back through Robert’s ancestors).

                        +

                        3.2 Grandparents and Great Grandparents

                        +

                        We also want to use a sort of restricted transitivity in order to infer grandparents, great grandparents and so on. My grandparents are my parent’s parents; my grandfathers are my parent’s fathers. My great grandparents are my parent’s parent’s parents. My great grandmothers are my parent’s parent’s mothers. This is sort of like transitivity, but we want to make the paths only a certain length and, in the case of grandfathers, we want to move along two relationships – hasParent and then hasFather.

                        +

                        We can do this with OWL 2’s sub-property chains. The way to think about sub-property chains is: If we +see property x followed by property y linking three objects, then it implies that property z is held between

                        +

                        Figure 3.1

                        +

                        Figure 3.1: Three blobs representing objects of the classPerson. The three objects are linked by a hasParent +property and this implies a hasGrandparent property.

                        +

                        the first and third objects. Figure 3.1 shows this diagrammatically for the hasGrandfather property.

                        +

                        For various grandparent object properties we need the following sets of implications:

                        +
                          +
                        • My parent’s parents are my grandparents;
                        • +
                        • My parent’s fathers are my grandfathers;
                        • +
                        • My parent’s mothers are my grandmothers;
                        • +
                        • My parent’s parent’s parents are my great grandparents or my grandparent’s parents are my great + grandparents.
                        • +
                        • My parent’s parent’s fathers are my great grandfathers or my parent’s grandfathers are my great + grandfathers;
                        • +
                        • My parent’s parent’s mothers are my great grandmothers (and so on).
                        • +
                        +

                        Notice that we can trace the paths in several ways, some have more steps than others, though the shorter +paths themselves employ paths. Tracing these paths is what OWL 2’s sub-property chains achieve. For +the new object property hasGrandparent we write:

                        +
                        ObjectProperty: hasGrandparent SubPropertyChain: hasParent o hasParent
                        +
                        +

                        We read this as ‘hasParent followed by hasParent implies hasGrandparent’. We also need to think where the hasGrandparent property fits in our growing hierarchy of object properties. Think about the implications: Does holding a hasParent property between two objects imply that they also hold a hasGrandparent property? Of course the answer is ‘no’. So, this new property is not a super-property of hasParent. Does the holding of a hasGrandparent property between two objects imply that they also hold an hasAncestor property? The answer is ‘yes’; so that should be a super-property of hasGrandparent. We need to ask such questions of our existing properties to work out where we put it in the object property hierarchy. At the moment, our hasGrandparent property will look like this:

                        +
                        ObjectProperty: hasGrandParent
                        +SubPropertyOf: hasAncestor
                        +SubPropertyChain: hasParent o hasParent
                        +SuperPropertyOf: hasGrandmother, hasGrandfather
                        +InverseOf: isGrandParentOf
                        +
                        +

                        Do the following task:

                        + + + + + + + + + + + +
                        Task 5: Grandparents object properties
                        1. Make the hasGrandparent, hasGrandmother and hasGrandfather object properties and the obvious inverses (see OWL code above);
                        2. Go to the individuals tabs and inspects the inferred object property assertions for Robert_David_Bright_1965 and his parents.
                        +

                        Again, think of the objects involved. We can take the same three objects as before: Robert, David and William. Think about the properties that exist, both by assertion and implication, between these objects. We have asserted only hasFather between these objects. The inverse can be inferred between the actual individuals (remember that this is not the case for class level restrictions – that all instances of a class hold a property does not mean that the filler objects at the other end hold the inverse; the quantification on the restriction tells us this). Remember that:

                        +
                          +
                        1. Robert holds a hasFather property with David;
                        2. +
                        3. David holds a hasFather property with William;
                        4. +
                        5. By implication through the hasParent super-property of hasFather, Robert holds a hasParent property with David, and the latter holds one with William;
                        6. +
                        7. The sub-property chain on hasGrandfather then implies that Robert holds a hasGrandfather property to William. Use the diagram in figure 3.1 to trace the path; there is a hasParent path from Robert to William via David and this implies the hasGrandfather property between Robert and William.
                        8. +
                        +

                        It is also useful to point out that the inverse of hasGrandfather also has the implication of the sub-property chain of the inverses of hasParent. That is, three objects linked by a path of two isParentOf properties implies that an isGrandfatherOf property is established between the first and third object, in +this case William and Robert. As the inverses of hasFather are established by the reasoner, all the inverse implications also hold.

                        +

                        3.3 Summary

                        +

                        It is important when dealing with property hierarchies to think in terms of properties between objects and of the implications ‘up the hierarchy’. A sub-property implies its super-property. So, in our FHKB, two person objects holding a hasParent property between them, by implication also hold an hasAncestor +property between them. In turn, hasAncestor has a super-property hasRelation and the two objects in +question also hold, by implication, this property between them as well.

                        +

                        We made hasAncestor transitive. This means that my ancestor’s ancestors are also my ancestors. That a sub-property is transitive does not imply that its super-property is transitive. We have seen that by manipulating the property hierarchy we can generate a lot of inferences without adding any more facts to the individuals in the FHKB. This will be a feature of the whole process – keep the work to the minimum (well, almost).

                        +

                        In OWL 2, we can also trace ‘paths’ around objects. Again, think of the objects involved in the path of properties that link objects together. We have done simple paths so far – Robert linked to David via hasParent and David linked to William via hasFather implies the link between Robert and William of hasGrandfather. If this is true for all cases (for which you have to use your domain knowledge), one can capture this implication in the property hierarchy. Again, we are making our work easier by adding no new explicit facts, but making use of the implication that the reasoner works out for us.

                        +

                        noteiconsmall

                        +
                        The FHKB ontology at this stage of the tutorial has an expressivity ofALRI+.
                        +
                        +

                        noteiconsmall

                        +
                        The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                        +machine by HermiT 1.3.8 is approximately 0.262 sec (0.00014 % of final), by Pellet
                        +2.2.0 0.030 sec (0.00024 % of final) and by FaCT++ 1.6.4 is approximately 0.004
                        +sec (0.000 % of final). 0 sec indicates failure or timeout.
                        +
                        +

                        Chapter 4

                        +

                        Modelling the Person Class

                        +

                        In this Chapter you will:

                        +
                          +
                        1. Create a Person class;
                        2. +
                        3. Describe Sex classes;
                        4. +
                        5. Define Man and Woman;
                        6. +
                        7. Ask which of the people in the FHKB has a father.
                        8. +
                        9. Add domains and ranges to the properties in the FHKB.
                        10. +
                        11. Make the FHKB inconsistent.
                        12. +
                        13. Add some more defined classes about people and see some equivalence inferred between classes.
                        14. +
                        +

                        These simple classes will form the structure for the whole FHKB.

                        +

                        4.1 The Class of Person

                        +

                        For the FHKB, we start by thinking about the objects involved

                        +
                          +
                        1. The people in a family – Robert, Richard, David, Margaret, William, Iris, Charles, Violet, Eileen, + John and Peter;
                        2. +
                        3. The sex of each of those people;
                        4. +
                        5. The marriages in which they participated;
                        6. +
                        7. The locations of their births;
                        8. +
                        9. And many more...
                        10. +
                        +

                        There is a class of Person that we will use to represent all these people objects.

                        + + + + + + + + + + + +
                        Task 6: Create the Person class
                        1. Create a class called DomainEntity;
                        2. Create a subclass of DomainEntity called Person.
                        +

                        We use DomainEntity as a house-keeping measure. All of our ontology goes underneath this class. We can put other classes ‘outside’ the ontology, as siblings of DomainEntity, such as ‘probe’ classes we wish to use to test our ontology.

                        +

                        The main thing to remember about the Person class is that we are using it to represent all ‘people’ individuals. When we make statements about the Person class, we are making statements about all ‘people’ individuals.

                        +

                        What do we know about people? All members of the Person class have:

                        +
                          +
                        • Sex – they are either male or female;
                        • +
                        • Everyone has a birth year;
                        • +
                        • Everyone has a mother and a father.
                        • +
                        +

                        There’s a lot more we know about people, but we will not mention it here.

                        +

                        4.2 Describing Sex in the FHKB

                        +

                        Each and every person object has a sex. In the FHKB we will take a simple view on sex – a person is either male or female, with no intersex or administrative sex and so on. Each person only has one sex.

                        +

                        We have two straight-forward options for modelling sex:

                        +
                          +
                        1. Each person object has their own sex object, which is either male or female. Thus Robert’s maleness is different from David’s maleness.
                        2. +
                        3. There is only one Maleness object and one Femaleness object and each person object has a relationship to either one of these sex objects, but not both.
                        4. +
                        +

                        We will take the approach of having a class of Maleness objects and a class of Femaleness objects. These are qualities or attributes of self-standing objects such as a person. These two classes are disjoint, and each is a subclass of a class called Sex. The disjointness means that any one instance of Sex cannot be both an instance of Maleness and an instance of Femaleness at once. We also want to put in a covering axiom on the class Sex, which means that any instance of Sex must be either Maleness or Femaleness; there is no other kind of Sex.

                        +

                        dragon

                        +

                        Again, notice that we have been thinking at the level of objects. We do the same when thinking about Person and their Sex. Each and every person is related to an instance of Sex. Each Person holds one relationship to a Sex object. To do this we create an object property called hasSex. We make this property functional, which means that any object can hold that property to only one distinct filler object.

                        +

                        We make the domain of hasSex to be Person and the range to be Sex. The domain of Person means that any object holding that property will be inferred to be a member of the class Person. Putting the range of Sex on the hasSex property means that any object at the right-hand end of the hasSex property will be inferred to be of the class Sex. Again, think at the level of individuals or objects.

                        +

                        We now put a restriction on the Person class to state that each and every instance of the class Person holds a hasSex property with an instance of the Sex class. It has an existential operator ‘some’ in the axiom, but the functional characteristic means that each Person object will hold only one hasSex property to a distinct instance of a Sex object4.

                        +

                        4 An individual could hold two hasSex properties, as long as the sex objects at the right-hand end of the property are not +different.

                        + + + + + + + + + + + +
                        Task 7: Modelling sex
                        1. Create a class called Sex;
                        2. Make it a subclass of DomainEntity;
                        3. Make Person and Sex disjoint;
                        4. Create two subclasses of Sex, Maleness and Femaleness;
                        5. Make Maleness and Femaleness disjoint;
                        6. Put a covering axiom on Sex such that it is equivalent to Maleness or Femaleness.
                        7. Create an object property, hasSex , with the domain Person, the range Sex and give it the characteristic of ‘Functional’;
                        8. Add a restriction hasSex some Sex to the class Person.
                        +

                        The hasSex property looks like:

                        +
                        ObjectProperty: hasSex
                        +Characteristics: Functional
                        +Domain: Person
                        +Range: Sex
                        +
                        +

                        The Person class looks like:

                        +
                        Class: Person
                        +SubClassOf: DomainEntity,(hasSex some Sex)
                        +DisjointWith: Sex
                        +
                        +

                        4.3 Defining Man and Woman

                        +

                        We now have some of the foundations for the FHKB. We have the concept of Person, but we also need to have the concepts of Man and Woman. Now we have Person, together with Maleness and Femaleness, we have the necessary components to define Man and Woman. These two classes can be defined as: Any Person object that has a male sex can be recognised to be a man; any Person object that has a female sex can be recognised as a member of the class woman. Again, think about what conditions are sufficient for an object to be recognised to be a member of a class; this is how we create defined classes through the use of OWL equivalence axioms.

                        +

                        To make the Man and Woman classes do the following:

                        + + + + + + + + + + + +
                        Task 8: Describe men and women
                        1. Create a class Man;
                        2. Make it equivalent to a Person that hasSex some Maleness;
                        3. Do the same, but with Femaleness, to create the Woman class;
                        4. A covering axiom can be put on the Person class to indicate that man and woman are the only kinds of person that can exist. (This is not strictly true due to the way Sex has been described.)
                        5. Run the reasoner and take a look.
                        +

                        Having run the reasoner, the Man and Woman classes should appear underneath Person5.

                        +

                        5Actually in Protégé, this might happen without the need to run the reasoner.

                        +

                        The Man and Woman classes will be important for use as domain and range constraints on many of the properties used in the FHKB. To achieve our aim of maximising inference, we should be able to infer that individuals are members of Man, Woman or Person by the properties held by an object. We should not have to state the type of an individual in the FHKB.

                        +

                        The classes for Man and Woman should look like:

                        +
                        Class: Man
                        +EquivalentTo: Person and (hasSex some Maleness)
                        +
                        +
                        Class: Woman
                        +EquivalentTo: Person and (hasSex some Femaleness)
                        +
                        +

                        4.4 Describing Parentage in the FHKB

                        +

                        To finish off the foundations of the FHKB we need to describe a person object’s parentage. We know that each and every person has one mother and each and every person has one father. Here we are talking about biological mothers and fathers. The complexities of adoption and step parents are outside the scope of this FHKB tutorial.

                        + + + + + + + + + + + +
                        Task 9: Describing Parentage
                        1. Add the domain Person and the range Woman to the property hasMother.
                        2. Do the same for the property hasFather, but give it the range Man;
                        3. Give the property hasParent domain and range of Person;
                        4. Run the reasoner.
                        +

                        The (inferred) property hierarchy in the FHKB should look like that shown in Figure 4.1. Notice that we have asserted the sub-property axioms on one side of the property hierarchy. Having done so, the reasoner uses those axioms, together with the inverses, to work out the property hierarchy for the ‘other side’.

                        +

                        We make hasMother functional, as any one person object can hold only one hasMother property to a distinct Woman object. The range of hasMother is Woman, as a mother has to be a woman. The Person object holding the hasMother property can be either a man or a woman, so we have the domain constraint as Person; this means any object holding a hasMother property will be inferred to be a Person. Similarly, any object at the right-hand end of a hasMother property will be inferred to be a Woman, which is the result we need. The same reasoning goes for hasFather and hasParent, with the sex constraints on the latter being only Person. The inverses of the two functional sub-properties of hasParent are not themselves functional. After all, a Woman can be the mother of many Person objects, but each Person object can have only one mother.

                        +

                        Figure 4.1

                        +

                        Figure 4.1: The property hierarchy with the hasSex and the parentage properties

                        +

                        Figure 4.2

                        +

                        Figure 4.2: the core TBox for the FHKB with the Person and Sex classes.

                        + + + + + + + + + + + +
                        Task 10: Restrict Person class
                        1. As each and every person has a mother and each and every person has a father, place restrictions on the Person class as shown below.
                        +
                        Class: Person
                        +SubClassOf: DomainEntity, (hasFather some Man), (hasMother some Woman),
                        +(hasSex some Sex)
                        +DisjointWith: Sex
                        +
                        + + + + + + + + + + + +
                        Task 11: DL queries for people and sex
                        1. Issue the DL queries for Person, Man and Woman; look at the answers and count the numbers in each class; which individuals have no sex and why?
                        2. You should find that many people have been inferred to be either Man or Woman, but some are, as we will see below, only inferred to be Person.
                        +

                        The domain and range constraints on our properties have also driven some entailments. We have not asserted that David_Bright_1934 is a member of Man, but the range constraint on hasFather (or the inferred domain constraint on the isFatherOf relation) has enabled this inference to be made. This goes for any individual that is the right-hand-side (either inferred or asserted) of either hasFather or hasMother (where the range is that of Woman). For Robert David Bright, however, he is only the left-hand-side of an hasFather or an hasMother property, so we’ve only entailed that this individual is a member of Person.

                        +

                        4.5 Who has a father?

                        +

                        In our description of the Person class we have said that each and every instance of the class Person has a father (the same goes for mothers). So, when we ask the query ‘which individuals have a father’, we get all the instances of Person back, even though we have said nothing about the specific parentage of each Person. We do not know who their mothers and fathers are, but we know that they have one of each. We know all the individuals so far entered are members of the Person class; when asserting the type to be either Man or Woman (each of which is a subclass of Person), we infer that each is a person. When asserting the type of each individual via the hasSex property, we know each is a Person, as the domain of hasSex is the Person class. As we have also given the right-hand side of hasSex as either Maleness or Femaleness, we have given sufficient information to recognise each of these Person instances to be members of either Man or Woman.

                        +

                        4.6 Filling in Domains and Ranges for the FHKB Properties

                        +

                        So far we have not systematically added domains and ranges to the properties in the FHKB. As a reminder, when a property has a domain of X any object holding that property will be inferred to be a member of class X. A domain doesn’t add a constraint that only members of class X hold that property; it is a strong implication of class membership. Similarly, a property holding a range implies that an object acting as right-hand-side to a property will be inferred to be of that class. We have already seen above that we can use domains and ranges to imply the sex of people within the FHKB.

                        +

                        Do the following:

                        + + + + + + + + + + + +
                        Task 12: Domains and Ranges
                        1. Make sure the appropriate Person, Man and Woman are domains and ranges for hasFather, hasMother and hasParent.
                        2. Run the reasoner and look at the property hierarchy.
                        3. Also look at the properties hasAncestor, hasGrandparent, hasUncle and so on; look to see what domains and ranges are found. Add any domains and ranges explicitly as necessary.
                        +

                        warnicon +

                        Protégé for example in its current version (November 2015) does not visualise
                        +inherited domains and ranges in the same way as it shows inferred inverse relations.
                        +

                        +

                        We typically assert more domains and ranges than strictly necessary. For example, if we say that hasParent has the domain Person, this means that every object x that is connected to another object y via the hasParent relation must be a Person. Let us assume the only thing we said about x and y is that they are connected by a hasMother relation. Since this implies that x and y are also connected by a hasParent relation (hasMother is a sub-property of hasParent) we do not have to assert that hasFather has the domain of Person; it is implied by what we know about the domain and range of hasParent.

                        +

                        In order to remove as many assertions as possible, we may therefore choose to assert as much as we know starting from the top of the hierarchy, and only ever adding a domain if we want to constrain the already inferred domain even further (or range respectively). For example, in our case, we could have chosen to assert Person to be the domain of hasRelation. Since hasRelation is symmetric, it will also infer Person to be the range. We do not need to say anything for hasAncestor or hasParent, and only if we want to constrain the domain or range further (like in the case of hasFather by making the range Man) do we need to actually assert something. It is worth noting that because we have built the object property hierarchy from the bottom (hasMother etc.) we have ended up asserting more than necessary.

                        +

                        4.7 Inconsistencies

                        +

                        From the Pizza Tutorial and other work with OWL you should have seen some unsatisfiabilities. In Protégé this is highlighted by classes going ‘red’ and being subclasses ofNothing; that is, they can have no instances in that model.

                        + + + + + + + + + + + +
                        Task 13: Inconsistencies
                        1. Add the fact Robert_David_Bright_1965 hasMother David_Bright_1934.
                        2. Run the classifier and see what happens.
                        3. Remove that fact and run the classifier again.
                        4. Now add the fact that Robert_David_Bright_1965 hasMother Iris_Ellen_Archer_1907
                        5. Run the classifier and see what happens.
                        6. Add and remove the functional characteristic to these properties and see what happens.
                        +

                        After asserting the first fact it should be reported by the reasoner that the ontology is inconsistent. This means, in lay terms, that the model you’ve provided in the ontology cannot accommodate the facts you’ve provided in the fact assertions in your ABox—that is, there is an inconsistency between the facts and the ontology... The ontology is inconsistent because David_Bright_1934 is being inferred to be a Man and a Woman at the same time which is inconsistent with what we have said in the FHKB.

                        +

                        When we, however, say that Robert David Bright has two different mothers, nothing bad happens! Our domain knowledge says that the two women are different, but the reasoner does not know this as yet... ; Iris Ellen Archer and Margaret Grace Rever may be the same person; we have to tell the reasoner that they are different. For the same reason the functional characteristic also has no effect until the reasoner ‘knows’ that the individuals are different. We will do this in Section 7.1.1 and live with this ‘fault’ for the moment.

                        +

                        dragon

                        +

                        4.8 Adding Some Defined Classes for Ancestors and so on

                        + + + + + + + + + + + +
                        Task 14: Adding defined classes
                        1. Add a defined class for Ancestor, MaleAncestor, FemaleAncestor;
                        2. Add a defined class for Descendant, MaleDescendant and FemaleDescendant;
                        3. Run the reasoner and view the resulting hierarchy.
                        +

                        The code for the classes looks like:

                        +
                        Class: Ancestor EquivalentTo: Person and isAncestorOf some Person
                        +Class: FemaleAncestor EquivalentTo: Woman and isAncestorOf some Person
                        +Class: Descendant EquivalentTo: Person and hasAncestor some Person
                        +Class: MaleDescendant EquivalentTo: Man and hasAncestor some Person
                        +
                        +

                        The TBox after reasoning can be seen in Figure 4.3. Notice that the reasoner has inferred that several of the classes are equivalent or ‘the same’. These are: Descendant and Person; MaleDescendant and Man, FemaleDescendant and Woman.

                        +

                        The reasoner has used the axioms within the ontology to infer that all the instances of Person are also instances of the class Descendant and that all the instances of Woman are also the same instances as the class Female Descendant. This is intuitively true; all people are descendants – they all have parents that have parents etc. and thus everyone is a descendant. All women are female people that have parents etc. As usual we should think about the objects within the classes and what we know about them. This time it is useful to think about the statements we have made about Person in this Chapter – that all instances of Person have a father and a mother; add to this the information from the property hierarchy and we know that all instances of Person have parents and ancestors. We have repeated all of this in our new defined classes for Ancestor and Descendant and the reasoner has highlighted this information.

                        +

                        Figure 4.3

                        +

                        Figure 4.3: The defined classes from Section 4.8 in the FHKB’s growing class hierarchy

                        + + + + + + + + + + + +
                        Task 15: More Ancestors
                        1. Query for MaleDescendant. You should get Man back - they are equivalent (and this makes sense).
                        2. As an additional exercise, also add in properties for forefathers and foremothers. You will follow the same pattern as for hasAncestor, but adding in, for instance, hasFather as the sub-property of the transitive super-property of hasForefather and setting the domains and ranges appropriately (or working out if they’ll be inferred appropriately). Here we interpret a forefather as one’s father’s father etc. This isn’t quite right, as a forefather is any male ancestor, but we’ll do it that way anyway. You might want to play around with DL queries. Because of the blowup in inferred relationships, we decided to not include this pattern in the tutorial version of the FHKB.
                        +

                        4.9 Summary

                        +

                        Most of what we have done in this chapter is straight-forward OWL, all of which would have been met in the pizza tutorial. It is, however, a useful revision and it sets the stage for refining the FHKB. Figure 4.2 shows the basic set-up we have in the FHKB in terms of classes; we have a class to represent person, man and woman, all set-up with a description of sex, maleness and femaleness. It is important to note, however, the approach we have taken: We have always thought in terms of the objects we are modelling.

                        +

                        Here are some things that should now be understood upon completing this chapter:

                        +
                          +
                        1. Restrictions on a class in our TBox mean we know stuff about individuals that are members of that class, even though we have asserted no facts on those individuals. We have said, for instance, that all members of the class Person have a mother, so any individual asserted to be a Person must have a mother. We do not necessarily know who they are, but we know they have one.
                        2. +
                        3. Some precision is missing – we only know Robert David Bright is a Person, not that he is a Man. This is because, so far, he only has the domain constraint of hasMother and hasFather to help out.
                        4. +
                        5. We can cause the ontology to be inconsistent, for example by providing facts that cannot be accommodated by the model of our ontology. In the example, David Bright was inferred to be a member of two disjoint classes.
                        6. +
                        +

                        Finally, we looked at some defined classes. We inferred equivalence between some classes where the extents of the classes were inferred to be the same – in this case the extents of Person and Descendant are the same. That is, all the objects that can appear in Person will also be members of Descendant. We can check this implication intuitively – all people are descendants of someone. Perhaps not the most profound inference of all time, but we did no real work to place this observation in the FHKB.

                        +

                        noteiconsmall

                        +
                        This last point is a good general observation. We can make the reasoner do work
                        +for us. The less maintenance we have to do in the FHKB the better. This will be
                        +a principle that works throughout the tutorial.
                        +
                        +

                        noteiconsmall

                        +
                        The FHKB ontology at this stage of the tutorial has an expressivity of SRIF.
                        +
                        +

                        noteiconsmall

                        +
                        The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                        +machine by HermiT 1.3.8 is approximately 0.884 sec (0.00047 % of final), by Pellet
                        +2.2.0 0.256 sec (0.00207 % of final) and by FaCT++ 1.6.4 is approximately 0.013
                        +sec (0.000 % of final). 0 sec indicates failure or timeout.
                        +
                        +

                        Chapter 5

                        +

                        Siblings in the FHKB

                        +

                        In this chapter you will:

                        +
                          +
                        1. Explore options for determining finding siblings;
                        2. +
                        3. Meet some of the limitations in OWL;
                        4. +
                        5. Choose one of the options explored;
                        6. +
                        7. Add facts for siblings;
                        8. +
                        9. Use sub-property chains to find aunts and uncles;
                        10. +
                        +

                        camera

                        +
                        There is a snapshot of the ontology as required at this point in the tutorial available
                        +at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                        +
                        +

                        5.1 Blood relations

                        +

                        Do the following first:

                        + + + + + + + + + + + +
                        Task 16: The bloodrelation object property
                        1. Create an hasBloodrelation object property, making it a sub-property of hasRelation.
                        2. Add appropriate property characteristics.
                        3. Make the already existing hasAncestor property a sub-property of hasBloodrelation.
                        +

                        Does a blood relation of Robert have the same relationship to Robert (symmetry)? Is a blood relation of Robert’s blood relation a blood relation of Robert (transitivity)? Think of an aunt by marriage; her children are my cousins and blood relations via my uncle, but my aunt is not my blood relation. My siblings share parents; male siblings are brothers and female siblings are sisters. So far we have asserted parentage facts for the Person in our ABox. Remember that our parentage properties have inverses, so if we have added an hasFather property between a Person and a Man, we infer the isFatherOf property between that Man and that Person.

                        +

                        5.2 Siblings: Option One

                        +

                        We should have enough information within the FHKB to infer siblings. We could use a sub-property chain such as:

                        +
                        ObjectProperty: hasSibling
                        +SubPropertyOf: hasBloodrelation
                        +Characteristics: Symmetric, transitive
                        +SubPropertyChain: hasParent o isParentOf
                        +
                        +

                        We make a property of hasSibling and make it a sub-property of hasBloodrelation. Remember, think of the objects involved and the implications we want to follow; being a sibling implies being a blood relation, it does not imply any of the other relationships we have in the FHKB.

                        +

                        Note that we have made hasSibling symmetric; if Robert is sibling of Richard, then Richard is sibling of Robert. We should also think about transitivity; if David is sibling of Peter and Peter is sibling of John, then David is sibling of John. So, we make hasSibling symmetric and transitive (see Figure 5.1). However, we must take care of half-siblings: child 1 and child 2 share a mother, but not a father; child 2 and child 3 share the father, but not the mother – child 1 and child 3 are not even half-siblings. However, at least for the moment, we will simply ignore this inconvenience, largely so that we can explore what happens with different modelling options.

                        +

                        dragon

                        +

                        Figure 5.1

                        +

                        Figure 5.1: Showing the symmetry and transitivity of the hasSibling (siblingof) property by looking at the brothers David, John and Peter

                        +

                        We also have the implication using three objects (see Figure 5.2):

                        +
                          +
                        1. Robert holds a hasParent property with David;
                        2. +
                        3. David holds an isFatherOf property with Richard;
                        4. +
                        5. This implies that Robert holds a hasSibling property with Richard;
                        6. +
                        7. As hasSibling is symmetric, Richard holds an hasSibling property with Robert.
                        8. +
                        +

                        Figure 5.2

                        +

                        Figure 5.2: Tracing out the sub-property chain for hasSibling; note that Robert is a sibling of himself by this +path

                        +

                        Do the following tasks:

                        + + + + + + + + + + + +
                        Task 17: Siblings
                        1. Add the hasSibling property as above;
                        2. Run the reasoner;
                        3. Ask the DL query hasSibling value Robert_David_Bright_1965.
                        +

                        From this last DL query you should get the answer that both Robert and Richard are siblings of Robert. Think about the objects involved in the sub-property chain: we go from Robert to David via the hasParent and from David to Richard via the isParentOf property; so this is OK. However, we also go from Robert to David and then we can go from David back to Robert again – so Robert is a sibling of Robert. We do not want this to be true.

                        +

                        dragon

                        +

                        We can add another characteristic to the hasSibling property, the one of being irreflexive. This means that an object cannot hold the property with itself.

                        + + + + + + + + + + + +
                        Task 18: More siblings
                        1. Add the irreflexive characteristic to the hasSibling property;
                        2. Run the reasoner;
                        +

                        Note that the reasoner claims you have an inconsistent ontology (or in some cases, you might get a message box saying "Reasoner died"). Looking at the hasSibling property again, the reason might not be immediately obvious. The reason for the inconsistency lies in the fact that we create a logical contradiction: through the property chain, we say that every Person is a sibling of him or herself, and again disallowing just that by adding the irreflexive characteristic. A different explanation lies within the OWL specification itself: In order to maintain decidability irreflexive properties must be simple - for example, they may not be property chains6.

                        +

                        dragon

                        +

                        6 http://www.w3.org/TR/owl2-syntax/#The_Restrictions_on_the_Axiom_Closure

                        +

                        5.2.1 Brothers and Sisters

                        +

                        We have only done siblings, but we obviously need to account for brothers and sisters. In an analogous way to motherhood, fatherhood and parenthood, we can talk about sex specific sibling relationships implying the sex neutral hasSibling; holding either a hasBrother or an isSisterOf between two objects would imply that a hasSibling property is also held between those two objects. This means that we can place these two sex specific sibling properties below hasSibling with ease. Note, however, that unlike the hasSibling property, the brother and sister properties are not symmetric. Robert hasBrother Richard and vice versa , but if Daisy hasBrother William, we do not want William to hold an hasBrother property with Daisy. Instead, we create an inverse of hasBrother, isBrotherOf, and the do the same for isSisterOf.

                        +

                        We use similar, object based, thought processes to choose whether to have transitivity as a characteristic of hasBrother. Think of some sibling objects or individuals and place hasBrother properties between them. Make it transitive and see if you get the right answers. Put in a sister to and see if it stil works. If David hasBrother Peter and Peter hasBrother John, then David hasBrother John; so, transitivity works in this case. Think of another example. Daisy hasBrother Frederick, and Frederick hasBrother William, thus Daisy hasBrother William. The inverses work in the same way; William isBrotherOf Frederick and Frederick isBrotherOf Daisy; thus William isBrotherOf Daisy. All this seems reasonable.

                        + + + + + + + + + + + +
                        Task 19: Brothers and sisters
                        1. Create the hasBrother object property as shown below;
                        2. Add hasSister in a similar manner;
                          3. Add appropriate inverses, domains and ranges.
                        +
                        ObjectProperty: hasBrother
                        +SubPropertyOf: hasSibling
                        +Characteristics: Transitive
                        +InverseOf: isBrotherOf
                        +Range: Man
                        +
                        +

                        We have some hasSibling properties (even if they are wrong). We also know the sex of many of the people in the FHKB through the domains and ranges of properties such as hasFather, hasMother and their inverses..

                        +

                        Can we use sub-property chains in the same way as we have used them in the hasSibling property? The issue is that of sex; the property isFatherOf is sex neutral at the child end, as is the inverse hasFather (the same obviously goes for the mother properties). We could use a sub-property chain of the form:

                        +
                        ObjectProperty: hasBrother
                        +SubPropertyChain: hasParent o hasSon
                        +
                        +

                        A son is a male child and thus that object is a brother of his siblings. At the moment we do not have son or daughter properties. We can construct a property hierarchy as shown in Figure 5.3. This is made up from the following properties:

                        +
                          +
                        • hasChild and isChildOf
                        • +
                        • hasSon(range Man and domain Person) and isSonOf;
                        • +
                        • hasDaughter(range Woman domain Person) and isDaughterOf
                        • +
                        +

                        Note that hasChild is the equivalent of the existing property isParentOf; if I have a child, then I am its +parent. OWL 2 can accommodate this fact. We can add an equivalent property axiom in the following +way:

                        +
                        ObjectProperty: isChildOf
                        +EquivalentTo: hasParent
                        +
                        +

                        We have no way of inferring the isSonOf and isDaughterOf from what already exists. What we want +to happen is the implication of ‘Man and hasParent Person implies isSonOf’. OWL 2 and its reasoners +cannot do this implication. It has been called the ‘man man problem’7. Solutions for this have been +developed [3], but are not part of OWL 2 and its reasoners.

                        +

                        Figure 5.3

                        +

                        Figure 5.3: The property hierarchy for isChildOf and associated son/daughter properties

                        +

                        7 http://lists.w3.org/Archives/Public/public-owl-dev/2007JulSep/0177.html

                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        ChildpropertyParent
                        Robert David Bright 1965isSonOfDavid Bright 1934, Margaret Grace Rever 1934
                        Richard John Bright 1962isSonOfDavid Bright 1934, Margaret Grace Rever 1934
                        Mark Bright 1956isSonOfJohn Bright 1930, Joyce Gosport
                        Ian Bright 1959isSonOfJohn Bright 1930, Joyce Gosport
                        Janet Bright 1964isDaughterOfJohn Bright 1930, Joyce Gosport
                        William Bright 1970isSonOfJohn Bright 1930, Joyce Gosport
                        +

                        Table 5.1: Child property assertions for the FHKB

                        +

                        Thus we must resort to hand assertions of properties to test out our new path:

                        + + + + + + + + + + + +
                        Task 20: Sons and daughters
                        1. Add the property hierarchy shown in Figure 5.3, together with the equivalent property axiom and the obvious inverses.
                        2. As a test (after running the reasoner), ask the DL query isChildOf value David_Bright_1934 and you should have the answer of Richard and Robert;
                        3. Add the sub-property paths as described in the text;
                        4. Add the assertions shown in Table 5.1;
                        5. Run the reasoner;
                        6. Ask the DL query for the brother of Robert David Bright and the sister of Janet.
                        +

                        Of course, it works, but we see the same problem as above. As usual, think of the objects involved. +Robert isSonOf David and David isParentOf Robert, so Robert is his own brother. Irreflexivity again +causes problems as it does above (Task 18).

                        +

                        dragon

                        +

                        5.3 Siblings: Option two

                        +

                        Our option one has lots of problems. So, we have an option of asserting the various levels of sibling. We +can take the same basic structure of sibling properties as before, but just fiddle around a bit and rely on +more assertion while still trying to infer as much as possible. We will take the following approach:

                        +
                          +
                        • We will take off the sub-property chains of the sibling properties as they do not work;
                        • +
                        • We will assert the leaf properties of the sibling sub-hierarchy sparsely and attempt to infer as much + as possible.
                        • +
                        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                        PersonPropertyPerson
                        Robert David Bright 1965isBrotherOfRichard John Bright 1962
                        David Bright 1934isBrotherOfJohn Bright 1930
                        David Bright 1934isBrotherOfPeter William Bright 1941
                        Janet Bright 1964isSisterOfMark Bright 1956
                        Janet Bright 1964isSisterOfIan Bright 1959
                        Janet Bright 1964isSisterOfWilliam Bright 1970
                        Mark Bright 1956isBrotherOfIan Bright 1959
                        Mark Bright 1956isBrotherOfJanet Bright 1964
                        Mark Bright 1956isBrotherOfWilliam Bright 1970
                        +

                        Table 5.2: The sibling relationships to add to the FHKB.

                        +

                        Do the following:

                        + + + + + + + + + + + +
                        Task 21: Add sibling assertions
                        1. Remove the sub-property chains of the sibling properties and the isChildOf assertions as explained above.
                        2. Add the Sibling assertions shown in table 5.2;
                        3. Run the reasoner;
                        4. Ask isBrotherOf value Robert_David_Bright_1965;
                        5. Ask isBrotherOf value Richard_John_Bright_1962;
                        6. Ask hasBrother value Robert_David_Bright_1965;
                        7. Ask hasBrother value Richard_John_Bright_1962;
                        8. Ask isSisterOf value William_Bright_1970;
                        9. Ask the query Man and hasSibling value Robert_David_Bright_1965.
                        +

                        We can see some problems with this option as well:

                        +
                          +
                        • With these properties asserted, Richard only has a hasBrother property to Robert. We would really like an isBrotherOf to Robert to hold.
                        • +
                        • The query Man and hasSibling value Robert only retrieves Robert himself. Because we only asserted that Robert is a brother of Richard, and the domain of isBrotherOf is Man we know that Robert is a Man, but we do not know anything about the Sex of Richard.
                        • +
                        +

                        5.3.1 Which Modelling Option to Choose for Siblings?

                        +

                        Which of the two options gives the worse answers and which is the least effort? Option one is obviously the least effort; we only have to assert the same parentage facts as we already have; then the sub-property chains do the rest. It works OK for hasSibling, but we cannot do brothers and sisters adequately; we need Man and hasSiblingisBrotherOf and we cannot do that implication. This means we cannot ask the questions we need to ask.

                        +

                        dragon

                        +

                        So, we do option two, even though it is hard work and is still not perfect for query answering, even though we have gone for a sparse assertion mode. Doing full sibling assertion would work, but is a lot of effort.

                        +

                        We could start again and use the isSonOfandisDaughterOf option, with the sub-property chains described above. This still has the problem of everyone being their own sibling. It can get the sex specific sibling relationships, but requires a wholesale re-assertion of parentage facts. We will continue with option two, largely because it highlights some nice problems later on.

                        +

                        5.4 Half-Siblings

                        +

                        In Section 5.2 we briefly talked about half-siblings. So far, we have assumed full-siblings (or, rather, just talked about siblings and made no distinction). Ideally, we would like to accommodate distinctions between full- and half-siblings; here we use half-siblings, where only one parent is in common between two individuals, as the example. The short-answer is, unfortunately, that OWL 2 cannot deal with half-siblings in the way that we want - that is, such that we can infer properties between named individuals indicating full- or half-sibling relationships.

                        +

                        It is possible to find sets of half-brothers in the FHKB by writing a defined class or DL-query for a particular individual.} The following fragment of OWL defines a class that looks for the half-brothers of an individual called ‘Percival’:

                        +

                        dragon

                        +
                        Class: HalfBrotherOfPercival
                        +EquivalentTo: Man and (((hasFather some (not (isFatherOf value Percival))) and
                        +(hasMother some (isMotherOf value Percival))) or ((hasFather some (isFatherOf
                        +value Percival)) and (hasMother some (not (isMotherOf value Percival)))))
                        +
                        +

                        Here we are asking for any man that either has Percival’s father but not his mother, or his mother, but not his father. This works fine, but is obviously not a general solution. The OWL description is quite complex and the writing will not scale as the number of options (hypothetically, as the number of parents increases... ) increases; it is fine for man/woman, but go any higher and it will become very tedious to write all the combinations.

                        +

                        Another way of doing this half-brother class to find the set of half-brothers of a individual is to use cardinality constraints:

                        +
                        Class: HalfBrotherOfPercival
                        +EquivalentTo: Man and (hasParent exactly 1 (isParentOf value Percival))
                        +
                        +

                        This is more succinct. We are asking for a man that has exactly one parent from the class of individuals that are the class of Percival’s parents. This works, but one more constraint has to be present in the FHKB. We need to make sure that there can be only two parents (or indeed, just a specified number of parents for a person). If we leave it open as to the number of parents a person has, the reasoner cannot work out that there is a man that shares exactly one parent, as there may be other parents. We added this constraint to the FHKB in Section 6.2; try out the classes to check that they work.

                        +

                        These two solutions have been about finding sets of half-brothers for an individual. What we really want +in the FHKB is to find half-brothers between any given pair of individuals.

                        +

                        Unfortunately we cannot, without rules, ask OWL 2 to distinguish full- and half-siblings – we cannot +count the number of routes taken between siblings via different distinct intermediate parent objects.

                        +

                        5.5 Aunts and Uncles

                        +

                        An uncle is a brother of either my mother or father. An aunt is a sister of either my mother or father. In common practice, wives and husbands of aunts and uncles are usually uncles and aunts respectively. Formally, these aunts and uncles are aunts-in-law and uncles-in-law. Whatever approach we take, we cannot fully account for aunts and uncles until we have information about marriages, which will not have until Chapter 9. We will, however, do the first part now.

                        +

                        Look at the objects and properties between them for the following facts:

                        +
                          +
                        • Robert has father David and mother Margaret;
                        • +
                        • David has brothers Peter and John;
                        • +
                        • Margaret has a sister Eileen;
                        • +
                        • Robert thus has the uncles John and Peter and an aunt Eileen.
                        • +
                        +

                        As we are tracing paths or ‘chains’ of objects and properties we should use sub-property chains as a solution for the aunts and uncles. We can make an hasUncle property as follows (see Figure 5.4):

                        +
                        ObjectProperty: hasUncle
                        +SubPropertyOf: hasBloodrelation
                        +Domain: Man
                        +Range: Person
                        +SubPropertyChain: hasParent o hasBrother
                        +InverseOf: isUncleOf
                        +
                        +

                        Figure 5.4

                        +

                        Figure 5.4: Tracing out the path between objects to get the hasUncle sub-property chain.

                        +

                        Notice we have the domain of Man and range of Person. We also have an inverse. As usual, we can read this as ‘an object that holds an hasParent property, followed by an object holding a hasBrother property, implies that the first object holds an hasUncle property with the last object’.

                        +

                        Note also where the properties (include the ones for aunt) go in the object property hierarchy. Aunts and uncles are not ancestors that are in the direct blood line of a person, but they are blood relations (in the narrower definition that we are using). Thus the aunt and uncle properties go under the hasBloodrelation property (see Figure 5.5). Again, think of the implications between objects holding a property between them; that two objects linked by a property implies that those two objects also hold all the property’s super-properties as well. As long as all the super-properties are true, the place in the object property hierarchy is correct (think about the implications going up, rather than down).

                        +

                        Figure 5.5

                        +

                        Figure 5.5: The object property hierarchy with the aunt and uncle properties included. On the right side, we +can see the hasUncle property as shown by Protégé.

                        +

                        Do the following tasks:

                        + + + + + + + + + + + +
                        Task 22: Uncles and Aunts
                        1. Add the hasUncle property as above;
                        2. Add the hasAunt property as well;
                        3. Ask for the uncles of Julie_Bright_1966 and for Mark_Bright_1956;
                        4. Add similar properties for hasGreatUncle and hasGreatAunt and place them in the property hierarchy.
                        +

                        We can see this works – unless we have any gaps in the sibling relationships (you may have to fix these). Great aunts and uncles are simply a matter of adding another ‘parent’ leg into the sub-property chain. We are not really learning anything new with aunts and uncles, except that we keep gaining a lot for

                        +

                        free through sub-property chains. We just add a new property with its sub-property chain and we get a whole lot more inferences on individuals. To see what we now know about Robert David Bright, do the following:

                        + + + + + + + + + + + +
                        Task 23: What do we know?
                        1. Save the ontology and run the reasoner;
                        2. Look at inferences related to the individual Robert David Bright (see warning in the beginning of this chapter).
                        3. If you chose to use DL queries in Protégé, do not forget to tick the appropriate check-boxes.
                        +

                        You can now see lots of facts about Robert David Bright, with only a very few actual assertions directly on Robert David Bright.

                        +

                        5.6 Summary

                        +

                        Siblings have revealed several things for us:

                        +
                          +
                        • We can use just the parentage facts to find siblings, but everyone ends up being their own sibling;
                        • +
                        • We cannot make the properties irreflexive, as the knowledge base becomes inconsistent;
                        • +
                        • We would like an implication of Man and hasSiblingisBrotherOf, but OWL 2 doesn’t do this implication;
                        • +
                        • Whatever way we model siblings, we end up with a bit of a mess;
                        • +
                        • OWL 2 cannot do half-siblings;
                        • +
                        • However, we can get close enough and we can start inferring lots of facts via sub-property chains using the sibling relationships.
                        • +
                        +

                        noteiconsmall

                        +
                        The FHKB ontology at this stage of the tutorial has an expressivity ofSRIF.
                        +
                        +

                        noteiconsmall

                        +
                        The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                        +machine by HermiT 1.3.8 is approximately 1355.614 sec (0.71682 % of final), by
                        +Pellet 2.2.0 0.206 sec (0.00167 % of final) and by FaCT++ 1.6.4 is approximately
                        +0.039 sec (0.001 % of final). 0 sec indicates failure or timeout.
                        +
                        +

                        Chapter 6

                        +

                        Individuals in Class Expressions

                        +

                        In this chapter you will:

                        +
                          +
                        1. Use individuals within class expressions;
                        2. +
                        3. Make classes to find Robert and Richard’s parents, ancestors, and so on;
                        4. +
                        5. Explore equivalence of such classes;
                        6. +
                        7. Re-visit the closed world.
                        8. +
                        +

                        camera

                        +
                        There is a snapshot of the ontology as required at this point in the tutorial available
                        +at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                        +
                        +

                        6.1 Richard and Robert’s Parents and Ancestors

                        +

                        So far we have only used object properties between unspecified objects. We can, however, specify a specific individual to act at the right-hand-side of a class restriction or type assertion on an individual. The basic syntax for so-called nominals is:

                        +
                        Class: ParentOfRobert
                        +EquivalentTo: Person and isParentOf valueRobert_David_Bright_1965
                        +
                        +

                        This is an equivalence axiom that recognises any individual that is a Person and a parent of Robert David Bright.

                        + + + + + + + + + + + +
                        Task 24: Robert and Richards parents
                        1. Create the class ParentOfRobert as described above;
                        2. Classify – inspect where the class is placed in the FHKB TBox and look at which individuals classify as members of the class;
                        3. Do the same for a class with the value of Richard_John_Bright_1962 and classify;
                        4. Finally create a class ParentOfRichardAndRobert, defining it as Person and isParentOf some {Robert_David_Bright_1965 ,Richard_John_Bright_1962 }; again see what happens on classification. Note that the expressions isMotherOf value Robert_David_Bright_1965 and isMotherOf some {Robert_David_Bright_1965 } are practically identical. The only difference is that using value, you can only specify one individual, while some relates to a class (a set of individuals).
                        +

                        We see that these queries work and that we can create more complex nominal based class expressions. The disjunction above is

                        +
                        isParentOf some {Robert_David_Bright_1965, Richard_John_Bright_1965}
                        +
                        +

                        The ‘{’ and ‘}’ are a bit of syntax that says ‘here’s a class of individual’.

                        +

                        We also see that the classes for the parents of Robert David Bright and Richard John Bright have the same members according to the FHKB, but that the two classes are not inferred to be equivalent. Our domain knowledge indicates the two classes have the same extents (members) and thus the classes are equivalent, but the automated reasoner does not make this inference. As usual, this is because the FHKB has not given the automated reasoner enough information to make such an inference.

                        +

                        6.2 Closing Down What we Know About Parents and Siblings

                        +

                        The classes describing the parents of Richard and Robert are not equivalent, even though, as humans, we know their classes of parent are the same. We need more constraints so that it is known that the four parents are the only ones that exist. We can try this by closing down what we know about the immediate family of Robert David Bright.

                        +

                        In Chapter 4 we described that a Person has exactly one Woman and exactly one Man as mother and father (by saying that the hasMother and hasFather properties are functional and thus only one of each may be held by any one individual to distinct individuals). The parent properties are defined in terms of hasParent, hasMother and hasFather. The latter two imply hasParent. The two sub-properties are functional, but there are no constraints on hasParent, so an individual can hold many instances of this property. So, there is no information in the FHKB to say a Person has only two parents (we say there is one mother and one father, but not that there are only two parents). Thus Robert and Richard could have other parents and other grandparents than those in the FHKB; we have to close down our descriptions so that only two parents are possible. There are two ways of doing this:

                        +
                          +
                        1. Using qualified cardinality constraints in a class restriction;
                        2. +
                        3. Putting a covering axiom on hasParent in the same way as we did for Sex in Chapter 4.
                        4. +
                        + + + + + + + + + + + +
                        Task 25: Closing the Person class
                        1. Add the restriction hasParent exactly 2 Person to the classPerson;
                        2. Run the reasoner;
                        3. Inspect the hierarchy to see where ParentOfRobert and ParentOfRichard are placed and whether or not they are found to be equivalent;
                        4. Now add the restriction hasParent max 2 Person to the class Person;
                        5. Run the reasoner (taking note of how long the reasoning takes) and take another look.
                        +

                        dragon

                        +

                        We find that these two classes are equivalent; we have supplied enough information to infer that these two classes are equivalent. So, we know that option one above works, but what about option two? This takes a bit of care to think through, but the basic thing is to think about how many ways there are to have a hasParent relationship between two individuals. We know that we can have either a hasFather or a hasMother property between two individuals; we also know that we can have only one of each of these properties between an individual and a distinct individual. However, the open world assumption tells us that there may be other ways of having a hasParent property between two individuals; we’ve not closed the possibilities. By putting on the hasParent exactly 2 Person restriction on the Person class, we are effectively closing down the options for ways that a person can have parents; we know because of the functional characteristic on hasMother and hasFather that we can have only one of each of these and the two restrictions say that one of each must exist. So, we know we have two ways of having a parent on each Person individual. So, when we say that there are exactly two parents (no more and no less) we have closed down the world of having parents—thus these two classes can be inferred to be equivalent. It is also worth noting that this extra axiom on the Person class will make the reasoner run much more slowly.

                        +

                        Finally, for option 2, we have no way of placing a covering axiom on a property. What we’d like to be +able to state is something like:

                        +
                        ObjectProperty: hasParent
                        +EquivalentTo: hasFather or hasMother
                        +
                        +

                        but we can’t.

                        +

                        6.3 Summary

                        +

                        For practice, do the following:

                        + + + + + + + + + + + +
                        Task 26: Additional Practice
                        1. Add lots more classes using members of the ABox as nominals;
                        2. Make complex expressions using nominals;
                        3. After each addition of a nominal, classify and see what has been inferred within the FHKB.
                        4. See if you can make classes for GrandparentOfRobert and GrandparentOfRichard and make them inferred to be equivalent.
                        +

                        In this chapter we have seen the use of individuals within class expressions. It allows us to make useful queries and class definitions. The main things to note is that it can be done and that there is some syntax involved. More importantly, some inferences may not be as expected due to the open world assumption in OWL.

                        +

                        dragon

                        +
                        By now you might have noticed a significant increase in the time the reasoner needs
                        +to classify. Closing down what we know about family relationships takes its toll on
                        +the reasoner performance, especially the usage of 'hasParent exactly 2 Person'. At
                        +this point we recommend rewriting this axiom to 'hasParent max 2 Person'. It gives
                        +us most of what we need, but has a little less negative impact on the reasoning
                        +time.
                        +
                        +

                        noteiconsmall

                        +
                        The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ.
                        +
                        +

                        noteiconsmall

                        +
                        The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                        +machine by HermiT 1.3.8 is approximately 2067.273 sec (1.09313 % of final), by
                        +Pellet 2.2.0 0.529 sec (0.00428 % of final) and by FaCT++ 1.6.4 is approximately
                        +0.147 sec (0.004 % of final). 0 sec indicates failure or timeout.
                        +
                        +

                        Chapter 7

                        +

                        Data Properties in the FHKB

                        +

                        We now have some individuals with some basic object properties between individuals. OWL 2, however, also has data properties that can relate an object or individual to some item of data. There are data about a Person, such as years of events and names etc. So, in this Chapter you will:

                        +
                          +
                        1. Make some data properties to describe event years to people;
                        2. +
                        3. Create some simple defined classes that group people by when they were born;
                        4. +
                        5. Try counting the numbers of children people have...
                        6. +
                        7. Deal with the open world assumption;
                        8. +
                        9. Add given and family names to individuals in the FHKB.
                        10. +
                        +

                        camera

                        +
                        There is a snapshot of the ontology as required at this point in the tutorial available
                        +at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial.
                        +
                        +

                        7.1 Adding Some Data Properties for Event Years

                        +

                        Everyone has a birth year; death year; and some have a marriage year and so on. We can model these simply with data properties and an integer as a filler. OWL 2 has a DateTime datatype, where it is possible to specify a precise time and date down to a second. 7 This proves cumbersome (see http://robertdavidstevens.wordpress.com/2011/05/05/using-the-datetime-data-type-to-describe-birthdays/ for details); all we need is a simple indication of the year in which a person was born. Of course, the integer type has a zero, which the Gregorian calendar for which we use integer as a proxy does not, but integer is sufficient to our needs. Also, there are various ontological treatments of time and information about people (this extends to names etc. as well), but we gloss over that here—that’s another tutorial.

                        +

                        7 http://www.w3.org/TR/2008/WD-owl2-quick-reference-20081202/#Built-in_Datatypes_and_Facets

                        +

                        We can have dates for birth, death and (eventually) marriage (see Chapter 9) and we can just think of these as event years. We can make a little hierarchy of event years as shown in Figure 7.1).

                        + + + + + + + + + + + +
                        Task 27: Create a data property hierarchy
                        1. Create the data property hasEventYear with range integer and domain Person;
                        2. Create the data property hasBirthYear and make it a sub-property of hasEventYear (that way, the domain and range of hasEventYear are inherited);
                        3. Create the data property hasDeathYear and make it a sub-property of hasEventYear;
                        4. For each individual add the birth years shown in Table A.1 (see appendix). You do not actually have to go back to the table—it is easier to read the birth years simply off the individual names.
                        +

                        camera

                        +
                        Again, asserting birth years for all individuals can be a bit tedious. The reader
                        +can find a convenience snapshot of the ontology at this stage at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                        +
                        +

                        We now have an ABox with individuals with fact assertions to data indicating a birth year. We can, if we wish, also add a class restriction to the Person class saying that each and every instance of the class Person holds a data property to an integer and that this property is called ‘hasBirthYear’. As usual when deciding whether to place such a restriction upon a class, ask whether it is true that each and every instance of the class holds that property; this is exactly the same as we did for the object properties in Chapter 4. Everyone does have a birth year, even if it is not known.

                        +

                        Once birth years have been added to our individuals, we can start asking some questions.

                        + + + + + + + + + + + +
                        Task 28: DL queries
                        1. Use a DL query to ask:
                        • Person born after 1960;
                        • Person born in the 1960s;
                        • Person born in the 1800s;
                        • Person that has fewer than three children;
                        • Person that has more than three children.
                          +

                          The DL query for people born in the 1960s is:

                          +
                          Person and hasBirthYear some int[>= 1960, < 1970]
                          +
                          +

                          This kind of interval is known as a facet.

                          +

                          7.1.1 Counting Numbers of Children

                          +

                          The last two queries in the list do not work as expected. We have asked, for instance, for Person that have more than three children, but we get no members of Person in the answer, though we know that there are some in the FHKB (e.g., John_Bright_1930). This is because there is not enough information in the FHKB to tell that this person has more than three different people as children. As humans we can look at the four children of John Bright and know that they are different – for instance, they all have different birth years. The automated reasoner, however, does not know that a Person can only have one birth year.

                          + + + + + + + + + + + +
                          Task 29: Make a functional object property
                          1. Make the property hasBirthYear functional.
                          2. Ask the query for Person that has more than three children again.
                          +

                          This time the query should work. All the other event year properties should be made functional, expect hasEventYear, as one individual can have many event years. As the children have different birth year and an individual can only hold one hasBirthYear property, then these people must be distinct entities.

                          +

                          Of course, making birth year functional is not a reliable way of ensuring that the automated reasoner knows that the individual are different. It is possible for two Person to have the same birth year within the same family – twins and so on. Peter_William_Bright_1941 has three children, two of which are twins, so will not be a member of the class of people with at least three children. So, we use the different individuals axiom. Most tools, including Protégé, have a feature that allows all individuals to be made different.

                          + + + + + + + + + + + +
                          Task 30: Make all individuals different
                          1. Make all individuals different;
                          2. Ask the above queries again.
                          +

                          From now on, every time you add individuals, make sure the different individuals axiom is updated.

                          +

                          7.2 The Open World Assumption

                          +

                          We have met again the open world assumption and its importance in the FHKB. In the use of the functional characteristic on the hasBirthYear property, we saw one way of constraining the interpretation of numbers of children. We also introduced the ‘different individuals’ axiom as a way of making all individuals in a knowledge base distinct. There are more questions, however, for which we need more ways of closing down the openness of OWL 2.

                          +

                          Take the questions:

                          +
                            +
                          • People that have exactly two children;
                          • +
                          • People that have only brothers;
                          • +
                          • People that have only female children.
                          • +
                          +

                          dragon

                          +

                          We can only answer these questions if we locally close the world.We have said that David and Margaret have two children, Richard and Robert, but we have not said that there are not any others. As usual, try not to apply your domain knowledge too much; ask yourself what the automated reasoner actually knows. As we have the open world assumption, the reasoner will assume, unless otherwise said, that there could be more children; it simply doesn’t know.

                          +

                          Think of a railway journey enquiry system. If I ask a standard closed world system about the possible routes by rail, between Manchester and Buenos Aires, the answer will be ’none’, as there are none described in the system. With the open world assumption, if there is no information in the system then the answer to the same question will simply be ‘I don’t know’. We have to explicitly say that there is no railway route from Manchester to Buenos Aires for the right answer to come back.

                          +

                          We have to do the same thing in OWL. We have to say that David and Margaret have only two children. We do this with a type assertion on individuals. So far we have only used fact assertions. A type assertion to close down David Bright’ parentage looks like this:

                          +
                          isParentOf only {Robert_David_Bright_1965,Richard_John_Bright_1962 }
                          +
                          +

                          dragon

                          +

                          This has the same meaning as the closure axioms that you should be familiar with on classes. We are saying that the only fillers that can appear on the right-hand-side of the isParentOf property on this individual are the two individuals for Richard and Robert. We use the braces to represent the set of these two individuals.

                          + + + + + + + + + + + +
                          Task 31: Make a closure axiom
                          1. Add the closure assertion above to David Bright;
                          2. Issue the DL query isParentOf exactly 2 Person.
                          +

                          The last query should return the answer of David Bright. Closing down the whole FHKB ABox is a chore and would really have to be done programmatically. OWL scripting languages such as the Ontology Preprocessing Language8 (OPPL) [2] can help here. Also going directly to the OWL API [1]9, if you know what you are doing, is another route.

                          +

                          dragon

                          +
                          Adding all these closure type assertions can slow down the reasoner; so think about
                          +the needs of your system – just adding it ‘because it is right’ is not necessarily the
                          +right route.
                          +
                          +

                          8 http://oppl2.sourceforge.net

                          +

                          9 http://owlapi.sourceforge.net/

                          +

                          7.3 Adding Given and Family Names

                          +

                          We also want to add some other useful data facts to people – their names. We have been putting names as part of labels on individuals, but data fact assertions make sense to separate out family and given names so that we can ask questions such as ‘give me all people with the family name Bright and the first given name of either James or William’. A person’s name is a fact about that person and is more, in this case, than just a label of the representation of that person. So, we want family names and given names. A person may have more than one given name – ‘Robert David’, for instance – and an arbitrary number of given names can be held. For the FHKB, we have simply created two data properties of hasFirstGivenName and hasSecondGivenName). Ideally, it would be good to have some index on the property to given name position, but OWL has no n-ary relationships. Otherwise, we could reify the hasGivenName property into a class of objects, such as the following:

                          +
                          Class: GivenName
                          +SubClassOf:hasValue some String,
                          +hasPosition some Integer
                          +
                          +

                          but it is really rather too much trouble for the resulting query potential.

                          +

                          As already shown, we will use data properties relating instances of Person to strings. We want to distinguish family and given names, and then different positions of given names through simple conflating of position into the property name. Figure 7.1 shows the intended data property hierarchy.

                          +

                          Figure 7.1

                          +

                          Figure 7.1: The event year and name data property hierarchies in the FHKB.

                          +

                          Do the following:

                          + + + + + + + + + + + +
                          Task 32: Data properties
                          1. Create the data properties as described in Figure 7.1;
                          2. Give the hasName property the domain of Person and the range of String;
                          3. Make the leaf properties of given names functional;
                          4. Add the names shown in Table A.1 (appendix); Again, it may be easier to read the names of the individual names.
                          5. Ask the questions:
                            • all the people with the first given name ‘James’;
                            • all the people with the first given name ‘William’;
                          6. All the people with the given name ‘William’;
                          7. All the people with the given name ‘William’ and the family name ‘Bright’.
                          +

                          The name data property hierarchy and the queries using those properties displays what now should be familiar. Sub-properties that imply the super-property. So, when we ask hasFirstGivenName value "William" and then the query hasGivenName value value "William" we can expect different answers. There are people with ‘William’ as either first or second given name and asking the question with the super-property for given names will collect both first and second given names.

                          +

                          7.4 Summary

                          +

                          We have used data properties that link objects to data such as string, integer, floats and Booleans etc. OWL uses the XML data types. We have seen a simple use of data properties to simulate birth years. The full FHKB also uses them to place names (given and family) on individuals as strings. This means one can ask for the Person with the given name "James", of which there are many in the FHKB.

                          +

                          Most importantly we have re-visited the open world assumption and its implications for querying an OWL ABox. We have looked at ways in which the ABox can be closed down – unreliably via the functional characteristic (in this particular case) and more generally via type assertions.

                          +

                          All the DL queries used in this chapter can also serve as defined classes in the TBox. It is a useful exercise to progressively add more defined classes to the FHKB TBox. Make more complex queries, make them into defined classes and inspect where they appear in the class hierarchy.

                          +

                          noteiconsmall

                          +
                          The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).
                          +
                          +

                          noteiconsmall

                          +
                          The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                          +machine by HermiT 1.3.8 is approximately 1891.157 sec (1.00000 % of final), by
                          +Pellet 2.2.0 1.134 sec (0.00917 % of final) and by FaCT++ 1.6.4 is approximately
                          +0.201 sec (0.006 % of final). 0 sec indicates failure or timeout.
                          +
                          +

                          noteiconsmall

                          +
                          Note that we now cover the whole range of expressivity of OWL 2. HermiT at
                          +least is impossibly slow by now. This may be because HermiT does more work
                          +than the others. For now, we recommend to use either Pellet or FaCT++.
                          +
                          +

                          Chapter 8

                          +

                          Cousins in the FHKB

                          +

                          In this Chapter you will

                          +
                            +
                          1. Revise or get to know about degrees and removes of cousin;
                          2. +
                          3. Add the properties and sub-property chains for first and second cousins;
                          4. +
                          5. Add properties and sub-property chains for some removes of cousins;
                          6. +
                          7. Find out that the siblings debacle haunts us still;
                          8. +
                          9. Add a defined class that does first cousins properly.
                          10. +
                          +

                          camera

                          +
                          There is a snapshot of the ontology as required at this point in the tutorial available
                          +at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                          +
                          +

                          dragon

                          +
                          Be warned; from here on the reasoner can start running slowly! Please see warning
                          +at the beginning of the last chapter for more information.
                          +
                          +

                          8.1 Introducing Cousins

                          +

                          Cousins can be confusing, but here is a brief summary:

                          +
                            +
                          • First cousins share a grandparent, but are not siblings;
                          • +
                          • Second cousins share a great grandparent, but are not first cousins or siblings;
                          • +
                          • Degrees such as first and second cousin give the distance to the nearest common ancestor;
                          • +
                          • Removes give differences in generation. So, my Dad’s first cousins (his generation) are my (Robert David Bright’s) first cousins once removed.
                          • +
                          +

                          Simply, my first cousins are my parent’s sibling’s children. As usual, we can think about the objects and put in place some sub-property chains.

                          +

                          8.2 First Cousins

                          +

                          Figure 8.1

                          +

                          Figure 8.1: Tracing out the sub-property chain for cousins going from a child to a parent, to its sibling, and +down to its child, a cousin

                          +

                          Figure 8.1 shows the sub-property chain for first cousins. As usual, think at the object level; to get to the first cousins of Robert David Bright, we go to the parents of Robert David Bright, to their siblings and then to their children. We go up, along and down. The OWL for this could be:

                          +
                          ObjectProperty: hasFirstCousin
                          +SubPropertyOf: hasCousin
                          +SubPropertyChain: hasParent o hasSibling o hasChild
                          +Characteristics: Symmetric
                          +
                          +

                          Note that we follow the definitions in Section 8.1 of first cousins sharing a grandparent, but not a parent. The sub-property chain goes up to children of a grandparent (a given person’s parents), along to siblings and down to their children. We do not want this property to be transitive. One’s cousins are not necessarily my cousins. The blood uncles of Robert David Bright have children that are his cousins. These first cousins, however, also have a mother that is not a blood relation of Robert David Bright and the mother’s sibling’s children are not cousins of Robert David Bright.

                          +

                          We do, however, want the property to be symmetric. One’s cousins have one’s-self as a cousin.

                          +

                          We need to place the cousin properties in the growing object property hierarchy. Cousins are obviously blood relations, but not ancestors, so they go off to one side, underneath hasBloodrelation. We should group the different removes and degree of cousin underneath one hasCousin property and this we will do.

                          +

                          Do the following:

                          + + + + + + + + + + + +
                          Task 33: First cousins
                          1. Add the property of hasCousin to the hierarchy underneath hasBloodrelation;
                          2. Add hasFirstCousin underneath this property;
                          3. Add the sub-property chain as described above;
                          4. Run the reasoner and look at the first cousins of Robert David Bright.
                            +

                            You should see the following people as first cousins of Robert David Bright: Mark Anthony Heath, +Nicholas Charles Heath, Mark Bright, Ian Bright, Janet Bright, William Bright, James Bright, Julie +Bright, Clare Bright, Richard John Bright and Robert David Bright. The last two, as should be expected, +are first cousins of Robert David Bright and this is not correct. As David Bright will be his own brother, +his children are his own nieces and nephews and thus the cousins of his own children. Our inability to +infer siblings correctly in the FHKB haunts us still and will continue to do so.

                            +

                            dragon

                            +
                            Although the last query for the cousins of Robert David Bright should return the
                            +same results for every reasoner, we have had experiences where the results differ.
                            +
                            +

                            8.3 Other Degrees and Removes of Cousin

                            +

                            Other degrees of cousins follow the same pattern as for first cousins; we go up, along and down. For second cousins we go up from a given individual to children of a great grandparent, along to their siblings and down to their grandchildren. The following object property declaration is for second cousins (note it uses the isGrandparentOf and its inverse properties, though the parent properties could be used) :

                            +
                            ObjectProperty: hasSecondCousin
                            +SubPropertyOf: hasCousin
                            +SubPropertyChain: hasGrandParent o hasSibling o isGrandParentOf
                            +Characteristics: Symmetric
                            +
                            +

                            Removes ’ simply add in another ‘leg’ of either ‘up’ or ‘down’ either side of the ‘along’—that is, think of the actual individuals involved and draw a little picture of blobs and lines—then trace your finger up, along and down to work out the sub-property chain. The following object property declaration does it for first cousins once removed (note that this has been done by putting this extra ‘leg’ on to the hasFirstCousin property; the symmetry of the property makes it work either way around so that a given person is the first cousin once removed of his/her first cousins once removed):

                            +
                            ObjectProperty: hasFirstCousinOnceRemoved
                            +SubPropertyOf: hasCousin
                            +SubPropertyChain: hasFirstCousin o hasChild
                            +Characteristics: Symmetric
                            +
                            +

                            To exercise the cousin properties do the following:

                            + + + + + + + + + + + +
                            Task 34: Cousin properties
                            1. Add properties for second degree cousins;
                            2. Add removes for first and second degree cousins;
                            3. Run the reasoner and check what we know about Robert David Bright’ other types of cousin.
                            +

                            You should see that we see some peculiar inferences about Robert David Bright’ cousins – not only are his brother and himself his own cousins, but so are his father, mother, uncles and so on. This makes sense if we look at the general sibling problem, but also it helps to just trace the paths around. If we go up from one of Robert David Bright’ true first cousins to a grandparent and down one parent relationship, we follow the first cousin once removed path and get to one of Robert David Bright’ parents or uncles. This is not to be expected and we need a tighter definition that goes beyond sub-property chains so that we can exclude some implications from the FHKB.

                            +

                            8.4 Doing First Cousins Properly

                            +

                            As far as inferring first cousin facts for Robert David Bright, we have failed. More precisely, we have recalled all Robert David Bright’s cousins, but the precision is not what we would desire. What we can do is ask for Robert David Bright’ cousins, but then remove the children of Robert David Bright’ parents. The following DL query achieves this:

                            +
                            Person that hasFirstCousin valueRobert_David_Bright_1965
                            +and (not (hasFather valueDavid_Bright_1934) or not (hasMother valueMar-
                            +garet_Grace_Rever_1934)
                            +
                            +

                            This works, but only for a named individual. We could make a defined class for this query; we could also make a defined class FirstCousin, but it is not of much utility. We would have to make sure that people whose parents are not known to have siblings with children are excluded. That is, people are not ‘first cousins’ whose only first cousins are themselves and their siblings. The following class does this:

                            +
                            Class: FirstCousin
                            +EquivalentTo: Person that hasFirstCousin some Person
                            +
                            + + + + + + + + + + + +
                            Task 35: Roberts first cousins
                            1. Make a defined class FirstCousin as shown above;
                            2. Make a defined class FirstCousinOfRobert;
                            3. Create a DL query that looks at Robert_David_Bright_1965 first cousins and takes away the children of Robert_David_Bright_1965’ parents as shown above.
                            +

                            dragon

                            +

                            This gives some practice with negation. One is making a class and then ‘taking’ some of it away – ‘these, but not those’.

                            +

                            8.5 Summary

                            +

                            We have now expanded the FHKB to include most blood relationships. We have also found that cousins are hard to capture just using object properties and sub-property chains. Our broken sibling inferences mean that we have too many cousins inferred at the instance level. We can get cousins right at the class level by using our inference based cousins, then excluding some using negation. Perhaps not neat, but it works.

                            +

                            We have reinforced that we can just add more and more relationships to individuals by just adding more properties to our FHKB object property hierarchy and adding more sub-property chains that use the object properties we have built up upon parentage and sibling properties; this is as it should be.

                            +

                            noteiconsmall

                            +
                            The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).
                            +
                            +

                            noteiconsmall

                            +
                            The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                            +machine by HermiT 1.3.8 is approximately 0.000 sec (0.00000 % of final), by Pellet
                            +2.2.0 111.395 sec (0.90085 % of final) and by FaCT++ 1.6.4 is approximately 0.868
                            +sec (0.024 % of final). 0 sec indicates failure or timeout.
                            +
                            +

                            Chapter 9

                            +

                            Marriage in the FHKB

                            +

                            In this chapter you will:

                            +
                              +
                            1. Model marriages and relationships;
                            2. +
                            3. Establish object properties for husbands, wives and various in-laws;
                            4. +
                            5. Re-visit aunts and uncles to do them properly;
                            6. +
                            7. Use more than one sub-property chain on a given property.
                            8. +
                            +

                            camera

                            +
                            There is a snapshot of the ontology as required at this point in the tutorial available
                            +at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                            +
                            +

                            warnicon

                            +
                            Much of what is in this chapter is really revision; it is more of the same - making
                            +lots of properties and using lots of sub-property chains. However, it is worth it as
                            +it will test your growing skills and it also makes the reasoners and yourself work
                            +hard. There are also some good questions to ask of the FHKB as a result of adding
                            +marriages.
                            +
                            +

                            9.1 Marriage

                            +

                            Marriage is a culturally complex situation to model. The FHKB started with a conservative model of a marriage involving only one man and one woman.10 Later versions are more permissive; a marriage simply has a minimum of two partners. This leaves it open to numbers and sex of the people involved. In fact, ‘marriage’ is probably not the right name for it. Using BreedingRelationship as a label (the one favoured by the main author’s mother) may be a little too stark and might be a little exclusive.... In any case, some more generic name is probably better and various subclasses of the FHKB’s Marriage class are probably necessary.

                            +

                            10 There being no funny stuff in the Stevens family.

                            +

                            To model marriage do the following:

                            + + + + + + + + + + + +
                            Task 36: Marriage
                            1. Create a class Marriage, subclass of DomainEntity;
                            2. Create the properties:
                              • hasPartner(domain Marriage and range Person) and isPartnerIn
                              • hasFemalePartner(domain Marriage and range Woman, sub-property of hasPartner) and its inverse isFemalePartnerIn;
                              • a sub-property of hasPartner has MalePartner (domain Marriage and range Man)and its inverse isMalePartnerIn;
                            3. Create the data property hasMarriageYear, making us a sub-property of hasEventYear,make it functional;
                            4. Create an individual m001 with the label Marriage of David and Margaret and add the facts:
                              • hasMalePartner David_Bright_1934;
                              • hasFemalePartner Margaret_Grace_Rever_1934
                              • hasMarriageYear 1958;
                            5. Create an individual m002 with the label Marriage of John and Joyce and add the facts:
                              • hasMalePartner John_Bright_1930;
                              • hasFemalePartner Joyce_Gosport(you may have to add Joyce if you did not already did that);
                              • hasMarriageYear 1955;
                            6. Create an individual m003 with the label Marriage of Peter and Diana and add the facts:
                              • hasMalePartner Peter_William_Bright_1941;
                              • hasFemalePartner Diana_Pool(you may have to add Diana if you did not already did that);
                              • hasMarriageYear 1964;
                            +

                            We have the basic infrastructure for marriages. We can ask the usual kinds of questions; try the following:

                            + + + + + + + + + + + +
                            Task 37: DL queries
                            1. Ask the following DL queries:
                              • The Women partners in marriages;
                              • Marriages that happened before 1960 (see example below);
                              • Marriages that happened after 1960;
                              • Marriages that involved a man with the family name ‘Bright’.
                            +
                            DL query: Marriage and hasMarriageYear some int[<= 1960]
                            +
                            +

                            9.1.1 Spouses

                            +

                            This marriage infrastructure can be used to infer some slightly more interesting things for actual people. While we want marriage objects so that we can talk about marriage years and even locations, should we want to, we also want to be able to have the straight-forward spouse relationships one would expect. We can use sub-property chains in the usual manner; do the following:

                            + + + + + + + + + + + +
                            Task 38: Wifes and Husbands
                            1. Create a property hasSpouse with two sub-properties hasHusband and hasWife.
                            2. Create the inverses isSpouseOf, isWifeOf and isHusbandOf.
                            3. To the hasWife property, add the sub-property chain isMalePartnerIn o hasFemalePartner.
                            4. Follow the same pattern for the hasHusband property.
                            +

                            Figure 9.1 shows what is happening with the sub-property chains. Note that the domains and ranges of the spouse properties come from the elements of the sub-property chains. Note also that the hasSpouse relationship will be implied from its sub-property chains.

                            +

                            The following questions can now be asked:

                            +
                              +
                            • Is wife of David Bright;
                            • +
                            • Has a husband born before 1940;
                            • +
                            • The wife of an uncle of William Bright 1970.
                            • +
                            +

                            Figure 9.1

                            +

                            Figure 9.1: The sub-property chain path used to infer the spouse relationships via the marriage partnerships.

                            +

                            and many more. This is really a chance to explore your querying abilities and make some complex +nested queries that involve going up and down the hierarchy and tracing routes through the graph of +relationships between the individuals you’ve inferred.

                            +

                            9.2 In-Laws

                            +

                            Now we have spouses, we can also have in-laws. The path is simple: isSpouseOf o hasMother implies hasMotherInLaw. The path involved in mother-in-laws can be seen in Figure 9.2. The following OWL code establishes the sub-property chains for hasMotherInLaw:

                            +
                            ObjectProperty: hasMotherInLaw
                            +SubPropertyOf: hasParentInLaw
                            +SubPropertyChain: isSpouseOf o hasMother
                            +Domain: Person
                            +Range: Woman
                            +InverseOf: isMotherInLawOf
                            +
                            +

                            Figure 9.2

                            +

                            Figure 9.2: Tracing out the path between objects to make the sub-property chain for mother-in-laws

                            +

                            Do the following to make the parent in-law properties:

                            + + + + + + + + + + + +
                            Task 39: Parents in-law
                            1. Create hasParentInLaw with two sub-properties of hasMotherInLaw and hasFatherInLaw;
                            2. Create the inverses, but remember to let the reasoner infer the hierarchy on that side of the hierarchy;
                            3. Add the sub-property chains as described in the pattern for hasMotherInLaw above;
                            4. Run the reasoner and check that the mother-in-law of Margaret Grace Rever is Iris Ellen Archer.
                            +

                            9.3 Brothers and Sisters In-Law

                            +

                            Brothers and sisters in law have the interesting addition of having more than one path between objects to establish a sister or brother in law relationship. The OWL code below establishes the relationships for ‘is sister in law of’:

                            +
                            ObjectProperty: hasSisterInLaw
                            +SubPropertyOf: hasSiblingInLaw
                            +SubPropertyChain: hasSpouse o hasSister
                            +SubPropertyChain: hasSibling o isWifeOf
                            +
                            +

                            A wife’s husband’s sister is a sister in law of the wife. Figure 9.3 shows the two routes to being a sister-in-law. In addition, the wife is a sister in law of the husband’s siblings. One can add as many sub-property chains to a property as one needs. You should add the properties for hasSiblingInLawOf and its obvious sub-properties following the inverse of the pattern above.

                            + + + + + + + + + + + +
                            Task 40: Siblings in-law
                            1. Create the relationships for siblings-in-law as indicated in the owl code above.
                            +

                            dragon

                            +
                            By now, chances are high that the realisation takes a long time. We recommend to
                            +remove the very computationally expensive restriction `hasParent` exactly 2 Person
                            +on the `Person` class, if you have not done it so far.
                            +
                            +

                            Figure 9.3

                            +

                            Figure 9.3: The two routes to being a sister-in-law.

                            +

                            9.4 Aunts and Uncles in-Law

                            +

                            The uncle of Robert David Bright has a wife, but she is not the aunt of Robert David Bright, she is the aunt-in-law. This is another kith relationship, not a kin relationship. The pattern has a familiar feel:

                            +
                            ObjectProperty: isAuntInLawOf
                            +SubPropertyOf: isInLawOf
                            +SubPropertyChain: isWifeOf o isBrotherOf o isParentOf
                            +
                            + + + + + + + + + + + +
                            Task 41: Uncles and aunts in-law
                            1. Create hasAuntInLaw and hasUncleInLaw in the usual way;
                            2. Test in the usual way;
                            3. Tidy up the top of the property hierarchy so that it looks like Figure 9.4. We have a top property of hasRelation and two sub-properties of isBloodRelationOf and isInLawOf to establish the kith and kin relationships respectively;
                            4. All the properties created in this chapter (except for spouses) should be underneath isInLawOf.
                            +

                            Figure 9.4

                            +

                            Figure 9.4: The object property hierarchy after adding the various in-law properties.

                            +

                            9.5 Summary

                            +

                            This has really been a revision chapter; nothing new has really been introduced. We have added a lot of new object properties and one new data property. The latest object property hierarchy with the ‘in-law’ branch can be seen in Figure 9.4. Highlights have been:

                            +
                              +
                            • Having an explicit marriage object so that we can say things about the marriage itself, not just the people in the marriage;
                            • +
                            • We have seen that more than one property chain can be added to a property;
                            • +
                            • We have added a lot of kith relationships to join the kin or blood relationships;
                            • +
                            • As usual, the reasoner can establish the hierarchy for the inverses and put a lot of the domain and ranges in for free.
                            • +
                            +

                            noteiconsmall

                            +
                            The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).
                            +
                            +

                            noteiconsmall

                            +
                            The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                            +machine by HermiT 1.3.8 is approximately 0.000 sec (0.00000 % of final), by Pellet
                            +2.2.0 123.655 sec (1.00000 % of final) and by FaCT++ 1.6.4 is approximately 1.618
                            +sec (0.046 % of final). 0 sec indicates failure or timeout.
                            +
                            +

                            Chapter 10

                            +

                            Extending the TBox

                            +

                            In this chapter you will:

                            +
                              +
                            1. Just add lots of defined classes for all the aspects we have covered in this FHKB tutorial;
                            2. +
                            3. You will learn that the properties used in these defined classes must be chosen with care.
                            4. +
                            +

                            camera

                            +
                            There is a snapshot of the ontology as required at this point in the tutorial available
                            +at http://owl.cs.manchester.ac.uk/tutorials/fhkbtutorial
                            +
                            +

                            10.1 Adding Defined Classes

                            +

                            Add the following defined classes:

                            + + + + + + + + + + + +
                            Task 42: Adding defined classes
                            1. Relation and blood relation;
                            2. Forefather and Foremother;
                            3. Grandparent, Grandfather and Grandmother;
                            4. GreatGrandparent, GreatGrandfather and GreatGrandmother;
                            5. GreatGrandparentOfRobert, GreatGrandfatherOfRobert and GreatGrandMotherOfRobert
                            6. Daughter, Son, Brother, Sister, Child;
                            7. Aunt, Uncle, AuntInLaw, UncleInLaw, GreatAunt and GreatUncle;
                            8. FirstCousin and SecondCousin;
                            9. First cousin once removed;
                            10. InLaw, MotherInLaw, FatherInLaw, ParentInLaw, SiblingInLaw, SisterInLaw, BrotherInLaw;
                            11. Any defined class for any property in the hierarchy and any nominal variant of these classes.
                            +

                            The three classes of Child, Son and Daughter are of note. They are coded in the following way:

                            +
                            Class: Child EquivalentTo: Person that hasParent Some Person
                            +Class: Son EquivalentTo: Man that hasParent Some Person
                            +Class: Daughter EquivalentTo: Woman that hasParent Some Person
                            +
                            +

                            After running the reasoner, you will find that Person is found to be equivalent to Child; Daughter is equivalent to Woman and that Son is equivalent to Man. This does, of course, make sense – each and every person is someone’s child, each and every woman is someone’s daughter. We will forget evolutionary time-scales where this might be thought to break down at some point – all Person individuals are also Descendant individuals, but do we expect some molecule in some prebiotic soup to be a member of this class?

                            +

                            Nevertheless, within the scope of the FHKB, such inferred equivalences are not unreasonable. They are +also instructive; it is possible to have different intentional descriptions of a class and for them to have the +same logical extents. You can see another example of this happening in the amino acids ontology, but +for different reasons.

                            +

                            Taking Grandparent as an example class, there are two ways of writing the defined class:

                            +
                            Class: Grandparent EquivalentTo: Person and isGrandparentOf some Person
                            +Class: Grandparent EquivalentTo: Person and (isParentOf some (Person and (is-
                            +ParentOf some Person))
                            +
                            +

                            Each comes out at a different place in the class hierarchy. They both capture the right individuals as members (that is, those individuals in the ABox that are holding a isGrandparentOf property), but the class hierarchy is not correct. By definition, all grandparents are also parents, but the way the object property hierarchy works means that the first way of writing the defined class (with the isGrandparentOf property) is not subsumed by the class Parent. We want this to happen in any sensible class hierarchy, so we have to use the second pattern for all the classes, spelling out the sub-property path that implies the property such as isGrandparentOf within the equivalence axiom.

                            +

                            The reason for this need for the ‘long-form’ is that the isGrandparentOf does not imply the isParentOf property. As described in Chapter 3 if this implication were the case, being a grandparent of Robert David Bright, for instance, would also imply that the same Person were a parent of Robert David Bright; an implication we do not want. As these two properties (isParentOf and isGrandparentOf) do not subsume each other means that the defined classes written according to pattern one above will not subsume each other in the class hierarchy. Thus we use the second pattern. If we look at the class for grandparents of Robert:

                            +
                            Class: GrandparentOfRobert
                            +EquivalentTo: Person that isParentOf some (Person that isParentOf value Robert
                            +David Bright)
                            +
                            +

                            If we make the equivalent class for Richard John Bright, apply the reasoner and look at the hierarchy, we see that the two classes are not logically equivalent, even though they have the same extents of William George Bright, Iris Ellen Archer, Charles Herbert Rever and Violet Sylvia Steward. We looked at this example in Section 6.2, where there is an explanation and solutions.

                            +

                            10.2 Summary

                            +

                            We can add defined classes based on each property we have put into the object property hierarchy. We see the expected hierarchy; as can be seen from Figure 10.1 it has an obvious symmetry based on sex. We also see a lot of equivalences inferred – all women are daughters, as well as women descendants. Perhaps not the greatest insight ever gained, but it at least makes sense; all women must be daughters. It is instructive to use the explanation feature in Protégé to look at why the reasoner has made these inferences. For example, take a look at the class hasGrandmother some Woman – it is instructive to see how many there are.

                            +

                            Like the Chapter on marriage and in-law (Chapter 9), this chapter has largely been revision. One thing of note is, however, that we must not use the object properties that are inferred through sub-property chains as definitions in the TBox; we must spell out the sub-property chain in the definition, otherwise the implications do not work properly.

                            +

                            One thing is almost certain; the resulting TBox is rather complex and would be almost impossible to maintain by hand.

                            +

                            Figure 10.1

                            +

                            Figure 10.1: The full TBox hierarchy of the FHKB

                            +

                            noteiconsmall

                            +
                            The FHKB ontology at this stage of the tutorial has an expressivity of SROIQ(D).
                            +
                            +

                            noteiconsmall

                            +
                            The time to reason with the FHKB at this point (in Protégé) on a typical desktop
                            +machine by HermiT 1.3.8 is approximately 0.000 sec (0.00000 % of final), by Pellet
                            +2.2.0 0.000 sec (0.00000 % of final) and by FaCT++ 1.6.4 is approximately 35.438
                            +sec (1.000 % of final). 0 sec indicates failure or timeout.
                            +
                            +

                            Chapter 11

                            +

                            Final remarks

                            +

                            dragon

                            +

                            If you have done all the tasks within this tutorial, then you will have touched most parts of OWL 2. Unusually for most uses of OWL we have concentrated on individuals, rather than just on the TBox. One note of warning – the full FHKB has some 450 members of the Bright family and takes a reasonably long time to classify, even on a sensible machine. The FHKB is not scalable in its current form.

                            +

                            One reason for this is that we have deliberately maximised inference. We have attempted not to explicitly type the individuals, but drive that through domain and range constraints. We are making the property hierarchy do lots of work. For the individual Robert David Bright, we only have a couple of assertions, but we infer some 1 500 facts between Robert David Bright and other named individuals in the FHKB–displaying this in Protégé causes problems. We have various complex classes in the TBox and so on.

                            +

                            dragon

                            +

                            We probably do not wish to drive a genealogical application using an FHKB in this form. Its purpose is educational. It touches most of OWL 2 and shows a lot of what it can do, but also a considerable amount of what it cannot do. As inference is maximised, the FHKB breaks most of the OWL 2 reasoners at the time of writing.However, it serves its role to teach about OWL 2.

                            +

                            OWL 2 on its own and using it in this style, really does not work for family history. We have seen that siblings and cousins cause problems. rules in various forms can do this kind of thing easily—it is one of the primary examples for learning about Prolog. Nevertheless, the FHKB does show how much inference between named individuals can be driven from a few fact assertions and a property hierarchy. Assuming a powerful enough reasoner and the ability to deal with many individuals, it would be possible to make a family history application using the FHKB; as long as one hid the long and sometimes complex queries and manipulations that would be necessary to ‘prune’ some of the ‘extra’ facts found about individuals. However, the FHKB does usefully show the power of OWL 2, touch a great deal of the language and demonstrate some of its limitations.

                            +

                            Appendix A

                            +

                            FHKB Family Data

                            +

                            Table A.1: The list of individuals in the FHKB

                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            PersonFirst given nameSecond given nameFamily nameBirth yearMotherFather
                            Alec John Archer 1927AlecJohnArcher1927Violet Heath 1887James Alexander Archer 1882
                            Charles Herbert Rever 1895CharlesHerbertRever1895Elizabeth Frances Jessop 1869William Rever 1870
                            Charlotte Caroline Jane Bright 1894CharlotteCaroline JaneBright1894Charlotte Hewett 1863Henry Edmund Bright 1862
                            Charlotte Hewett 1863CharlottenoneHewett1863not specifiednot specified
                            Clare Bright 1966ClarenoneBright1966Diana PoolPeter William Bright 1941
                            Diana PoolDiananonePoolnonenot specifiednot specified
                            David Bright 1934DavidnoneBright1934Iris Ellen Archer 1906William George Bright 1901
                            Dereck HeathDerecknoneHeath1927not specifiednot specified
                            Eileen Mary Rever 1929EileenMaryRever1929Violet Sylvia Steward 1894Charles Herbert Rever 1895
                            Elizabeth Frances Jessop 1869ElizabethFrancesJessop1869not specifiednot specified
                            Ethel Archer 1912EthelnoneArcher1912Violet Heath 1887James Alexander Archer 1882
                            Frederick Herbert Bright 1889FrederickHerbertBright1889Charlotte Hewett 1863Henry Edmund Bright 1862
                            Henry Edmund Bright 1862HenryEdmundBright1862not specifiednot specified
                            Henry Edmund Bright 1887HenryEdmundBright1887Charlotte Hewett 1863Henry Edmund Bright 1862
                            Ian Bright 1959IannoneBright1959Joyce GosportJohn Bright 1930
                            Iris Ellen Archer 1906IrisEllenArcher1906Violet Heath 1887James Alexander Archer 1882
                            James Alexander Archer 1882JamesAlexanderArcher1882not specifiednot specified
                            James Bright 1964JamesnoneBright1964Diana PoolPeter William Bright 1941
                            James Frank Hayden Bright 1891JamesFrankBright1891Charlotte Hewett 1863Henry Edmund Bright 1862
                            Janet Bright 1964JanetnoneBright1964Joyce GosportJohn Bright 1930
                            John Bright 1930JohnnoneBright1930Iris Ellen Archer 1906William George Bright 1901
                            John Tacey Steward 1873JohnTaceySteward1873not specifiednot specified
                            Joyce Archer 1921JoycenoneArcher1921Violet Heath 1887James Alexander Archer 1882
                            Joyce GosportJoycenoneGosportnot specifiednot specifiednot specified
                            Julie Bright 1966JulienoneBright1966Diana PoolPeter William Bright 1941
                            Kathleen Minnie Bright 1904KathleenMinnieBright1904Charlotte Hewett 1863Henry Edmund Bright 1862
                            Leonard John Bright 1890LeonardJohnBright1890Charlotte Hewett 1863Henry Edmund Bright 1862
                            Lois Green 1871LoisnoneGreen1871not specifiednot specified
                            Margaret Grace Rever 1934MargaretGraceRever1934Violet Sylvia Steward 1894Charles Herbert Rever 1895
                            Mark Anthony Heath 1960MarkAnthonyHeath1960Eileen Mary Rever 1929Dereck Heath
                            Mark Bright 1956MarknoneBright1956Joyce GosportJohn Bright 1930
                            Nicholas Charles Heath 1964NicholasCharlesHeath1964Eileen Mary Rever 1929Dereck Heath
                            Nora Ada Bright 1899NoraAdaBright1899Charlotte Hewett 1863Henry Edmund Bright 1862
                            Norman James Archer 1909NormanJamesArcher1909Violet Heath 1887James Alexander Archer 1882
                            Peter William Bright 1941PeterWilliamBright1941Iris Ellen Archer 1906William George Bright 1901
                            Richard John Bright 1962RichardJohnBright1962Margaret Grace Rever 1934David Bright 1934
                            Robert David Bright 1965RobertDavidBright1965Margaret Grace Rever 1934David Bright 1934
                            Violet Heath 1887VioletnoneHeath1887not specifiednot specified
                            Violet Sylvia Steward 1894VioletSylviaSteward1894Lois Green 1871John Tacey Steward 1873
                            William Bright 1970WilliamnoneBright1970Joyce GosportJohn Bright 1930
                            William George Bright 1901WilliamGeorgeBright1901Charlotte Hewett 1863Henry Edmund Bright 1862
                            William Rever 1870WilliamnoneRever1870not specifiednot specified
                            +

                            Bibliography

                            +

                            [1] M. Horridge and S. Bechhofer. The owl api: a java api for working with owl 2 ontologies. Proc. of +OWL Experiences and Directions , 2009, 2009.

                            +

                            [2] Luigi Iannone, Alan Rector, and Robert Stevens. Embedding knowledge patterns into owl. In European +Semantic Web Conference (ESWC09) , pages 218–232, 2009.

                            +

                            [3] Dmitry Tsarkov, Uli Sattler, Margaret Stevens, and Robert Stevens. A Solution for the Man-Man +Problem in the Family History Knowledge Base. In Sixth International Workshop on OWL: Experiences and Directions 2009 , 2009.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/github-fundamentals/index.html b/tutorial/github-fundamentals/index.html new file mode 100644 index 000000000..3f2e4d32f --- /dev/null +++ b/tutorial/github-fundamentals/index.html @@ -0,0 +1,3956 @@ + + + + + + + + + + + + + + + + + + + + + + + + GitHub Fundamentals for OBO Engineers - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            GitHub Fundamentals for OBO Engineers

                            + +

                            Introduction to GitHub

                            +
                            Back to Getting Started
                            +
                            Back to Main Repo
                            +

                            Overview:

                            + +

                            Getting started

                            +

                            GitHub is increasingly used by software developers, programmers and project managers for uploading and sharing content, as well as basic project management. You build a profile, upload projects to share and connect with other users by "following" their accounts. Many users store programs and code projects, but you can also upload text documents or other file types in your project folders to share publicly (or privately). It is capable of storing any file type from text, to structured data, to software. And more features are being added by the day. The real power of Git, however, is less about individuals publishing content (many places can do that, including google docs etc). It is more about that content being easily shared, built upon, and credited in a way that is robust to the realities of distributed collaboration. You don't have to know how to code or use the command line. It is a powerful way to organize projects with multiple participants.

                            +

                            Organization

                            +

                            Git supports the following types of primary entities:

                            +
                              +
                            • Individual: A person who contributes to GitHub (that's you!)
                            • +
                            • Example individual http://github.com/nicolevasilevsky
                            • +
                            • Organization: An entity that may correspond to an actual organization (such as a university) or to a meaningful grouping of repositories. Organizations are like individuals except that they can establish teams.
                            • +
                            • Example organization: https://github.com/monarch-initiative
                            • +
                            • Repository: A collection of versioned files (of any type)
                            • +
                            • Example repository https://github.com/monarch-initiative/mondo/
                            • +
                            • Teams: A group of individuals assembled by the administrators of an organization. An individual may participate in many teams and organizations, however a team is always bound to a single organization. Nesting teams saves time; instructions here.
                            • +
                            +

                            The relationships between any combination of these entities is many-to-many, with the nuanced exception of repositories. +For our purposes today we will oversimplify by saying that a repositoy belongs either to a single organization or to a single individual.

                            +

                            +

                            Markdown

                            +

                            Content in GitHub is written using Markdown, a text-to-HTML conversion tool for web writers (ref).

                            +

                            For more help with Markdown, see this GitHub guide.

                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            Raw markup syntaxAs rendered
                            Header - use # for H1, ## for H2, etc.# Header, ## Header (note, the header is not displaying properly in this table)
                            Emphasis, aka italics, with *asterisks* or _underscores_.Emphasis, aka italics, with asterisks or underscores.
                            Strong emphasis, aka bold, with **asterisks** or __underscores__.Strong emphasis, aka bold, with asterisks or underscores.
                            Combined emphasis with **asterisks and _underscores_**.Combined emphasis with asterisks and underscores.
                            Strikethrough uses two tildes. ~~Scratch this.~~Strikethrough uses two tildes. ~~Scratch this.~~
                            +

                            Lists:
                            +To introduce line breaks in markdown, add two spaces +For a bulleted list, use * or - (followed by a space)

                            +

                            Here is an example of a list:
                            +One
                            +Two
                            +Three

                            +

                            Here is an example of a bulleted list:

                            +
                              +
                            • One
                            • +
                            • Two
                            • +
                            • Three
                            • +
                            +

                            Content types

                            +

                            GitHub can store any kind of content, provided it isn't too big. (And now even this is possible). +However, it is more capable for some filetypes than it is for others. Certain filetypes can be viewed 'natively' within the GitHub interface. These are:

                            +
                              +
                            • Images: png, jpg, svg
                            • +
                            • GEOJSON
                            • +
                            • CSV, TSV (note that files named type '.tab' will not render properly in the UI.)
                            • +
                            • Markdown
                            • +
                            • Software code (eg. including json, HTML, xml etc)
                            • +
                            +

                            Task - create a new GitHub repository

                            +
                              +
                            • Create your GitHub account if you do not already have one
                            • +
                            • Customize your avatar if you haven't already
                            • +
                            • Go to settings and upload any picture (it doesn't have to be your face)
                            • +
                            • Create a repository
                            • +
                            +

                            Task - update the content in your README

                            +
                              +
                            • Go back to the repository you just created
                            • +
                            • Click the pencil icon in the right corner of your README.md file
                            • +
                            • Add some content to your file that includes a header, italics, bold, strikethrough, and lists
                            • +
                            • You can preview your changes before committing by clicking 'Preview changes'.
                            • +
                            • Commit your changes by clicking the commit button at the bottom of the page.
                            • +
                            +

                            Task - add content to your repository

                            +
                              +
                            • Click on the code button
                            • +
                            • Click upload file
                            • +
                            • Upload a file by dragging and dropping or browse for file
                            • +
                            • Trying uploading an Excel file vs a TSV or CSV file. How are these displayed differently?
                            • +
                            +

                            Additional Resources

                            + +

                            Acknowledgements

                            +

                            Adopted from CD2H MTIP tutorial

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/github-issues/index.html b/tutorial/github-issues/index.html new file mode 100644 index 000000000..1a4d93801 --- /dev/null +++ b/tutorial/github-issues/index.html @@ -0,0 +1,3972 @@ + + + + + + + + + + + + + + + + + + + + + + + + GitHub Issue for OBO Engineers - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            GitHub Issue for OBO Engineers

                            + +

                            Intro to managing and tracking issues in GitHub

                            +

                            Overview

                            + +

                            Create issues

                            +

                            Back to top

                            +

                            Why: +"Issues are a great way to keep track of tasks, enhancements, and bugs for your projects or for anyone else's. As long as you are a registered GitHub user you can log an issue, or comment on an issue for any open repo on GitHub. Issues are a bit like email—except they can be shared, intelligently organized, and discussed with the rest of your team. GitHub’s tracker is called Issues, and has its own section in every repository." (From: https://guides.github.com/features/issues/)

                            +

                            How:

                            +

                            How to create an issue in GitHub:

                            +
                              +
                            • We will practice creating tickets in this repository https://github.com/nicolevasilevsky/c-path-practice
                            • +
                            • Click "issues"
                            • +
                            • Click "New Issue" (note the word 'issue' and 'ticket' are frequently used interchangeably)
                            • +
                            • Write an informative title
                            • +
                            • Write a detailed explanation of your issue
                            • +
                            • In the case of reporting software bugs, provide some context in which the issue was encountered (e.g. bug detected when using Google Chrome on a Mac OS)
                            • +
                            • If you know the sub-tasks that are involved, list these using - [ ] markdown syntax before each bullet. Note, you can also add sub-tasks by clicking the 'add a task list' button in the tool bar. The status of the tasks in an issue (eg. https://github.com/nicolevasilevsky/c-path-practice/issues/1 will then be reflected in any summary view. Eg. https://github.com/nicolevasilevsky/c-path-practice/issues.
                            • +
                            • Click Submit new issue
                            • +
                            • Edit the issue (if needed) (Note that post-hoc edits will not propagate to email notifications).
                            • +
                            +

                            Your turn:

                            +

                            Follow the instructions above to create a ticket about a hypothetical issue (such as an improvement to this tutorial) that includes a sub-task list.

                            +

                            Assign issues

                            +

                            Back to top

                            +

                            Assign issues to people

                            +
                              +
                            • On the top right hand side, click "Assignees"
                            • +
                            • You can assign issues to yourself or other people who are part of the repository
                            • +
                            • In the box, start typing type their name or GitHub handle
                            • +
                            • It is possible to assign up to 10 handles at once (assignment to a team is currently not supported)
                            • +
                            +

                            Add labels

                            +
                              +
                            • On the top right hand side, click "Labels"
                            • +
                            • Assign a relevant label to your ticket
                            • +
                            • Note, by default, every GitHub repo comes with some standard labels
                            • +
                            • You can also create new labels that are specific to your project. For example see the labels on the Mondo GitHub tracker
                            • +
                            +

                            New Labels

                            +
                              +
                            • In GitHub, navigate to the Issues page or the pull requests tab
                            • +
                            • Click Labels button next to the search field
                            • +
                            • Click New Label to create a new label, or click Edit to edit an existing one.
                            • +
                            • In the text box, type your new label name.
                            • +
                            • Select a color for the label from the color bar. You can customize this color by editing the hexadecimal number above the color bar. For a list of hexadecimal numbers see HTML color codes
                            • +
                            • Click Create Label to save the new label.
                            • +
                            +

                            Your turn:

                            +

                            On the ticket you previously created:

                            +
                              +
                            • Assign the ticket to someone
                            • +
                            • Add a label for an enhancement
                            • +
                            • Create a new label and add it to the ticket
                            • +
                            +

                            Communicate about issues

                            +

                            Back to top

                            +

                            Comment on issues

                            +
                              +
                            • Click on an issue in the issue tracker in the https://github.com/nicolevasilevsky/c-path-practice/issues repo
                            • +
                            • Scroll to the bottom of the issue, and add content in the "Leave a comment" field
                            • +
                            • Use the top tool bar to format your text, add bold, italic, lists etc.
                            • +
                            • Preview your text to see how your formatting looks
                            • +
                            • Click Comment.
                            • +
                            +

                            Close issues

                            +
                              +
                            • If an issue has been addressed, click Close Issue. Best practice is to point to the work (whether code, documentation, etc) that has been done to close it.
                            • +
                            • Only close the ticket if the issue has been resolved, usually someone will write a comment describing the action they did to close the issue and click Close Issue.
                            • +
                            • The issue will no longer be dispalyed in the list of open issue, but will be archived.
                            • +
                            • When making a change to code or documentation in GitHub, it is possible to automatically couple a change to an issue and close it. Just use 'fixes' or 'closes' followed by the issue number.
                            • +
                            +

                            Use direct @ mentions

                            +
                              +
                            • You can mention someone in a issue without assigning it to them
                            • +
                            • In the comments section, type @github handle. For example, to mention Nicole, you would type @nicolevasilevsky. You can either start typing their name or GitHub handle and GitHub will autosuggest their handle.
                            • +
                            +

                            Link documents

                            +

                            You can link documents and files by:

                            +
                              +
                            • copy and pasting URL
                            • +
                            • you can attach files by dragging and dropping
                            • +
                            • You can link one issue to another in the same repo by typing '#' followed by the title of the ticket
                            • +
                            • This approach also works across repos but you need to use the full URL (no autocomplete available). Doing this will also cause the referent issue to display that it has been referenced.
                            • +
                            +

                            Cross reference to another ticket

                            +
                              +
                            • If your ticket is a duplicate or related to another ticket, you can cross reference another ticket
                            • +
                            • Type # and you will see a list of other tickets in that repo
                            • +
                            • Type #TicketNumber and that will link to the other ticket.
                            • +
                            +

                            Before saving your changes, you can preview the comment to ensure the correct formatting.

                            +

                            Your turn:

                            +
                              +
                            • Follow the instructions above to comment on a ticket that someone created.
                            • +
                            • Mention Nicole
                            • +
                            • Attach a picture (such as a picture you copy from the internet, or attach a picture you have saved on your computer)
                            • +
                            • Include a comment that says, 'related to #1' and link to ticket #1
                            • +
                            +

                            Organize issues

                            +

                            Back to top

                            +

                            Milestones

                            +
                              +
                            • To create a milestone, navigate to the issues page in your repository
                            • +
                            • Next to the search field, click Milestones
                            • +
                            • Click New Milestone to create a new milestone, click Edit to edit an existing one
                            • +
                            • Create a milestone that is broad enough to be meaningful, but specific enough to be actionable.
                            • +
                            • Set a due date for the milestone (note that specific tasks can not be formally assigned due dates, though you can mention a desired due date in the narrative text of a ticket.
                            • +
                            • Each ticket can only be associated to ONE milestone, however it can have as many labels as appropriate.
                            • +
                            • A given issue can be part of multiple "project" boards (see below)
                            • +
                            +

                            Your turn

                            +

                            Create a new milestone, and add the milestone to an existing ticket.

                            +

                            Projects

                            +
                              +
                            • Projects is a lot like Trello, it uses cards on a list that you can name and organize as you see fit.
                            • +
                            • You can create as many projects within a repository as you like
                            • +
                            +

                            To create project:

                            +
                              +
                            • Click on Projects
                            • +
                            • Click New Project
                            • +
                            • Name the project
                            • +
                            • Write a description of the project
                            • +
                            • Create columns and give them names
                            • +
                            • Add 'cards' to the columns
                            • +
                            +

                            Your turn

                            +

                            Create a new project and add columns and add cards to the columns.

                            +

                            Query issues

                            +

                            Back to top

                            +

                            Once you start using GitHub for lots of things it is easy to get overwhelmed by the number of issues. The query dashboard https://github.com/issues allows you to filter on tickets.

                            + +

                            More complex queries are also possible.

                            + +

                            Note, you must be signed in to GitHub to view the above links.

                            +

                            Further reading on Issue querys

                            +

                            Nofifications

                            +
                              +
                            • When you join a repository, by default, you are 'watching' all activity. You can change the setting to 'Participating and @mentions' to only get notifications that mention you
                            • +
                            • You can set rules in your email to filter for emails that mention you, ie @username.
                            • +
                            +

                            Help

                            +

                            Back to top

                            +
                              +
                            • You may find the answers you seek in StackOverflow, although it is primarily geared towards programmers.
                            • +
                            • GitHub kind of monitors https://github.com/isaacs/github/issues/ but not with any rigor.
                            • +
                            • To be safe, contact GitHub directly at https://github.com/contact, but recognize that they support literally millions of users and responsiveness is not guaranteed. Forums like isaacs sometimes offer some help because other users can help identify workarounds, for instance, as shown here.
                            • +
                            +

                            Acknowledgements

                            +

                            Adopted from CD2H MTIP tutorial

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/intro-cli-1/index.html b/tutorial/intro-cli-1/index.html new file mode 100644 index 000000000..cb9dbbfa2 --- /dev/null +++ b/tutorial/intro-cli-1/index.html @@ -0,0 +1,3905 @@ + + + + + + + + + + + + + + + + + + + + + + + + Basic introduction to CLI 1 - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 1

                            +

                            As a modern ontology curator, you are an engineer - you are curating computable knowledge, testing the integrity of your curation using quality control testing, and are responsible for critical components of modern knowledge systems that directly affect user experience - the ontologies.

                            +

                            Scientific computing is a big, scary world comprising many different tools, methodologies, training resources and philosophies, but nearly all modern workflows share one key aspect: the ability to execute commands that help you find and manipulate data with the command line. Some examples of that include:

                            +
                              +
                            1. Running and Ontology Development Kit (ODK) commands like sh run.sh make prepare_release
                            2. +
                            3. Creating a new branch in git and committing changes
                            4. +
                            5. Downloading a file with curl or wget
                            6. +
                            7. Finding which file in my ontology repository mentions HP:0000118 to figure out where that "weird axiom is coming from"
                            8. +
                            9. Searching for strange symbols in the ontology
                            10. +
                            11. Filtering and sorting text files
                            12. +
                            +

                            Here we are doing a basic hands on tutorial which will walk you through the must-know commands. For a more comprehensives introduction into thinking about automation please see our lesson on Automating Ontology Development Workflows: Make, Shell and Automation Thinking

                            +

                            The tutorial uses example tailored for users of UNIX systems, like Mac and Linux. +Users of Windows generally have analogous steps - wherever we talk about an sh file in the following +there exists a corresponding bat file that can be run in the windows powershell, or CMD.

                            +

                            Prerequisites

                            +

                            You have:

                            + +

                            Monarch OBO Training Tutorial

                            +

                            Intro to Command Lind Interface Part 1

                            + + +

                            Tutorial

                            +
                              +
                            1. Baby steps: whoami, ls and cd
                            2. +
                            3. Working with files and directories
                            4. +
                            5. Downloading and searching files
                            6. +
                            7. The Dark Art of Piping and Redirects
                            8. +
                            9. Tutorial videos
                            10. +
                            11. Further reading
                            12. +
                            +

                            +

                            Baby steps: whoami, pwd and ls

                            +

                            We are not going to discuss here in any detail what the command line is. We will focus on what you can do with it: for more information skip to the further reading section.

                            +

                            The basic idea behind the command line is that you run a command to achieve a goal. Among the most common goals relevant to you as a semantic engineer will be:

                            +
                              +
                            1. Navigating the file system (changing directories, logging into remote servers and more)
                            2. +
                            3. Reading and writing files
                            4. +
                            5. Searching stuff
                            6. +
                            +

                            Most commands result in some kind of printed statement. Lets try one. Open your terminal (a terminal is the program you use to enter commands. For a nice overview of how shell, terminal, command line and console relate, see here). On Mac, you can type CMD+Space to search for programs and then type "terminal". For this tutorial we use the default Terminal.app, but there are many others, including iterm2. For this introduction, it does not matter which terminal you use. When first opening the terminal you will see something like this:

                            +

                            Ohmyzsh terminal

                            +

                            or

                            +

                            Bash terminal

                            +

                            Note that your terminal window may look slightly different, depending on your configuration. More on that later.

                            +

                            Let's type our first command and hit enter:

                            +
                            whoami
                            +
                            +

                            On my machine I get

                            +
                            (base) matentzn@mbp.local:~ $ whoami
                            +matentzn
                            +
                            +

                            This does not seem like a useful command, but sometimes, we forget who we are, and it is good to be reminded. So, what happened here? We ran a command, named whoami and our command line executed that command which is implemented somewhere on our machine as a program. That program simply determined who I am in some way, and then printed the result again.

                            +

                            Ok so, lets lets look a bit closer at the command prompt itself:

                            +
                            matentzn@mbp.local:~ $
                            +
                            +

                            Two interesting things to not here for today:

                            +
                              +
                            1. The ~. This universally (on all Unix systems) refers to your user directory on your computer. In this case here, it tells you that in your terminal, you are "in your user directory".
                            2. +
                            3. The $ sign. It simply denotes where your command line starts (everything before the $ is information provided to you, everything will be about your commands). Make sure that you do not accidentally copy based the $ sign from the examples on the web into your command prompt:
                            4. +
                            +
                            (base) matentzn@mbp.local:~ $ $ whoami
                            +-bash: $: command not found
                            +(base) matentzn@mbp.local:~ $
                            +
                            +

                            whoami did not do anything.

                            +

                            Ok, based on the ~ we know that we are "in the user home directory". Let as become a bit more confident about that and ask the command prompt where we are:

                            +
                            matentzn@mbp.local:~ $ pwd
                            +/Users/matentzn
                            +
                            +

                            The pwd command prints out the full path of our current location in the terminal. As you can see, the default location when opening the command prompt is, indeed, the home director, located in /Users/matentzn. We will use it later again.

                            +

                            A word about paths. /Users/matentzn is what we call a path. On UNIX systems, / separates one directory from another. So matentzn is a directory inside of the Users directory.

                            +

                            Let us now take a look what our current directory contains (type ls and hit enter):

                            +
                            matentzn@mbp.local:~ $ ls
                            +Applications    Library ...
                            +
                            +

                            This command will simply list all of the files in your directory as a big list. We can do this a bit nicer:

                            +
                            matentzn@mbp.local:~ $ ls -l
                            +total 80000
                            +drwx------@   4 matentzn  staff       128 31 Jul  2020 Applications
                            +drwx------@  26 matentzn  staff       832 12 Sep  2021 Desktop
                            +
                            +

                            -l is a short command line option which allows you specify that you would like print the results in a different format (a long list). We will not go into any detail here what this means but a few things to not in the output: You can see some pieces of information that are interesting, like when the file or directory was last modified (i.e. 31. July 2020), who modified it (me) and, of course, the name e.g. Applications.

                            +

                            Before we move on to the next section, let us clear the current terminal from all the command outputs we ran:

                            +
                            clear
                            +
                            +

                            Your command prompt should now be empty again.

                            +

                            +

                            Working with files and directories

                            +

                            In the previous section we learned how to figure out who we are (whoami), where we are (pwd) and how to see what is inside the current directory (ls -l) and how to clear all the output (clear).

                            +

                            Let us know look at how we can programmatically create a new directory and change the location in our terminal.

                            +

                            First let us create a new directory:

                            +
                            mkdir tutorial-my
                            +
                            +

                            Now if we list the contents of our current directory again (ls -l), we will see our newly created directory listed! Unfortunately, we just realised that we chose the wrong name for our directory! It should have been my-tutorial instead of tutorial-my! So, let us rename it. In the command prompt, rather than "renaming" files and directories, we "move" them (mv).

                            +
                            mv tutorial-my my-tutorial
                            +
                            +

                            Now, lets enter our newly created directory using the _c_hange _d_irectory command (cd), and create another sub-directory in my-tutorial, called "data" (mkdir data):

                            +
                            cd my-tutorial
                            +mkdir data
                            +
                            +

                            You can check again with ls -l. If you see the data directory listed, we are all set! Feel free to run clear again to get rid of all the current output on the command prompt.

                            +

                            Let us also enter this directory now: cd data.

                            +

                            If we want to leave the directory again, feel free to do that like this:

                            +
                            cd ..
                            +
                            +

                            The two dots (..) mean: "parent directory." This is very important to remember during your command line adventures: .. stands for "parent directory", and . stands for "current/this directory" (see more on that below).

                            +

                            Now, let's get into something more advanced: downloading files.

                            +

                            +

                            Downloading and searching files

                            +

                            Our first task is to download the famous Human Phenotype Ontology Gene to Phenotype Annotations (aka HPOA). As you should already now, whenever we download ontologies, or ontology related files, we should always use a persistent URL, if available! This is the one for HPOA: http://purl.obolibrary.org/obo/hp/hpoa/genes_to_phenotype.txt.

                            +

                            There are two very popular commands for downloading content: curl and wget. I think most of my colleagues prefer curl, but I like wget because it simpler for beginners. So I will use it here. Lets us try downloading the file!

                            +
                            wget http://purl.obolibrary.org/obo/hp/hpoa/genes_to_phenotype.txt -O genes_to_phenotype.txt
                            +
                            +

                            The -O parameter is optional and specifies a filename. If you do not add the parameter, wget will try to guess the filename from the URL. This does not always go so well with complex URLs, so I personally recommend basically always specifying the -O parameter.

                            +

                            You can also use the curl equivalent of the wget command;

                            +
                            curl -L http://purl.obolibrary.org/obo/hp/hpoa/genes_to_phenotype.txt --output genes_to_phenotype.txt
                            +
                            +

                            Try before reading on: Exercises!

                            +
                              +
                            1. Move the downloaded file genes_to_phenotype.txt to the data directory you previously created.
                            2. +
                            3. Change into the data directory.
                            4. +
                            5. Download the OBO format version of the Human Phenotype Ontology from its PURL.
                            6. +
                            +

                            Do not move on to the next step unless your data directory looks similar to this:

                            +
                            matentzn@mbp.local:~/my-tutorial/data $ pwd
                            +/Users/matentzn/my-tutorial/data
                            +matentzn@mbp.local:~/my-tutorial/data $ ls -l
                            +total 53968
                            +-rw-r--r--  1 matentzn  staff  19788987 11 Jun 19:09 genes_to_phenotype.txt
                            +-rw-r--r--  1 matentzn  staff   7836327 27 Jun 22:50 hp.obo
                            +
                            +

                            Ok, let us look at the first 10 lines of genes_to_phenotype.txt using the head command:

                            +
                            head genes_to_phenotype.txt
                            +
                            +

                            head is a great command to familiarise yourself with a file. You can use a parameter to print more or less lines:

                            +
                            head -3 genes_to_phenotype.txt
                            +
                            +

                            This will print the first 3 lines of the genes_to_phenotype.txt file. There is another analogous command that allows us to look at the last lines off a file:

                            +
                            tail genes_to_phenotype.txt
                            +
                            +

                            head, tail. Easy to remember.

                            +

                            Next, we will learn the most important of all standard commands on the command line: grep. grep stands for "Global regular expression print" and allows us to search files, and print the search results to the command line. Let us try some simple commands first.

                            +
                            grep diabetes genes_to_phenotype.txt
                            +
                            +

                            You will see a list of hundreds of lines out output. Each line corresponds to a line in the genes_to_phenotype.txt file which contains the word "diabetes".

                            +
                            grep is case sensitive. It wont find matches like Diabetes, with capital D!
                            +
                            +Use the `-i` parameter in the grep command to instruct grep to
                            +perform case insensitive matches.
                            +
                            +

                            There is a lot more to grep than we can cover here today, but one super cool thing is searching across an entire directory.

                            +
                            grep -r "Elevated circulating follicle" .
                            +
                            +

                            Assuming you are in the data directory, you should see something like this:

                            +
                            ./genes_to_phenotype.txt:190    NR0B1   HP:0008232  Elevated circulating follicle stimulating hormone level -   HP:0040281      orphadata   ORPHA:251510
                            +./genes_to_phenotype.txt:57647  DHX37   HP:0008232  Elevated circulating follicle stimulating hormone level -       -   mim2gene    OMIM:273250
                            +...... # Removed other results
                            +./hp.obo:name: Elevated circulating follicle stimulating hormone level
                            +
                            +

                            There are two new aspects to the command here:

                            +
                              +
                            1. The -r option ("recursive") allows is to search a directory and all directories within in.
                            2. +
                            3. The . in the beginning. Remember, in the previous use of the grep command we had the name of a file in the place where now the . is. The . means "this directory" - i.e. the directory you are in right now (if lost, remember pwd).
                            4. +
                            +

                            As you can see, grep does not only list the line of the file in which the match was found, it also tells us which filename it was found in! +We can make this somewhat more easy to read as well by only showing filenames using the -l parameter:

                            +
                            matentzn@mbp.local:~/my-tutorial/data $ grep -r -l "Elevated circulating follicle" .
                            +./genes_to_phenotype.txt
                            +./hp.obo
                            +
                            +

                            +

                            The Dark Art of Piping and Redirects

                            +

                            The final lesson for today is about one of the most powerful features of the command line: the ability to chain commands together. Let us start with a simple example (make sure you are inside the data directory):

                            +
                            grep -r "Elevated circulating follicle" . | head -3
                            +
                            +

                            This results in:

                            +
                            ./genes_to_phenotype.txt:190    NR0B1   HP:0008232  Elevated circulating follicle stimulating hormone level -   HP:0040281      orphadata   ORPHA:251510
                            +./genes_to_phenotype.txt:57647  DHX37   HP:0008232  Elevated circulating follicle stimulating hormone level -       -   mim2gene    OMIM:273250
                            +./genes_to_phenotype.txt:57647  DHX37   HP:0008232  Elevated circulating follicle stimulating hormone level -   HP:0040281      orphadata   ORPHA:251510
                            +
                            +

                            So, what is happening here? First, we use the grep command to find "Elevated circulating follicle" in our data directory. As you may remember, there are more than 10 results for this command. So the grep command now wants to print these 10 results for you, but the | pipe symbol intercepts the result from grep and passes it on to the next command, which is head. Remember head and tail from above? Its exactly the same thing, only that, rather than printing the first lines of a file, we print the first lines of the output of the previous command. You can do incredible things with pipes. Here a taster which is beyond this first tutorial, but should give you a sense:

                            +
                            grep "Elevated circulating follicle" genes_to_phenotype.txt | cut -f2 | sort | uniq | head -3
                            +
                            +

                            Output:

                            +
                            AR
                            +BNC1
                            +C14ORF39
                            +
                            +

                            What is happening here?

                            +
                              +
                            1. grep is looking for "Elevated circulating follicle" in all files in the directory, then "|" is passing the output on to
                            2. +
                            3. cut, which extracts the second column of the table (how cool?), then "|" is passing the output on to
                            4. +
                            5. sort, which sorts the output, then "|" is passing the output on to
                            6. +
                            7. uniq, which removes all duplicate values from the output, then "|" is passing the output on to
                            8. +
                            9. head, which is printing only the first 3 rows of the result.
                            10. +
                            +

                            Another super cool use of piping is searching your command history. Try running:

                            +
                            history
                            +
                            +

                            This will show you all the commands you have recently run. Now if you want to simply look for some very specific commands that you have run in the past you can combine history with grep:

                            +
                            history | grep follicle
                            +
                            +

                            This will print every command you ran in the last hour that contains the word "follicle". Super useful if you, like me, keep forgetting your commands!

                            +

                            The last critical feature of the command line we cover today is the "file redirect". Instead of printing the output to file, we may chose to redirect the results to a file instead:

                            +
                            matentzn@mbp.local:~/my-tutorial/data $ grep "Elevated circulating follicle" genes_to_phenotype.txt | cut -f2 | sort | uniq | head -3 > gene.txt
                            +matentzn@mbp.local:~/my-tutorial/data $ head gene.txt
                            +AR
                            +BNC1
                            +C14ORF39
                            +
                            +

                            > gene.txt basically tells the command line: instead of printing the results to the command line, "print" them into a file which is called gene.txt.

                            +

                            +

                            Videos

                            +

                            Sam Bail: Intro to Terminal

                            +

                            Sam also did here PhD in and around ontologies but has moved entirely to data engineering since. I really liked her 1 hour introduction into the terminal, this should fill some of the yawning gaps in this introduction here.

                            + + +

                            +

                            Further reading

                            + + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/intro-cli-2/index.html b/tutorial/intro-cli-2/index.html new file mode 100644 index 000000000..4bbe65aa6 --- /dev/null +++ b/tutorial/intro-cli-2/index.html @@ -0,0 +1,4026 @@ + + + + + + + + + + + + + + + + + + + + + + + + Basic introduction to CLI 2 - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Tutorial: Very (!) short introduction to the command line for ontology curators and semantic engineers: Part 2

                            +

                            Today we will pick up where we left off after the first CLI tutorial, and discuss some more usages of the command line. In particular, we will:

                            +
                              +
                            • Introduce you into the art of managing your shell profile
                            • +
                            • Learn how to manage your path
                            • +
                            • Talk about how to make your shell hacking more efficient with aliases and functions.
                            • +
                            +

                            Prerequisites

                            +

                            You have:

                            +
                              +
                            • Completed the first CLI tutorial
                            • +
                            • (Optional) installed the amazing ohmyzsh! - advanced CLI for managing your ZSH profile. Important: Before installing ohmyzsh, back up you ~/.zshrc file in case you have had any previous customisations you wish to preserve.
                            • +
                            +

                            Monarch OBO Training Tutorial

                            +

                            Introduction to Command Line Interface Part 2

                            + + +

                            Preparation

                            +
                              +
                            • Install https://ohmyz.sh/ (optional)
                            • +
                            • For advanced windows users with docker installed, you can:
                            • +
                            • Follow the instructions here to set yourself up for ODK development.
                            • +
                            • Place odk.bat as instructed above in some directory on your machine (the path to the odk.bat file should have no spaces!)
                            • +
                            • Create a new file .bash_profile in the same directory as your odk.bat file.
                            • +
                            • Add something like -v %cd%\.bash_profile:/root/.bash_profile to the odk.bat file (this is mounting the .bash_profile file inside your ODK container). There is already a similar -v statement in this file, just copy it right after
                            • +
                            • Enter the ODK using odk.bat bash on your CMD (first, cd to the directory containing the odk.bat file).
                            • +
                            • Now you can follow most of this tutorial here as well.
                            • +
                            +

                            Tutorial

                            + +

                            +

                            ohmyzsh! - advanced CLI (OPTIONAL)

                            +

                            If you have not done so, install https://ohmyz.sh/. It is not strictly speaking necessary to use ohmyzsh to follow the rest of this tutorial, but it is a nice way to managing your Zsh (z-shell) configuration. Note that the ODK is using the much older bash, but it should be fine for you to work with anyways.

                            +

                            +

                            Managing the "Path": A first peak at your shell profile

                            +

                            As Semantic Engineers or Ontology Curators we frequently have to install custom tools like ROBOT, owltools, and more on our computer. These are frequently downloaded from the internet as "binaries", for example as Java "jar" files. In order for our shell to "know" about these downloaded programs, we have to "add them to the path".

                            +

                            Let us first look at what we currently have loaded in our path:

                            +
                            echo $PATH
                            +
                            +

                            What you see here is a list of paths. To read this list a bit more easily, let us remember our lesson on piping commands:

                            +
                            echo $PATH | tr ':' '\n'  | sort
                            +
                            +

                            What we do here:

                            +
                              +
                            1. Using the echo command to print the contents of the $PATH variable. In Unix systems, the $signifies the beginning of a variable name (if you are curious about what other "environment variables" are currently active on your system, use theprintenvcommand). The output of theecho command is piped to the next command (tr).
                            2. +
                            3. The tr – translate characters command copies the input of the previous command to the next with substitution or deletion of selected characters. Here, we substitute the : character, which is used to separate the different directory paths in the $PATH variable, with "\n", which is the all important character that denotes a "new line".
                            4. +
                            5. Just because, we also sort the output alphabetically to make it more readable.
                            6. +
                            +

                            So, how do we change the "$PATH"? Let's try and install ROBOT and see! Before we download ROBOT, let us think how we will organise our custom tools moving forward. Everyone has their own preferences, but I like to create a tools directory right in my Users directory, and use this for all my tools moving forward. In this spirit, lets us first go to our user directory in the terminal, and then create a "tools" directory:

                            +
                            cd ~
                            +mkdir -p tools
                            +
                            +

                            The -p parameter simply means: create the tools directory only if it does not exist. Now, let us go inside the tools directory (cd ~/tools) and continue following the instructions provided here.

                            +

                            First, let us download the latest ROBOT release using the curl command:

                            +
                            curl -L https://github.com/ontodev/robot/releases/latest/download/robot.jar > robot.jar
                            +
                            +

                            ROBOT is written in the Java programming language, and packaged up as an executable JAR file. It is still quite cumbersome to directly run a command with that JAR file, but for the hell of it, let us just do it (for fun):

                            +
                            java -jar robot.jar --version
                            +
                            +

                            If you have worked with ROBOT before, this looks quite a bit more ugly then simply writing:

                            +
                            robot --version
                            +
                            +

                            If you get this (or a similar) error:

                            +
                            zsh: permission denied: robot
                            +
                            +

                            You will have to run the following command as well, which makes the robot wrapper script executable:

                            +
                            chmod +x ~/tools/robot
                            +
                            +

                            So, how can we achieve this? The answer is, we download a "wrapper script" and place it in the same folder as the Jar. Many tools provide such wrapper scripts, and they can sometimes do many more things than just "running the jar file". Let us know download the latest wrapper script:

                            +
                            curl https://raw.githubusercontent.com/ontodev/robot/master/bin/robot > robot
                            +
                            +

                            If everything went well, you should be able to print the contents of that file to the terminal using cat:

                            +
                            cat robot
                            +
                            +

                            You should see something like:

                            +
                            #!/bin/sh
                            +
                            +## Check for Cygwin, use grep for a case-insensitive search
                            +IS_CYGWIN="FALSE"
                            +if uname | grep -iq cygwin; then
                            +    IS_CYGWIN="TRUE"
                            +fi
                            +
                            +# Variable to hold path to this script
                            +# Start by assuming it was the path invoked.
                            +ROBOT_SCRIPT="$0"
                            +
                            +# Handle resolving symlinks to this script.
                            +# Using ls instead of readlink, because bsd and gnu flavors
                            +# have different behavior.
                            +while [ -h "$ROBOT_SCRIPT" ] ; do
                            +  ls=`ls -ld "$ROBOT_SCRIPT"`
                            +  # Drop everything prior to ->
                            +  link=`expr "$ls" : '.*-> \(.*\)$'`
                            +  if expr "$link" : '/.*' > /dev/null; then
                            +    ROBOT_SCRIPT="$link"
                            +  else
                            +    ROBOT_SCRIPT=`dirname "$ROBOT_SCRIPT"`/"$link"
                            +  fi
                            +done
                            +
                            +# Directory that contains the this script
                            +DIR=$(dirname "$ROBOT_SCRIPT")
                            +
                            +if [ $IS_CYGWIN = "TRUE" ]
                            +then
                            +    exec java $ROBOT_JAVA_ARGS -jar "$(cygpath -w $DIR/robot.jar)" "$@"
                            +else
                            +    exec java $ROBOT_JAVA_ARGS -jar "$DIR/robot.jar" "$@"
                            +fi
                            +
                            +

                            We are not getting into the details of what this wrapper script does, but note that, you can fine the actually call the the ROBOT jar file towards the end: java $ROBOT_JAVA_ARGS -jar "$DIR/robot.jar" "$@". The cool thing is, we do not need to ever worry about this script, but it is good for use to know, as Semantic Engineers, that it exists.

                            +

                            Now, we have downloaded the ROBOT jar file and the wrapper script into the ~/tools directory. The last step remaining is to add the ~/tools directory to your path. It makes sense to try to at least understand the basic idea behind environment variables: variables that are "loaded" or "active" in your environment (your shell). The first thing you could try to do is change the variable right here in your terminal. To do that, we can use the export command:

                            +
                            export PATH=$PATH:~/tools
                            +
                            +

                            What you are doing here is using the export command to set the PATH variable to $PATH:~/tools, which is the old path ($PATH), a colon (:) and the new directory we want to add (~/tools). And, indeed, if we now look at our path again:

                            +
                            echo $PATH | tr ':' '\n'  | sort
                            +
                            +

                            We will see the path added. We can now move around to any directory on our machine and invoke the robot command. Try it before moving on!

                            +

                            Unfortunately, the change we have now applied to the $PATH variable is not persistent: if you open a new tab in your Terminal, your $PATH variable is back to what it was. What we have to do in order to make this persistent is to add the export command to a special script which is run every time the you open a new terminal: your shell profile.

                            +

                            There is a lot to say about your shell profiles, and we are taking a very simplistic view here that covers 95% of what we need: If you are using zsh your profile is managed using the ~/.zshrc file, and if you are using bash, your profile is managed using the ~/.bash_profile file. In this tutorial I will assume you are using zsh, and, in particular, after installing "oh-my-zsh". Let us look at the first 5 lines of the ~/.zshrc file:

                            +
                            head ~/.zshrc
                            +
                            +

                            If you have installed oh-my-zsh, the output will look something like:

                            +
                            # If you come from bash you might have to change your $PATH.
                            +# export PATH=$HOME/bin:/usr/local/bin:$PATH
                            +
                            +# Path to your oh-my-zsh installation.
                            +export ZSH="$HOME/.oh-my-zsh"
                            +
                            +# Set name of the theme to load --- if set to "random", it will
                            +# load a random theme each time oh-my-zsh is loaded, in which case,
                            +# to know which specific one was loaded, run: echo $RANDOM_THEME
                            +# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
                            +
                            +

                            This ~/.zshrc profile script is loaded every time you open up a new shell. What we want to do is add our export command above to this script, so that it is running every time. That is the basic concept of a shell profile: providing a series of commands that is run every time a new shell (terminal window, tab) is opened.

                            +

                            For this tutorial, we use nano to edit the file, but feel free to use your text editor of choice. For example, you can open the profile file using TextEdit on Mac like this:

                            +
                            open -a TextEdit ~/.zshrc
                            +
                            +

                            We will proceed using nano, but feel free to use any editor.

                            +
                            nano ~/.zshrc
                            +
                            +

                            Using terminal-based editors like nano or, even worse, vim, involves a bit of a learning curve. nano is by far the least powerful and simple to use. If you typed the above command, you should see its contents on the terminal. The next step is to copy the following (remember, we already used it earlier)

                            +
                            export PATH=$PATH:~/tools
                            +
                            +

                            and paste it somewhere into the file. Usually, there is a specific section of the file that is concerned with setting up your path. Eventually, as you become more of an expert, you will start organising your profile according to your own preferences! Today we will just copy the command anywhere, for example:

                            +
                            # If you come from bash you might have to change your $PATH.
                            +# export PATH=$HOME/bin:/usr/local/bin:$PATH
                            +export PATH=~/tutorial:$PATH
                            +# ..... other lines in the file
                            +
                            +

                            Note that the # symbol denotes the beginning of a "comment" which is ignored by the shell/CLI. After you have pasted the above, you use the following keyboard key-combinations to safe and close the file:

                            +
                            control + O
                            +
                            +

                            This saves the file. Confirm with Enter.

                            +
                            control + x
                            +
                            +

                            This closes the file. Now, we need to tell the shell we are currently in that it should reload our profile we have just edited. We do that using the source command.

                            +
                            source ~/.zshrc
                            +
                            +

                            Great! You should be able open a new tab in your terminal (with command+t on a Mac, for example) and run the following command:

                            +
                            robot --version
                            +
                            +

                            +

                            Managing aliases and custom commands in your shell profile

                            +

                            This section will only give a sense of the kinds of things you can do with your shell profile - in the end you will have to jump into the cold water and build your skills up yourself. Let us start with a very powerful concept: aliases. Aliases are short names for your commands you can use if you use them repeatedly but are annoyed typing them out every time. For example, tired of typing out long paths all the time to jump between your Cell Ontology and Human Phenotype Ontology directories? Instead of:

                            +
                            cd /Users/matentzn/ws/human-phenotype-ontology/src/ontology
                            +
                            +

                            wouldn't it be nice to be able to use, instead,

                            +
                            cdhp
                            +
                            +

                            or, if you are continuously checking git status, why not implement a alias gits? Or activating your python environment (source ~/.pyenv/versions/oak/bin/activate) with a nice env-oak? To achieve this we do the following:

                            +

                            (1) Open your profile in a text editor of your choice, e.g.

                            +
                            nano ~/.zshrc
                            +
                            +

                            add the following lines:

                            +
                            alias cdt='cd ~/tools'
                            +alias hg='history | grep'
                            +
                            +

                            Save (control+o) and close (control+x) the profile. Reload the profile:

                            +
                            source ~/.zshrc
                            +
                            +

                            (Alternatively, just open a new tab in your Terminal.) Now, lets try our new aliases:

                            +
                            cdt
                            +
                            +

                            Will bring you straight to your tools directory you created in the previous lesson above.

                            +
                            hg robot
                            +
                            +

                            Will search your terminal command history for every command you have executed involving robot.

                            +

                            List of ideas for aliases

                            +

                            In the following, we provide a list of aliases we find super useful:

                            +
                              +
                            1. alias cdt='cd ~/tools' - add shortcuts to all directories you frequently visit!
                            2. +
                            3. alias orcid='echo '\''https://orcid.org/0000-0002-7356-1779'\'' | tr -d '\''\n'\'' | pbcopy' - if you keep having to look up your ORCID, your favourite ontologies PURL or the your own zoom room, why not add a shortcut that copies it straight into your clipboard?
                            4. +
                            5. alias opent='open ~/tools' - why not open your favourite directory in finder without faving to search the User Interface? You can use the same idea to open your favourite ontology from wherever you are, i.e. alias ohp='open ~/ws/human-phenotype-ontology/src/ontology/hp-edit.owl'.
                            6. +
                            7. alias env-linkml='source ~/.pyenv/versions/linkml/bin/activate' - use simple shortcuts to active your python environments. This will become more important if you learn to master special python tools like OAK.
                            8. +
                            9. alias update_repo='sh run.sh make update_repo' - for users of ODK - alias all your long ODK commands!
                            10. +
                            +

                            Functions

                            +

                            The most advanced thought we want to cover today is "functions". You can not only manage simple aliases, but you can actually add proper functions into your shell profile. Here is an example of one that I use:

                            +
                            ols() {
                            +    open https://www.ebi.ac.uk/ols/search?q="$1"
                            +}
                            +
                            +

                            This is a simple function in my bash profile that I can use to search on OLS:

                            +
                            ols "lung disorder"
                            +
                            +

                            It will open this search straight in my browser.

                            +
                            rreport() {
                            +    robot report -i "$1" --fail-on none -o /Users/matentzn/tmp_data/report_"$(basename -- $1)".tsv
                            +}
                            +
                            +

                            This allows me to quickly run a robot report on an ontology.

                            +
                            rreport cl.owl
                            +
                            +

                            Why not expand the function and have it open in my atom text editor right afterwards?

                            +
                            rreport() {
                            +    robot report -i "$1" --fail-on none -o /Users/matentzn/tmp_data/report_"$(basename -- $1)".tsv && atom /Users/matentzn/tmp_data/report_"$(basename -- $1)".tsv
                            +}
                            +
                            +

                            The possibilities are endless. Some power-users have hundreds of such functions in their shell profiles, and they can do amazing things with them. Let us know about your own ideas for functions on the OBOOK issue tracker. Or, why not add a function to create a new, titled issue on OBOOK?

                            +
                            obook-issue() {
                            +  open https://github.com/OBOAcademy/obook/issues/new?title="$1"
                            +}
                            +
                            +

                            and from now on run:

                            +
                            obook-issue "Add my awesome function"
                            +
                            +

                            +

                            Further reading

                            + + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/lexmatch-tutorial/index.html b/tutorial/lexmatch-tutorial/index.html new file mode 100644 index 000000000..c69a1bb50 --- /dev/null +++ b/tutorial/lexmatch-tutorial/index.html @@ -0,0 +1,4242 @@ + + + + + + + + + + + + + + + + + + + + + + + + Lexical Matching with OAK Lexmatch - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Practical introduction to OAK Lexmatch

                            +

                            +

                            In this tutorial, we will learn to use a very basic lexical matching tool (OAK Lexmatch). The goal is not only to enable the learner to design their own matching pipelines, but also to to think about how they fit into their mapping efforts. Note that this tutorial is not about how to do proper matching: the goal here is simply to introduce you to the general workflow. Proper ontology matching is a major discipline with many tools, preprocessing and tuning approaches and often intricate interplay between matching tools and human curators. Today, you will just get a sense of the general method.

                            +

                            Pre-requisites

                            + +

                            Tutorial

                            +

                            In this tutorial, you will learn how to match fruit juices in Wikidata with FOODON using a simple lexical matching tool (OAK). The idea is simple: We obtain the ontologies we like to match, ask OAK to generate the matches and then curate the results.

                            +
                              +
                            1. Setting up OAK, preparing the ontology: You will learn how to install OAK into a new Python environment, and create a simple Makefile to prepare your input ontology with ROBOT.
                            2. +
                            3. Download Ontologies and extract subsets: Prepare the data/ontologies you want to match.
                            4. +
                            5. Generate the matches with OAK: Generate the matches using a simple tool.
                            6. +
                            7. Curating matching results: Manually review the results of the mars
                            8. +
                            +

                            +

                            Setting up OAK, preparing the ontology

                            +

                            Setting up oak is described in its documentation. Note that, aside from oak itself, you also need relation-graph, rdftab and riot installed, see https://incatools.github.io/ontology-access-kit/intro/tutorial07.html#without-docker. +This tutorial requires OAK version 0.1.59 or higher.

                            +

                            Note that if you are using the ODK docker image, oaklib is already installed. In the following, we will use the ODK wrapper to ensure that everyone has a consistent experience. If you want to use the local (non-docker) setup, you have to follow the instructions above before continuing and ignore the sh odk.sh part of the commands.

                            +
                            + +

                            IMPORTANT for users of ODK < 1.3.2:

                            +

                            ODK 1.3.1, the version still active on the 8th December 2022, does not have the latest dependencies of OAK installed. +To follow the tutorial you have to use the ODK development snapshot.

                            +

                            Install the ODK Development snapshot:

                            +
                            docker pull obolibrary/odkfull:dev
                            +
                            +

                            After downloading https://raw.githubusercontent.com/OBOAcademy/obook/master/docs/resources/odk.sh into your local working directory, open it with a text editor and change:

                            +
                            docker ... obolibrary/odkfull ...
                            +
                            +

                            to

                            +
                            docker ... obolibrary/odkfull:dev ...
                            +
                            +
                            + +

                            +

                            Download Ontologies and extract subsets

                            +

                            First, we download FOODON ontology. You can do this in whatever way you want, for example with wget:

                            +
                            sh odk.sh wget http://purl.obolibrary.org/obo/foodon.owl -O foodon.owl
                            +
                            +

                            Next, we extract the subset of FOODON that is relevant to our task at hand: relevant terms about fruit juices. The right method of subset extraction will differ from task to task. For this tutorial, we are using ROBOT extract to obtain a MIREOT module containing all the fruit juices. We do this by selecting everything between fruit juice food product as the upper-term and fruit juices (apple juice, orange juice and grapefruit juice) as the lower-term of the FOODON subset.

                            +
                            sh odk.sh robot extract --method MIREOT --input foodon.owl --upper-term "FOODON:00001140" --lower-term "FOODON:00001277" --lower-term "FOODON:00001059" --lower-term "FOODON:03306174 " --output fruit_juice_food_foodon.owl
                            +
                            +

                            If you open fruit_juice_food_foodon.owl in Protege, you will see something similar to:

                            +

                            foodon hierarchy

                            +

                            Next, we use OAK to extract juices and their labels from wikidata by selecting the descendants of juice from wikidata, store the result as a ttl file and then convert it to OWL using ROBOT.

                            +
                            sh odk.sh runoak -i wikidata: descendants wikidata:Q8492 -p i,p -o juice_wd.ttl -O rdf
                            +sh odk.sh robot convert -i juice_wd.ttl  -o juice_wd.owl
                            +
                            +

                            Note that you wont be able to see anything when opening juice_wd.owl in wikidata, because it does not have any OWL types (class, individual assertions) attached to it. However, you can convince yourself all is well by opening juice_wd.owl in a text editor, and see expressions such as:

                            +
                            <rdf:Description rdf:about="http://www.wikidata.org/entity/Q10374646">
                            +    <rdfs:label>cashew apple juice</rdfs:label>
                            +</rdf:Description>
                            +
                            +

                            The last preparation step is merging the two subsets (from FOODON and wikidata) into a single file using ROBOT:

                            +
                            sh odk.sh robot merge -i fruit_juice_food_foodon.owl -i juice_wd.owl -o foodon_wd.owl
                            +
                            +

                            +

                            Generate the matches with OAK

                            +

                            Now we are ready to create our first set of matches. First, let's run oak's lexmatch command to generate lexical matches between the contents of the merged file:

                            +
                            sh odk.sh runoak -i sqlite:foodon_wd.owl lexmatch -o foodon_wd_lexmatch.tsv
                            +
                            +

                            This will generate an SSSOM tsv file with the mapped contents as shown below:

                            +
                            # curie_map:
                            +#   FOODON: http://purl.obolibrary.org/obo/FOODON_
                            +#   owl: http://www.w3.org/2002/07/owl#
                            +#   rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
                            +#   rdfs: http://www.w3.org/2000/01/rdf-schema#
                            +#   semapv: https://w3id.org/semapv/
                            +#   skos: http://www.w3.org/2004/02/skos/core#
                            +#   sssom: https://w3id.org/sssom/
                            +#   wikidata: http://www.wikidata.org/entity/
                            +# license: https://w3id.org/sssom/license/unspecified
                            +# mapping_set_id: https://w3id.org/sssom/mappings/091390a2-6f64-436d-b2d1-309045ff150c
                            +
                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            subject_idsubject_labelpredicate_idobject_idobject_labelmapping_justificationmapping_toolconfidencesubject_match_fieldobject_match_fieldmatch_string
                            FOODON:00001059apple juiceskos:closeMatchwikidata:Q618355apple juicesemapv:LexicalMatchingoaklib0.5rdfs:labelrdfs:labelapple juice
                            FOODON:00001059apple juiceskos:closeMatchwikidata:Q618355apple juicesemapv:LexicalMatchingoaklib0.5oio:hasExactSynonymrdfs:labelapple juice
                            FOODON:03301103orange juiceskos:closeMatchwikidata:Q219059orange juicesemapv:LexicalMatchingoaklib0.5rdfs:labelrdfs:labelorange juice
                            FOODON:03306174grapefruit juiceskos:closeMatchwikidata:Q1138468grapefruit juicesemapv:LexicalMatchingoaklib0.5rdfs:labelrdfs:labelgrapefruit juice
                            wikidata:Q15823640cherry juiceskos:closeMatchwikidata:Q62030277cherry juicesemapv:LexicalMatchingoaklib0.5rdfs:labelrdfs:labelcherry juice
                            wikidata:Q18201657mustskos:closeMatchwikidata:Q278818mustsemapv:LexicalMatchingoaklib0.5rdfs:labelrdfs:labelmust
                            +

                            This is great - we get a few mappings without much work. If you need some help interpreting this table, please refer to the SSSOM tutorials for details.

                            +

                            Just eyeballing the labels in our ontology with OAK:

                            +
                            sh odk.sh runoak -i sqlite:foodon_wd.owl terms | grep juice
                            +
                            +

                            We notice rows like:

                            +
                            ...
                            +FOODON:00001001 ! orange juice (liquid)
                            +...
                            +
                            +

                            It may be beneficial for us to pre-process the labels a bit before performing the matches, for example, by excluding comments in the labels provided in brackets (essentially removing (liquid)).

                            +

                            To do this, we will define a few simple mapping rules in a file called matcher_rules.yaml. OAK provides a standard for representing the matching rules. You can see an example here.

                            +

                            Here is an example file:

                            +
                            rules:
                            +  - description: default
                            +    postconditions:
                            +      predicate_id: skos:closeMatch
                            +      weight: 0.0
                            +
                            +  - description: exact to exact
                            +    preconditions:
                            +      subject_match_field_one_of:
                            +        - oio:hasExactSynonym
                            +        - rdfs:label
                            +        - skos:prefLabel
                            +      object_match_field_one_of:
                            +        - oio:hasExactSynonym
                            +        - rdfs:label
                            +        - skos:prefLabel
                            +    postconditions:
                            +      predicate_id: skos:exactMatch
                            +      weight: 2.0
                            +
                            +  - preconditions:
                            +      subject_match_field_one_of:
                            +        - oio:hasExactSynonym
                            +        - rdfs:label
                            +      object_match_field_one_of:
                            +        - oio:hasBroadSynonym
                            +    postconditions:
                            +      predicate_id: skos:broadMatch
                            +      weight: 2.0
                            +
                            +  - synonymizer:
                            +      the_rule: Remove parentheses bound info from the label.
                            +      match: r'\([^)]*\)'
                            +      match_scope: "*"
                            +      replacement: ""
                            +
                            +  - synonymizer:
                            +      the_rule: Replace "'s" by "s" in the label.
                            +      match: r'\'s'
                            +      match_scope: "*"
                            +      replacement: "s"
                            +
                            +

                            As you can see, there are basically two kinds of rules: normal ones, and synonimizer ones. The normal rules provide preconditions and postconditions. For example, the second rule says: if an exact synonym, preferred label or label of the subject matches an exact synonym, preferred label or label of the object, then assert a skos:exactMatch. The synonimizer rules are preprocessing rules which are applied to the labels and synonyms prior to matching. Let's now run the matcher again:

                            +
                            sh odk.sh runoak -i sqlite:foodon_wd.owl lexmatch -R matcher_rules.yaml -o foodon_wd_lexmatch_with_rules.tsv 
                            +
                            +

                            This will generate an SSSOM tsv file with a few more matches than the previous output (the exact matches may differ from version to version):

                            +
                            # curie_map:
                            +#   FOODON: http://purl.obolibrary.org/obo/FOODON_
                            +#   IAO: http://purl.obolibrary.org/obo/IAO_
                            +#   owl: http://www.w3.org/2002/07/owl#
                            +#   rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
                            +#   rdfs: http://www.w3.org/2000/01/rdf-schema#
                            +#   semapv: https://w3id.org/semapv/
                            +#   skos: http://www.w3.org/2004/02/skos/core#
                            +#   sssom: https://w3id.org/sssom/
                            +#   wikidata: http://www.wikidata.org/entity/
                            +# license: https://w3id.org/sssom/license/unspecified
                            +# mapping_set_id: https://w3id.org/sssom/mappings/6b9c727f-9fdc-4a78-bbda-a107b403e3a9
                            +
                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            subject_idsubject_labelpredicate_idobject_idobject_labelmapping_justificationmapping_toolconfidencesubject_match_fieldobject_match_fieldmatch_stringsubject_preprocessingobject_preprocessing
                            FOODON:00001001orange juice (liquid)skos:exactMatchFOODON:00001277orange juice (unpasteurized)semapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelorange juicesemapv:RegularExpressionReplacementsemapv:RegularExpressionReplacement
                            FOODON:00001001orange juice (liquid)skos:exactMatchFOODON:03301103orange juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelorange juicesemapv:RegularExpressionReplacement
                            FOODON:00001001orange juice (liquid)skos:exactMatchwikidata:Q219059orange juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelorange juicesemapv:RegularExpressionReplacement
                            FOODON:00001059apple juiceskos:exactMatchwikidata:Q618355apple juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelapple juice
                            FOODON:00001059apple juiceskos:exactMatchwikidata:Q618355apple juicesemapv:LexicalMatchingoaklib0.8oio:hasExactSynonymrdfs:labelapple juice
                            FOODON:00001277orange juice (unpasteurized)skos:exactMatchFOODON:03301103orange juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelorange juicesemapv:RegularExpressionReplacement
                            FOODON:00001277orange juice (unpasteurized)skos:exactMatchwikidata:Q219059orange juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelorange juicesemapv:RegularExpressionReplacement
                            FOODON:00002403food materialskos:exactMatchFOODON:03430109food (liquid, low viscosity)semapv:LexicalMatchingoaklib0.8oio:hasExactSynonymrdfs:labelfoodsemapv:RegularExpressionReplacement
                            FOODON:00002403food materialskos:exactMatchFOODON:03430130food (liquid)semapv:LexicalMatchingoaklib0.8oio:hasExactSynonymrdfs:labelfoodsemapv:RegularExpressionReplacement
                            FOODON:03301103orange juiceskos:exactMatchwikidata:Q219059orange juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelorange juice
                            FOODON:03306174grapefruit juiceskos:exactMatchwikidata:Q1138468grapefruit juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelgrapefruit juice
                            FOODON:03430109food (liquid, low viscosity)skos:exactMatchFOODON:03430130food (liquid)semapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelfoodsemapv:RegularExpressionReplacementsemapv:RegularExpressionReplacement
                            wikidata:Q15823640cherry juiceskos:exactMatchwikidata:Q62030277cherry juicesemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelcherry juice
                            wikidata:Q18201657mustskos:exactMatchwikidata:Q278818mustsemapv:LexicalMatchingoaklib0.8497788951776651rdfs:labelrdfs:labelmust
                            +

                            +

                            Curate

                            +

                            As we have described in detail in our introduction to Semantic Matching, it is important to remember that matching in its raw form should not be understood to result in semantic mappings: they are better understood as mapping candidates. Therefore, it is always to plan for a review of false positives and false negatives:

                            +
                              +
                            1. False positive review (wrong mappings). The goal here is to identify mappings that do not work for our use case, or do not use the correct semantic mapping relation. If you look carefully through the matched files, you'll notice that manual intervention is definitely required for the matches to be accurate. For example, orange juice [wikidata:Q219059] and orange juice (unpasteurized) [FOODON:00001277] may not be considered as the same thing in the sense of skos:exactMatch.
                            2. +
                            3. False negative review (missing mappings). The goal here is to understand if we can do anything to improve the matching process by tuning it. Here, we did a little bit of that earlier when we were looking at the labels of the wikidata and FOODON juice hierarchies.
                            4. +
                            +

                            For a more detailed introduction into manual mapping curation with SSSOM we recommend following this tutorial: https://mapping-commons.github.io/sssom/tutorial/.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/linking-data/index.html b/tutorial/linking-data/index.html new file mode 100644 index 000000000..cc2335052 --- /dev/null +++ b/tutorial/linking-data/index.html @@ -0,0 +1,4694 @@ + + + + + + + + + + + + + + + + + + + + + + + + From Tables to Linked Data - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Tutorial: From Tables to Linked Data

                            +

                            These are the kinds of things that I do +when I need to work with a new dataset. +My goal is to have data that makes good sense +and that I can integrate with other data +using standard technologies: +Linked Data.

                            +

                            0. Before

                            +

                            The boss just sent me this new table to figure out:

                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            datetimeinvestigatorsubjectspeciesstrainsexgroupprotocolorgandiseasequalifiercomment
                            1/1/14 10:21 AMJAO12RATF 344/NFEMALE1HISTOPATHOLOGYLUNGADENOCARCINOMASEVERE
                            1/1/14 10:30 AMJO31MOUSEB6C3F1MALE2HISTOPATHOLOGYNOSEINFLAMMATIONMILD
                            1/1/14 10:45 AMJAO45RATF 344/NMALE1HISTOPATHOLOGYADRENAL CORTEXNECROSISMODERATE
                            +

                            It doesn't seem too bad, +but there's lots of stuff that I don't quite understand. +Where to start?

                            +

                            1. Getting Organized

                            +

                            Before I do anything else, +I'm going to set up a new project for working with this data. +Maybe I'll change my mind later +and want to merge the new project with an existing project, +but it never hurts to start from a nice clean state.

                            +

                            I'll make a new directory in a sensible place +with a sensible name. +In my case I have a ~/Repositories/ directory, +with subdirectories for GitHub and various GitLab servers, +a local directory for projects I don't plan to share, +and a temp directory for projects that I don't need to keep. +I'm not sure if I'm going to share this work, +so it can go in a new subdirectory of local. +I'll call it "linking-data-tutorial" for now.

                            +

                            Then I'll run git init to turn that directory into a git repository. +For now I'm just going to work locally, +but later I can make a repository on GitHub +and push my local repository there.

                            +

                            Next I'll create a README.md file +where I'll keep notes for myself to read later. +My preferred editor is Kakoune.

                            +

                            So I'll open a terminal and run these commands:

                            +
                            $ cd ~/Repositories/local/
                            +$ mkdir linking-data-tutorial
                            +$ cd linking-data-tutorial
                            +$ git init
                            +$ kak README.md
                            +
                            +

                            In the README I'll start writing something like this:

                            +
                            # Linking Data Tutorial
                            +
                            +An example of how to convert a dataset to Linked Data.
                            +
                            +The source data is available from
                            +<https://github.com/jamesaoverton/obook/tree/master/03-RDF/data.csv>
                            +
                            +

                            Maybe this information should go somewhere else eventually, +but the README is a good place to start.

                            +

                            "Commit early, commit often" they say, so:

                            +
                            $ git add README.md
                            +$ git commit -m "Initial commit"
                            +
                            +

                            2. Getting Copies

                            +

                            Data has an annoying tendency to get changed. +You don't want it changing out from under you +while you're in the middle of something. +So the next thing to do is get a copy of the data +and store it locally. +If it's big, you can store a compressed copy. +If it's too big to fit on your local machine, +well keep the best notes you can of how to get to the data, +and what operations you're doing on it.

                            +

                            I'm going to make a cache directory +and store all my "upstream" data there. +I'm going to fetch the data and that's it -- +I'm not going to edit these files. +When I want to change the data I'll make copies in another directory. +I don't want git to track the cached data, +so I'll add /cache/ to .gitignore +and tell git to track that. +Then I'll use curl to download the file.

                            +
                            $ mkdir cache
                            +$ echo "/cache/" >> .gitignore
                            +$ git add .gitignore
                            +$ git commit -m "Ignore /cache/ directory"
                            +$ cd cache
                            +$ curl -LO "https://github.com/jamesaoverton/obook/raw/master/03-RDF/data.csv"
                            +$ ls
                            +data.csv
                            +$ cd ..
                            +$ ls -a
                            +.gitignore data README.md
                            +
                            +

                            3. Getting My Bearings

                            +

                            The first thing to do is look at the data. +In this case I have just one table in CSV format, +so I can use any number of tools to open the file and look around. +I bet the majority of people would reach for Excel. +My (idiosyncratic) preference is VisiData.

                            +

                            What am I looking for? +A bunch of different things:

                            +
                              +
                            • what do the rows represent?
                            • +
                            • what columns do I have?
                            • +
                            • for each column, what sorts of values do I have?
                            • +
                            +

                            In my README file I'll make a list of the columns +like this:

                            +
                            - datetime
                            +- investigator
                            +- subject
                            +- species
                            +- strain
                            +- sex
                            +- group
                            +- protocol
                            +- organ
                            +- disease
                            +- qualifier
                            +- comment
                            +
                            +

                            Then I'll make some notes for myself:

                            +
                            - datetime: American-style dates, D/M/Y or M/D/Y?
                            +- investigator: initials, ORCID?
                            +- subject: integer ID
                            +- species: common name for species, NCBITaxon?
                            +- strain: some sort of code with letters, numbers, spaces, some punctuation
                            +- sex: string female/male
                            +- group: integer ID
                            +- protocol: string, OBI?
                            +- organ: string, UBERON?
                            +- disease: string, DO/MONDO?
                            +- qualifier: string, PATO?
                            +- comment: ???
                            +
                            +

                            You can see that I'm trying to figure out what's in each column. +I'm also thinking ahead to OBO ontologies that I know of +that may have terms that I can use for each column.

                            +

                            4. Getting Structured

                            +

                            In the end, I want to have nice, clean Linked Data. +But I don't have to get there in one giant leap. +Instead I'll take a bunch of small, incremental steps.

                            +

                            There's lots of tools I can use, +but this time I'll use SQLite.

                            +

                            First I'll set up some more directories. +I'll create a build directory +where I'll store temporary files. +I don't want git to track this directory, +so I'll add it to .gitignore.

                            +
                            $ mkdir build/
                            +$ echo "/build/" >> .gitignore
                            +$ git add .gitignore
                            +$ git commit -m "Ignore /build/ directory"
                            +
                            +

                            I'll also add a src directory to store code. +I do want to track src with git.

                            +
                            $ mkdir src
                            +$ kak src/data.sql
                            +
                            +

                            In src/data.sql I'll add just enough to import build/data.csv:

                            +
                            -- import build/data.csv
                            +.mode csv
                            +.import build/data.csv data_csv
                            +
                            +

                            This will create a build/data.db file +and import build/data.csv into a data_csv table. +Does it work?

                            +
                            $ sqlite3 build/data.db < src/data.sql
                            +$ sqlite3 build/data.db <<< "SELECT * FROM data_csv LIMIT 1;"
                            +2014-01-01 10:21:00-0500|JAO|12|RAT|F 344/N|FEMALE|1|HISTOPATHOLOGY|LUNG|ADENOCARCINOMA|SEVERE|
                            +
                            +

                            Nice!

                            +

                            Note that I didn't even specify a schema for data_csv. +It uses the first row as the column names, +and the type of every column is TEXT. +Here's the schema I end up with:

                            +
                            $ sqlite3 build/data.db <<< ".schema data_csv"
                            +CREATE TABLE data_csv(
                            +  "datetime" TEXT,
                            +  "investigator" TEXT,
                            +  "subject" TEXT,
                            +  "species" TEXT,
                            +  "strain" TEXT,
                            +  "sex" TEXT,
                            +  "group" TEXT,
                            +  "protocol" TEXT,
                            +  "organ" TEXT,
                            +  "disease" TEXT,
                            +  "qualifier" TEXT,
                            +  "comment" TEXT
                            +);
                            +
                            +

                            I'm going to want to update src/data.sql +then rebuild the database over and over. +It's small, so this will only take a second. +If it was big, +then I would copy a subset into build/data.csv for now +so that I the script still runs in a second or two +and I can iterate quickly. +I'll write a src/build.sh script to make life a little easier:

                            +
                            #!/bin/sh
                            +
                            +rm -f build/*
                            +cp cache/data.csv build/data.csv
                            +sqlite3 build/data.db < src/data.sql
                            +
                            +

                            Does it work?

                            +
                            $ sh src/build.sh
                            +
                            +

                            Nice! +Time to update the README:

                            +
                            ## Requirements
                            +
                            +- [SQLite3](https://sqlite.org/index.html)
                            +
                            +## Usage
                            +
                            +Run `sh src/build.sh`
                            +
                            +

                            I'll commit my work in progress:

                            +
                            $ git add src/data.sql src/build.sh
                            +$ git add --update
                            +$ git commit -m "Load data.csv into SQLite"
                            +
                            +

                            Now I have a script +that executes a SQL file +that loads the source data into a new database. +I'll modify the src/data.sql file +in a series of small steps +until it has the structure that I want.

                            +

                            5. Getting Clean

                            +

                            In the real world, data is always a mess. +It takes real work to clean it up. +And really, it's almost never perfectly clean.

                            +

                            It's important to recognize that cleaning data has diminishing returns. +There's low hanging fruit: +easy to clean, often with code, and bringing big benefits. +Then there's tough stuff +that requires an expert to work through the details, +row by row.

                            +

                            The first thing to do is figure out the schema you want. +I'll create a new data table +and start with the default schema from data_csv. +Notice that in the default schema all the column names are quoted. +That's kind of annoying. +But when I remove the quotation marks +I realize that one of the column names is "datetime", +but datetime is a keyword in SQLite! +You can't use it as a column name without quoting. +I'll rename it to "assay_datetime". +I have the same problem with "group". +I'll rename "group" to "group_id" +and "subject" to "subject_id". +The rest of the column names seem fine.

                            +

                            I want "assay_datetime" to be in standard ISO datetime format, +but SQLite stores these as TEXT. +The "subject" and "group" columns are currently integers, +but I plan to make them into URIs to CURIEs. +So everything will still be TEXT.

                            +
                            CREATE TABLE data(
                            +  assay_datetime TEXT,
                            +  investigator TEXT,
                            +  subject_id TEXT,
                            +  species TEXT,
                            +  strain TEXT,
                            +  sex TEXT,
                            +  group_id TEXT,
                            +  protocol TEXT,
                            +  organ TEXT,
                            +  disease TEXT,
                            +  qualifier TEXT,
                            +  comment TEXT
                            +);
                            +
                            +

                            The dates currently look like "1/1/14 10:21 AM". +Say I know that they were done on Eastern Standard Time. +How do I convert to ISO dates like "2014-01-01 10:21:00-0500"? +Well SQLite isn't the right tool for this. +The Unix date command does a nice job, though:

                            +
                            $ date -d "1/1/14 10:21 AM EST" +"%Y-%m-%d %H:%M:%S%z"
                            +2014-01-01 10:21:00-0500
                            +
                            +

                            I can run that over each line of the file using awk. +So I update the src/build.sh +to rework the build/data.csv before I import:

                            +
                            #!/bin/sh
                            +
                            +rm -f build/*
                            +
                            +head -n1 cache/data.csv > build/data.csv
                            +tail -n+2 cache/data.csv \
                            +| awk 'BEGIN{FS=","; OFS=","} {
                            +  "date -d \""$1" EST\" +\"%Y-%m-%d %H:%M:%S%z\"" | getline $1;
                            +  print $0
                            +}' \
                            +>> build/data.csv
                            +
                            +sqlite3 build/data.db < src/data.sql
                            +
                            +

                            One more problem I could clean up +is that "JO" should really be "JAO" -- +that's just a typo, +and they should both refer to James A. Overton. +I could make that change in src/build.sh, +but I'll do it in src/data.sql instead. +I'll write a query to copy all the rows of data_csv into data +and then I'll update data with some fixes.

                            +
                            -- copy from data_csv to data
                            +INSERT INTO data SELECT * FROM data_csv;
                            +
                            +-- clean data
                            +UPDATE data SET investigator="JAO" WHERE investigator="JO";
                            +
                            +

                            Honestly, it took me quite a while to write that awk command. +It's a very powerful tool, +but I don't use it enough to remember how it works. +You might prefer to write yourself a Python script, or some R code. +You could use that instead of this SQL UPDATE as well. +I just wanted to show you two of the thousands of ways to do this. +If there's a lot of replacements like "JO", +then you might also consider listing them in another table +that you can read into your script.

                            +

                            The important part is to automate your cleaning!

                            +

                            Why didn't I just edit cache/data.csv in Excel? +In step 2 I saved a copy of the data +because I didn't want it to change while I was working on it, +but I do expect it to change! +By automating the cleaning process, +I should be able to just update cache/data.csv +run everything again, +and the fixes will be applied again. +I don't want to do all this work manually +every time the upstream data is updated.

                            +

                            I'll commit my work in progress:

                            +
                            $ git add --update
                            +$ git commit -m "Start cleaning data"
                            +
                            +

                            Cleaning can take a lot of work. +This is example table is pretty clean already. +The next hard part is sorting out your terminology.

                            +

                            6. Getting Connected

                            +

                            It's pretty easy to convert a table structure to triples. +The hard part is converting the table contents. +There are some identifiers in the table that would be better as URLs, +and there's a bunch of terminology that would be better +if it was linked to an ontology or other system.

                            +

                            I'll start with the identifiers that are local to this data: +subject_id and group_id. +I can convert them to URLs by defining a prefix +and then just using that prefix. +I'll use string concatenation to update the table:

                            +
                            -- update subject and groupd IDs
                            +UPDATE data SET subject_id='ex:subject-' || subject_id;
                            +UPDATE data SET group_id='ex:group-' || group_id;
                            +
                            +

                            Now I'll check my work:

                            +
                            $ sqlite3 build/data.db <<< "SELECT * FROM data_csv LIMIT 1;"
                            +2014-01-01 10:21:00-0500|JAO|ex:subject-12|RAT|F 344/N|FEMALE|ex:group-1|HISTOPATHOLOGY|LUNG|ADENOCARCINOMA|SEVERE|
                            +
                            +

                            I should take a moment to tell you, +that while I was writing the Turtle conversion code later in this essay, +I had to come back here and change these identifiers. +The thing is that Turtle is often more strict than I expect +about identifier syntax. +Turtle identifiers look like +CURIEs, +but they're actually +QNames. +CURIEs are pretty much just just URLs shortened with a prefix, +so almost anything goes. +QNames come from XML, +and Turtle identifiers have to be valid XML element names.

                            +

                            I always remember that I need to stick to alphanumeric characters, +and that I have to replace whitespace and punctuation with a - or _. +I didn't remember that the local part (aka "suffix", aka "NCName") +can't start with a digit. +So I tried to use "subject:12" and "group:1" as my identifiers. +That worked fine until I generated Turtle. +The Turtle looked fine, +so it took me quite a while to figure out why +it looked very wrong when I converted it into RDXML format.

                            +

                            This kind of thing happens to me all the time. +I'm almost always using a mixture of technologies +based on different sets of assumptions, +and there are always things that don't line up. +That's why I like to work in small iterations, +checking my work as I go +(preferrably with automated tests), +and keeping everything in version control. +When I need to make a change like this one, +I just circle back and iterate again.

                            +

                            The next thing is to tackle the terminology. +First I'll just make a list of the terms I'm using +from the relevant columns in build/term.tsv:

                            +

                            ```sh #collect +$ sqlite3 build/data.db << EOF > build/term.tsv +SELECT investigator FROM data +UNION SELECT species FROM data +UNION SELECT strain FROM data +UNION SELECT strain FROM data +UNION SELECT sex FROM data +UNION SELECT protocol FROM data +UNION SELECT organ FROM data +UNION SELECT disease FROM data +UNION SELECT qualifier FROM data; +EOF +

                            It's a lot of work to go through all those terms
                            +and find good ontology terms.
                            +I'm going to do that hard work for you
                            +(just this once!)
                            +so we can keep moving.
                            +I'll add this table to `src/term.tsv`
                            +
                            +| id                        | code           | label              |
                            +| ------------------------- | -------------- | ------------------ |
                            +| obo:NCBITaxon_10116       | RAT            | Rattus norvegicus  |
                            +| obo:NCBITaxon_10090       | MOUSE          | Mus musculus       |
                            +| ex:F344N                  | F 344/N        | F 344/N            |
                            +| ex:B6C3F1                 | B6C3F1         | B6C3F1             |
                            +| obo:PATO_0000383          | FEMALE         | female             |
                            +| obo:PATO_0000384          | MALE           | male               |
                            +| obo:OBI_0600020           | HISTOPATHOLOGY | histology          |
                            +| obo:UBERON_0002048        | LUNG           | lung               |
                            +| obo:UBERON_0007827        | NOSE           | external nose      |
                            +| obo:UBERON_0001235        | ADRENAL CORTEX | adrenal cortex     |
                            +| obo:MPATH_268             | ADENOCARCINOMA | adenocarcinoma     |
                            +| obo:MPATH_212             | INFLAMMATION   | inflammation       |
                            +| obo:MPATH_4               | NECROSIS       | necrosis           |
                            +| obo:PATO_0000396          | SEVERE         | severe intensity   |
                            +| obo:PATO_0000394          | MILD           | mild intensity     |
                            +| obo:PATO_0000395          | MODERATE       | moderate intensity |
                            +| orcid:0000-0001-5139-5557 | JAO            | James A. Overton   |
                            +
                            +And I'll add these prefixes to `src/prefix.tsv`:
                            +
                            +| prefix  | base                                        |
                            +| ------- | ------------------------------------------- |
                            +| rdf     | http://www.w3.org/1999/02/22-rdf-syntax-ns# |
                            +| rdfs    | http://www.w3.org/2000/01/rdf-schema#       |
                            +| xsd     | http://www.w3.org/2001/XMLSchema#           |
                            +| owl     | http://www.w3.org/2002/07/owl#              |
                            +| obo     | http://purl.obolibrary.org/obo/             |
                            +| orcid   | http://orcid.org/                           |
                            +| ex      | https://example.com/                        |
                            +| subject | https://example.com/subject/                |
                            +| group   | https://example.com/group/                  |
                            +
                            +Now I can import these tables into SQL
                            +and use the term table as a FOREIGN KEY constraint
                            +on data:
                            +
                            +```sql
                            +.mode tabs
                            +
                            +CREATE TABLE prefix (
                            +  prefix TEXT PRIMARY KEY,
                            +  base TEXT UNIQUE
                            +);
                            +.import --skip 1 src/prefix.tsv prefix
                            +
                            +CREATE TABLE term (
                            +  id TEXT PRIMARY KEY,
                            +  code TEXT UNIQUE,
                            +  label TEXT UNIQUE
                            +);
                            +.import --skip 1 src/term.tsv term
                            +
                            +CREATE TABLE data(
                            +  assay_datetime TEXT,
                            +  investigator TEXT,
                            +  subject_id TEXT,
                            +  species TEXT,
                            +  strain TEXT,
                            +  sex TEXT,
                            +  group_id TEXT,
                            +  protocol TEXT,
                            +  organ TEXT,
                            +  disease TEXT,
                            +  qualifier TEXT,
                            +  comment TEXT,
                            +  FOREIGN KEY(investigator) REFERENCES term(investigator),
                            +  FOREIGN KEY(species) REFERENCES term(species),
                            +  FOREIGN KEY(strain) REFERENCES term(strain),
                            +  FOREIGN KEY(sex) REFERENCES term(sex),
                            +  FOREIGN KEY(protocol) REFERENCES term(protocol),
                            +  FOREIGN KEY(organ) REFERENCES term(organ),
                            +  FOREIGN KEY(disease) REFERENCES term(disease),
                            +  FOREIGN KEY(qualifier) REFERENCES term(qualifier)
                            +);
                            +
                            +-- copy from data_csv to data
                            +INSERT INTO data SELECT * FROM data_csv;
                            +
                            +-- clean data
                            +UPDATE data SET investigator='JAO' WHERE investigator='JO';
                            +
                            +-- update subject and groupd IDs
                            +UPDATE data SET subject_id='ex:subject-' || subject_id;
                            +UPDATE data SET group_id='ex:group-' || group_id;
                            +

                            +

                            I'll update the README:

                            +
                            See `src/` for:
                            +
                            +- `prefix.tsv`: shared prefixes
                            +- `term.tsv`: terminology
                            +
                            +

                            I'll commit my work in progress:

                            +
                            $ git add src/prefix.tsv src/term.tsv
                            +$ git add --update
                            +$ git commit -m "Add and apply prefix and term tables"
                            +
                            +

                            Now all the terms are linked to controlled vocabularies +of one sort or another. +If I want to see the IDs for those links instead of the "codes" +I can define a VIEW:

                            +
                            CREATE VIEW linked_data_id AS
                            +SELECT assay_datetime,
                            +  investigator_term.id AS investigator,
                            +  subject_id,
                            +  species_term.id AS species,
                            +  strain_term.id AS strain,
                            +  sex_term.id AS sex,
                            +  group_id,
                            +  protocol_term.id AS protocol,
                            +  organ_term.id AS organ,
                            +  disease_term.id AS disease,
                            +  qualifier_term.id AS qualifier
                            +FROM data
                            +JOIN term as investigator_term ON data.investigator = investigator_term.code
                            +JOIN term as species_term ON data.species = species_term.code
                            +JOIN term as strain_term ON data.strain = strain_term.code
                            +JOIN term as sex_term ON data.sex = sex_term.code
                            +JOIN term as protocol_term ON data.protocol = protocol_term.code
                            +JOIN term as organ_term ON data.organ = organ_term.code
                            +JOIN term as disease_term ON data.disease = disease_term.code
                            +JOIN term as qualifier_term ON data.qualifier = qualifier_term.code;
                            +
                            +

                            I'll check:

                            +
                            $ sqlite3 build/data.db <<< "SELECT * FROM linked_ids LIMIT 1;"
                            +2014-01-01 10:21:00-0500|orcid:0000-0001-5139-5557|ex:subject-12|obo:NCBITaxon_10116|ex:F344N|obo:PATO_0000383|ex:group-1|obo:OBI_0600020|obo:UBERON_0002048|obo:MPATH_268|obo:PATO_0000396
                            +
                            +

                            I can also define a similar view for their "official" labels:

                            +
                            CREATE VIEW linked_data_label AS
                            +SELECT assay_datetime,
                            +  investigator_term.label AS investigator,
                            +  subject_id,
                            +  species_term.label AS species,
                            +  strain_term.label AS strain,
                            +  sex_term.label AS sex,
                            +  group_id,
                            +  protocol_term.label AS protocol,
                            +  organ_term.label AS organ,
                            +  disease_term.label AS disease,
                            +  qualifier_term.label AS qualifier
                            +FROM data
                            +JOIN term as investigator_term ON data.investigator = investigator_term.code
                            +JOIN term as species_term ON data.species = species_term.code
                            +JOIN term as strain_term ON data.strain = strain_term.code
                            +JOIN term as sex_term ON data.sex = sex_term.code
                            +JOIN term as protocol_term ON data.protocol = protocol_term.code
                            +JOIN term as organ_term ON data.organ = organ_term.code
                            +JOIN term as disease_term ON data.disease = disease_term.code
                            +JOIN term as qualifier_term ON data.qualifier = qualifier_term.code;
                            +
                            +

                            I'll check:

                            +
                            $ sqlite3 build/data.db <<< "SELECT * FROM linked_data_label LIMIT 1;"
                            +2014-01-01 10:21:00-0500|James A. Overton|ex:subject-12|Rattus norvegicus|F 344/N|female|ex:group-1|histology|lung|adenocarcinoma|severe intensity
                            +
                            +

                            I'll commit my work in progress:

                            +
                            $ git add --update
                            +$ git commit -m "Add linked_data tables"
                            +
                            +

                            Now the tables use URLs and is connected to ontologies and stuff. +But are we Linked yet?

                            +

                            7. Getting Triples

                            +

                            SQL tables aren't an official Linked Data format. +Of all the RDF formats, I prefer Turtle. +It's tedious but not difficult to get Turtle out of SQL. +These query do what I need them to do, +but note that if the literal data contained quotation marks +(for instance) +then I'd have to do more work to escape those. +First I create a triple table:

                            +
                            CREATE TABLE triple (
                            +  subject TEXT,
                            +  predicate TEXT,
                            +  object TEXT,
                            +  literal INTEGER -- 0 for object IRI, 1 for object literal
                            +);
                            +
                            +-- create triples from term table
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT id, 'rdfs:label', label, 1
                            +FROM term;
                            +
                            +-- create triples from data table
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-assay_datetime', assay_datetime, 1
                            +FROM data;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-investigator', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.investigator = term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-subject_id', subject_id, 0
                            +FROM data;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-species', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.species = term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-strain', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.strain = term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-sex', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.sex = term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-group_id', group_id, 0
                            +FROM data;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-protocol', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.protocol = term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-organ',term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.organ= term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-disease', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.disease = term.code;
                            +
                            +INSERT INTO triple(subject, predicate, object, literal)
                            +SELECT 'ex:assay-' || data.rowid, 'ex:column-qualifier', term.id, 0
                            +FROM data
                            +JOIN term AS term ON data.qualifier = term.code;
                            +
                            +

                            Then I can turn triples into Turtle +using string concatenation:

                            +
                            SELECT '@prefix ' || prefix || ': <' || base || '> .'
                            +FROM prefix
                            +UNION ALL
                            +SELECT ''
                            +UNION ALL
                            +SELECT subject || ' ' ||
                            +  predicate || ' ' ||
                            +  CASE literal
                            +    WHEN 1 THEN '"' || object || '"'
                            +    ELSE object
                            +  END
                            +  || ' . '
                            +FROM triple;
                            +
                            +

                            I can add this to the src/build.sh:

                            +
                            sqlite3 build/data.db < src/turtle.sql > build/data.ttl
                            +
                            +

                            Here's just a bit of that build/data.ttl file:

                            +
                            @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
                            +
                            +orcid:0000-0001-5139-5557 rdfs:label "James A. Overton" .
                            +assay:1 column:assay_datetime "2014-01-01 10:21:00-0500"^^xsd:datetime .
                            +assay:1 column:investigator orcid:0000-0001-5139-5557 .
                            +
                            +

                            SQL is not a particularly expressive language. +Building the triple table is straightforward but verbose. +I could have done the same thing with much less Python code. +(Or I could have been clever and generated some SQL to execute!)

                            +

                            I'll commit my work in progress:

                            +
                            $ git add src/turtle.sql
                            +$ git add --update
                            +$ git commit -m "Convert to Turtle"
                            +
                            +

                            So technically I have a Turtle file. +Linked Data! +Right? +Well, it's kind of "flat". +It still looks more like a table than a graph.

                            +

                            8. Getting Linked

                            +

                            The table I started with is very much focused on the data: +there was some sort of assay done, +and this is the information that someone recorded about it. +The Turtle I just ended up with is basically the same.

                            +

                            Other people may have assay data. +They may have tables that they converted into Turtle. +So can I just merge them? +Technically yes: +I can put all these triples in one graph together. +But I'll still just have "flat" chunks of data +representing rows +sitting next to other rows, +without really linking together.

                            +

                            The next thing I would do with this data +is reorganized it based on the thing it's talking about. +I know that:

                            +
                              +
                            • there was an assay
                            • +
                            • the assay was performed at a certain time, + using a certain protocol
                            • +
                            • there was a person who performed the assay
                            • +
                            • there was a subject animal of some species, strain, and sex
                            • +
                            • the subject animal belonged to a study group
                            • +
                            • the subject animal had some organs
                            • +
                            • the assay resulted in some measurements
                            • +
                            +

                            Most of these are things that I could point to in the world, +or could have pointed to +if I was in the right place at the right time.

                            +

                            By thinking about these things, +I'm stepping beyond what it was convenient for someone to record, +and thinking about what happened in the world. +If somebody else has some assay data, +then they might have recorded it differently +for whatever reason, +and so it wouldn't line up with my rows. +I'm trying my best to use the same terms for the same things. +I also want to use the same "shapes" for the same things. +When trying to come to an agreement about what is connected to what, +life is easier if I can point to the things I want to talk about: +"See, here is the person, and the mouse came from here, and he did this and this."

                            +

                            I could model the data in SQL +by breaking the big table into smaller tables. +I could have tables for:

                            +
                              +
                            • person
                            • +
                            • group
                            • +
                            • subject: species, strain, sex, group
                            • +
                            • assay: date, investigator, subject, protocol
                            • +
                            • measurement: assay, organ, disease, qualifier
                            • +
                            +

                            Then I would convert each table to triples more carefully. +That's a good idea. +Actually it's a better idea than what I'm about to do...

                            +

                            Since we're getting near the end, +I'm going to show you how you can do that modelling in SPARQL. +SPARQL has a CONSTRUCT operation that you use to build triples. +There's lots of tools that I could use to run SPARQL +but I'll use ROBOT. +I'll start with the "flat" triples in build/data.ttl, +select them with my WHERE clause, +then CONSTRUCT better triples, +and save them in build/model.ttl.

                            +
                            PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
                            +PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
                            +PREFIX owl: <http://www.w3.org/2002/07/owl#>
                            +PREFIX obo: <http://purl.obolibrary.org/obo/>
                            +PREFIX ex: <https://example.com/>
                            +
                            +CONSTRUCT {
                            +  ?group
                            +    rdfs:label      ?group_label .
                            +  ?subject
                            +    rdf:type        ?species ;
                            +    rdfs:label      ?subject_label ;
                            +    ex:strain       ?strain ;
                            +    obo:RO_0000086  ?sex ;         # has quality
                            +    ex:group        ?group .
                            +  ?sex
                            +    rdf:type        ?sex_type ;
                            +    rdfs:label      ?sex_label .
                            +  ?organ
                            +    rdf:type        ?organ_type ;
                            +    rdfs:label      ?organ_label ;
                            +    obo:BFO_0000050 ?subject .     # part of
                            +  ?assay
                            +    rdf:type        ?assay_type ;
                            +    rdfs:label      ?assay_label ;
                            +    obo:OBI_0000293 ?subject ;     # has specified input
                            +    obo:IAO_0000136 ?organ .       # is about
                            +}
                            +WHERE {
                            +  ?subject_row
                            +    ex:column-assay_datetime ?datetime ;
                            +    ex:column-investigator   ?investigator ;
                            +    ex:column-subject_id     ?subject ;
                            +    ex:column-species        ?species ;
                            +    ex:column-sex            ?sex_type ;
                            +    ex:column-group_id       ?group ;
                            +    ex:column-protocol       ?assay_type ;
                            +    ex:column-organ          ?organ_type ;
                            +    ex:column-disease        ?disease ;
                            +    ex:column-qualifier      ?qualifier .
                            +
                            +  ?assay_type
                            +    rdfs:label ?assay_type_label .
                            +  ?sex_type
                            +    rdfs:label ?sex_type_label .
                            +  ?organ_type
                            +    rdfs:label ?organ_type_label .
                            +
                            +  BIND (URI(CONCAT(STR(?subject), "-assay")) AS ?assay)
                            +  BIND (URI(CONCAT(STR(?subject), "-sex"))   AS ?sex)
                            +  BIND (URI(CONCAT(STR(?subject), "-organ")) AS ?organ)
                            +  BIND (CONCAT("subject ", REPLACE(STR(?subject), "^.*-", "")) AS ?subject_label)
                            +  BIND (CONCAT("group ", REPLACE(STR(?group), "^.*-", ""))     AS ?group_label)
                            +  BIND (CONCAT(?subject_label, " ", ?assay_type_label)    AS ?assay_label)
                            +  BIND (CONCAT(?subject_label, " sex: ", ?sex_type_label) AS ?sex_label)
                            +  BIND (CONCAT(?subject_label, " ", ?organ_type_label)    AS ?organ_label)
                            +}
                            +
                            +

                            I can add this to the src/build.sh:

                            +
                            java -jar robot.jar query \
                            +  --input build/data.ttl \
                            +  --query src/model.rq build/model.ttl
                            +
                            +

                            Then I get build/model.ttl that looks (in part) like this:

                            +
                            ex:subject-31  a        obo:NCBITaxon_10090 ;
                            +        rdfs:label      "subject 31" ;
                            +        obo:RO_0000086  ex:subject-31-sex ;
                            +        ex:group        ex:group-2 .
                            +
                            +ex:group-2  rdfs:label  "group 2" .
                            +
                            +

                            Now that's what I call Linked Data!

                            +

                            I'll update the README:

                            +
                            ## Modelling
                            +
                            +The data refers to:
                            +
                            +- investigator
                            +- subject
                            +- group
                            +- assay
                            +- measurement data
                            +  - subject organ
                            +  - disease
                            +
                            +TODO: A pretty diagram.
                            +
                            +

                            I'll commit my work in progress:

                            +
                            $ git add src/model.rq
                            +$ git add --update
                            +$ git commit -m "Build model.ttl"
                            +
                            +

                            9. Getting It Done

                            +

                            That was a lot of work for a small table. +And I did all the hard work of mapping +the terminology to ontology terms for you!

                            +

                            There's lots more I can do. +The SPARQL is just one big chunk, +but it would be better in smaller pieces. +The modelling isn't all that great yet. +Before changing that +I want to run it past the boss +and see what she thinks.

                            +

                            It's getting close to the end of the day. +Before I quit I should update the README, +clean up anything that's no longer relevant or correct, +and make any necessary notes to my future self:

                            +
                            $ git add --update
                            +$ git commit -m "Update README"
                            +$ quit
                            +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/linking_data/data.csv b/tutorial/linking_data/data.csv new file mode 100644 index 000000000..20cc1f461 --- /dev/null +++ b/tutorial/linking_data/data.csv @@ -0,0 +1,4 @@ +datetime,investigator,subject,species,strain,sex,group,protocol,organ,disease,qualifier,comment +1/1/14 10:21 AM,JAO,12,RAT,F 344/N,FEMALE,1,HISTOPATHOLOGY,LUNG,ADENOCARCINOMA,SEVERE, +1/1/14 10:30 AM,JAO,31,MOUSE,B6C3F1,MALE,2,HISTOPATHOLOGY,NOSE,INFLAMMATION,MILD, +1/1/14 10:45 AM,JAO,45,RAT,F 344/N,MALE,1,HISTOPATHOLOGY,ADRENAL CORTEX,NECROSIS,MODERATE, \ No newline at end of file diff --git a/tutorial/managing-dynamic-imports-odk/index.html b/tutorial/managing-dynamic-imports-odk/index.html new file mode 100644 index 000000000..f847cc987 --- /dev/null +++ b/tutorial/managing-dynamic-imports-odk/index.html @@ -0,0 +1,3653 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Managing imports - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Managing Dynamic Imports with the Ontology Development Kit

                            +

                            In this tutorial, we discuss the general workflow of managing dynamic imports, i.e. importing terms from other ontologies which can be kept up to date.

                            +

                            Tutorial

                            +

                            Follow instructions for the PATO dynamic import process here.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/managing-ontology-project/index.html b/tutorial/managing-ontology-project/index.html new file mode 100644 index 000000000..147d5f531 --- /dev/null +++ b/tutorial/managing-ontology-project/index.html @@ -0,0 +1,3777 @@ + + + + + + + + + + + + + + + + + + + + + + + + Managing OBO ontology projects - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Tutorial on Managing OBO Ontology Projects

                            +

                            This tutorial is not about editing ontologies and managing the evolution of its content (aka ontology curation), but the general process of managing an ontology project overall. In this lesson, we will cover the following:

                            +
                              +
                            1. How to effectively manage an ontology project using GitHub projects and teams
                            2. +
                            3. How to coordinate the evolution of ontologies across projects and grants
                            4. +
                            +

                            It is important to understand that the following is just one good way of doing project management for OBO ontologies, and most projects will do it slightly differently. We do however believe that thinking about your project management process and the roles involved will benefit your work in the long term, and hope that the following will help you as a starting point.

                            +

                            Roles in OBO Ontology project management activities

                            +
                              +
                            1. Ontology Editor (OE): manage the content of ontologies and interact with users
                            2. +
                            3. Principal Ontology Editor (POE): coordinate the curation activities and have always fixed hours assigned to the project.
                            4. +
                            5. Ontology Pipeline Developer (OPD): Manage the technical workflows around ontologies, such as release workflows, continuous integration and QC, and setting up data pipelines. Also helps with bulk editing activities.
                            6. +
                            7. Principal Investigators (PI): Manage the projects that fund ontology curation activities.
                            8. +
                            +

                            For an effective management of an ontology, the following criteria are recommended:

                            +
                              +
                            1. There should be at least one Principal Ontology Editor for every ontology project. The importance is not whether this editor (or sometimes called 'ontology curator') has a specific number of hours per week allocated to the project (although based on our experience, 1 day per week is minimum), but whether the editor has a sense of ownership, i.e. they understand that they are the primary responsible person for maintaining the ontology moving forward. Because of potential grant overlapping issues, we recommend to have at least 1 Principal Ontology Editor for every grant/funded project that has a stake in the ontology.
                            2. +
                            3. Every effective ontology needs at least a few hours per week from an Ontology Pipeline Developer (OPD). More on that role later. The OPD does not always have as strong a sense of ownership of the ontology project, but typically has a strong sense of responsibility to members of the curation team.
                            4. +
                            5. There should be separate meetings for curation and technical activities - both problems are hard, and need different team members being present. We recommend at least monthly technical and biweekly curation calls, but for many of the most effective ontology projects we manage, weekly technical and weekly curation calls are normal.
                            6. +
                            +

                            Without the above minimum criteria, the following recommendations will be very hard to implement.

                            +

                            The Project Management Toolbox

                            +

                            We make use of three tools in the following recommendation:

                            +

                            Project boards: +Project boards, sometimes referred to as Kanban boards, GitHub boards or agile boards, are a great way to organise outstanding tickets and help maintain a clear overview of what work needs to be done. They are usually realised with either GitHub projects or ZenHub. If you have not worked with project boards before, we highly recommend watching a quick tutorial on Youtube, such as:

                            + + +

                            GitHub teams. +GitHub teams, alongside with organisations, are a powerfull too to organise collaborative workflows on GitHub. They allow you to communicate and organise permissions for editing your ontology in a transparent way. You can get a sense of GitHub teams by watching one of the the numerous tutorials on GitHub, such as:

                            + + +

                            Markdown-based documentation system. +Writing great documentation is imperative for a sustainable project. Across many of our recent projects, were are using mkdocs, which we have also integrated with the Ontology Development Kit, but there are others to consider. We deeply recommend to complete a very short introduction to Markdown, this tutorial on YouTube.

                            +

                            What do you need for your project?

                            +

                            Every ontology or group of related ontologies (sometimes it is easier to manage multiple ontologies at once, because their scope or technical workflows are quite uniform or they are heavily interrelated) should have:

                            +
                              +
                            1. at least two teams, an Editorial Team and a Technical Team, with clearly defined members. We recommend to create two teams on GitHub and keep their members always up to date (i.e. remove members that are not actively participating), but many of our projects merely maintain a "core team", which is a more liberal team containing everyone from stakeholders, principal investigators, editors and users (for managing write permissions see later in the "best practice" section) and listing the members of the Editorial and Technical Teams on a page in the documentation (example). Note that it is a good idea to be careful of who on your team has "admin" rights on your repo, so sometimes, a distinct "admin" team can be very helpful. Admins are allowed to do "dangerous" things like deleting the repository.
                            2. +
                            3. two distinct project boards. We recommend two distinct project boards, one for the Curation/Editorial Team, and one for the Technical Team. The details on how to design the boards is up to the respective teams, but we found a simple 4 stage board with sections for To Do (issues that are important but not urgent), Priority (issues that are important and urgent), In Progress (issues that are being worked on) and Under review (issues that need review). From years of experience with project boards, we recommend against the common practice of keeping a Backlog column (issues that are neither important nor urgent nor likely to be addressed in the next 6 months), nor a Done column (to keep track of closed issues) - they just clutter the view.
                            4. +
                            5. A documentation system (often realised using mkdocs in OBO projects) with a page listing the members of the team (example). This page should provide links to all related team pages from Github and their project boards, as well as a table listing all current team members with the following information:
                            6. +
                            7. Name
                            8. +
                            9. ORCiD
                            10. +
                            11. Funding Information
                            12. +
                            13. Allocated FTEs (0 if on volunteering basis)
                            14. +
                            15. Associated teams
                            16. +
                            17. Role
                            18. +
                            19. Responsibilities (What kind of issues can they be assigned to review? How are they involved in the Project?)
                            20. +
                            +

                            Responsibilities

                            +
                              +
                            1. Effective Ontology Pipeline Developers (OPDs) are extremely rare and are typically active across many different projects. Therefore their attention is scattered. Understanding and accepting this is key for the following points.
                            2. +
                            3. Principal Investigators explicitly assign target weekly hours for Ontology Editors and Ontology Pipeline Developers to the project. These should be captured on the documentation systems team page (see above).
                            4. +
                            5. The Ontology Editors are responsible for the entire Curation Team Board and the To Do and Priority columns of the Technical Team. The later is important: it is the job of the curation team to prioritise the technical issues. The Technical Team can add tickets to the To Do and Priority columns, but this usually happens only in response to a request from the Curation Team.
                            6. +
                            7. When the technical team meets, the Principal Ontology Editor(s) (POE) are present, i.e. the POEs are members of the technical team as well. They will help clarifying the Priority tickets. The Technical Team is responsible to
                            8. +
                            9. assign issues and reviewers among themselves (ideally, the reviewer should be decided at the same time the issue is assigned)
                            10. +
                            11. move issues from the Priority to the In Progress and later to the Done section.
                            12. +
                            13. communicate through the POE to the PIs when resources are insufficient to address Priority issues.
                            14. +
                            15. The Principal Ontology Editor is responsible for ensuring that new issues on the issue tracker are dealt with. Usually this happens in the following ways:
                            16. +
                            17. They ensure that each external issue (i.e. an issue from anyone outside the core team) is (a) responded to in a polite manner and (b) assigned to someone appropriate or politely rejected due to lack of resources.
                            18. +
                            19. They ensure that each internal issue is assigned to the person that made them. No issue should appear unassigned.
                            20. +
                            21. The ensure that pull requests are (a) assigned to someone to handle and (b) merged in a timely manner. Too many open PRs cause problems with conflicts.
                            22. +
                            +

                            Best Practices

                            +
                              +
                            • The To Do issues should first be moved to the Priority section before being addressed. This prevents focusing on easy to solve tickets in favour of important ones.
                            • +
                            • Even if Google Docs are used to manage team meetings, at the end of each meetings all open issues must be captured as GitHub tickets and placed in the appropriate box on the board. We recommend that Backlog items are not added at all to the board - if they ever become important, they tend to resurface all by themselves.
                            • +
                            • The single most important point of failure is the absence of an Principal Ontology Editor with a strong sense of ownership. This should be the projects priority to determine first.
                            • +
                            • All new members of the project should undergo an onboarding. It is a good idea to prepare walkthroughs of the project (as video or pages in the documentation system) covering everything from Curation to Technical and Project Management.
                            • +
                            • The Principal Ontology Editor responsible for dealing with external issues should be named explicitly on the team page.
                            • +
                            • We recommend the following practices for write permissions:
                            • +
                            • The main (formerly master) branch should be write protected with suitable rules. For example, requiring QC to pass and 1 approving review as a minimum.
                            • +
                            • The curation and technical teams are mainly for social organisation, they do not have to physically exist. However, having a small team with "admin rights" and a team (e.g. the core team mentioned above) with "write" rights greatly helps with organising the permissions in a transparent manner.
                            • +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/managing-ontology-releases-odk/index.html b/tutorial/managing-ontology-releases-odk/index.html new file mode 100644 index 000000000..0ddc261a3 --- /dev/null +++ b/tutorial/managing-ontology-releases-odk/index.html @@ -0,0 +1,3653 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Managing ontology releases - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Managing Ontology Releases with the Ontology Development Kit

                            +

                            In this tutorial, we discuss the general workflow of ontology releases.

                            +

                            Tutorial

                            +

                            Follow instructions for the PATO release process here.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/migrating-ontology-to-odk/index.html b/tutorial/migrating-ontology-to-odk/index.html new file mode 100644 index 000000000..1cb10b1b9 --- /dev/null +++ b/tutorial/migrating-ontology-to-odk/index.html @@ -0,0 +1,3605 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Migrating to ODK - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Migrating your old Ontology Release System to the Ontology Development Kit

                            +

                            Content TBP, recording exists on request.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/monarch-kg-neo4j-basics/index.html b/tutorial/monarch-kg-neo4j-basics/index.html new file mode 100644 index 000000000..a41803e0b --- /dev/null +++ b/tutorial/monarch-kg-neo4j-basics/index.html @@ -0,0 +1,4338 @@ + + + + + + + + + + + + + + + + + + + + + + + + Basic cypher on the Monarch Neo4j graph - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Neo4j tutorial

                            +

                            Running locally (your very own Monarch Graph)

                            +

                            The new Monarch Knowledge Graph has a more streamlined focus on the core Monarch data model, centering on Diseases, Phenotypes and Genes and the associations between them. This has the benefit of being a graph that can be build in 2 hours instead of 2 days, and that you can run locally on your laptop.

                            +
                            +

                            Note: As of the writing of this tutorial, (Feb 2023), the graph is just starting to move from its initial construction phrase into real use, and so there are still bugs to find. Some of which show up in this tutorial.

                            +
                            +

                            Check out the repository

                            +

                            https://github.com/monarch-initiative/monarch-neo4j

                            +

                            Download Data

                            + +

                            Set up the environment file

                            +

                            copy dot_env_template to .env and edit the values to look like:

                            +
                            # This Environment Variable file is referenced by the docker-compose.yaml build
                            +
                            +# Set this variable to '1' to trigger an initial loading of a Neo4j dump
                            +DO_LOAD=1
                            +
                            +# Name of Neo4j dump file to load, assumed to be accessed from within
                            +# the 'dumps' internal Volume path within the Docker container
                            +NEO4J_DUMP_FILENAME=monarch-kg.neo4j.dump
                            +
                            +

                            That should mean uncommenting DO_LOAD and NEO4j_DUMP_FILENAME

                            +

                            Optional Plugin Setup

                            +
                            You may wish to install additional plugins +

                            + +#### Download plugins + +* Download the [APOC plugin jar file](https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/4.4.0.13/apoc-4.4.0.13-all.jar) and put in the `plugins` directory + +* Download, the [GDS plugin](https://graphdatascience.ninja/neo4j-graph-data-science-2.3.0.zip), unzip the download and copy jar file to the `plugins` directory + +#### Environment setup + +In addition to the changes above to .env, you will need to uncomment the following lines in the .env file: + +

                            NEO4J_apoc_export_file_enabled=true
                            +NEO4J_apoc_import_file_enabled=true
                            +NEO4J_apoc_import_file_use__neo4j__config=true
                            +NEO4JLABS_PLUGINS=\[\"apoc\", \"graph-data-science\"\]
                            +
                            + +

                            +
                            + +

                            Tutorials

                            +

                            Monarch OBO training Tutorials

                            +

                            Querying the Monarch KG using Neo4J

                            + + +

                            Start Neo4j

                            +

                            On the command line, from the root of the monarch-neo4j repository you can launch the neo4j with:

                            +
                            docker-compose up
                            +
                            +

                            Querying

                            +

                            Return details for a single disease

                            +

                            Nodes in a cypher query are expressed with () and the basic form of a query is MATCH (n) RETURN n. To limit the results to just our disease of interest, we can restrict by a property, in this case the id property.

                            +
                            MATCH (d {id: 'MONDO:0007038'}) RETURN d
                            +
                            +

                            This returns a single bubble, but by exploring the controls just to the left of the returned query, you can see a json or table representation of the returned node.

                            +
                            {
                            +  "identity": 480388,
                            +  "labels": [
                            +    "biolink:Disease",
                            +    "biolink:NamedThing"
                            +  ],
                            +  "properties": {
                            +    "name": "Achoo syndrome",
                            +    "provided_by": [
                            +      "phenio_nodes"
                            +    ],
                            +    "id": "MONDO:0007038",
                            +    "category": [
                            +      "biolink:Disease"
                            +    ]
                            +  },
                            +  "elementId": "480388"
                            +}
                            +
                            +

                            Connections out from our disease

                            +

                            Clicking back to the graph view, you can expand to see direct connections out from the node by clicking on the node and then clicking on the graph icon. This will return all nodes connected to the disease by a single edge.

                            +
                            +

                            Tip: the node images may not be labeled the way you expect. Clicking on the node reveals a panel on the right, clicking on that node label at the top of the panel will reveal a pop-up that lets you pick which property is used as the caption in the graph view.

                            +
                            +

                            Querying for connections out from our disease

                            +

                            In cypher, nodes are represented by () and edges are represented by [] in the form of ()-[]-(), and your query is a little chance to express yourself with ascii art. To get the same results as the expanded graph view, you can query for any edge connecting to any node. Note that the query also asks for the connected node to be returned.

                            +
                            MATCH (d {id: 'MONDO:0007038'})-[]-(n) RETURN d, n
                            +
                            +

                            Expanding out further and restricting the relationship direction

                            +

                            It's possible to add another edge to the query to expand out further. In this case, we're adding a second edge to the query, and restricting the direction of the second edge to be outgoing. This will return all nodes connected to the disease by a single edge, and then all nodes connected to those nodes by a single outgoing edge. It's important to note that without limiting the direction of the association, this query will traverse up, and then back down the subclass tree.

                            +
                            MATCH (d {id: 'MONDO:0007038'})-[]->(n)-[]->(m) RETURN d,n,m
                            +
                            +

                            Exploring the graph schema

                            +

                            Sometimes, we don't know what kind of questions to ask without seeing the shape of the data. Neo4j provides a graph representation of the schema by calling a procedure

                            +
                            CALL db.schema.visualization
                            +
                            +

                            If you tug on nodes and zoom, you may find useful information, but it's not a practical way to explore the schema.

                            +

                            What's connected to a gene?

                            +

                            We can explore the kinds of connections available for a given category of node. Using property restriction again, but this time instead of restricting by the ID, we'll restrict by the category. Also, instead of returning nodes themselves, we'll return the categories of those nodes.

                            +
                            MATCH (g:`biolink:Gene`)-[]->(n) RETURN DISTINCT labels(n)
                            +
                            +
                            +

                            Tip: the DISTINCT keyword is used to remove duplicate results. In this case, we're only interested in the unique categories of nodes connected to genes.

                            +
                            +

                            Also, how is it connected?

                            +

                            Expanding on the query above, we can also return the type of relationship connecting the gene to the node.

                            +
                            MATCH (g:`biolink:Gene`)-[rel]->(n) RETURN DISTINCT type(rel), labels(n)
                            +
                            +

                            Which returns tabular data like:

                            +
                            ╒════════════════════════════════════════════════════╤═══════════════════════════════════════════════════════════╕
                            +│"type(rel)"                                         │"labels(n)"                                                │
                            +╞════════════════════════════════════════════════════╪═══════════════════════════════════════════════════════════╡
                            +│"biolink:located_in"                                │["biolink:NamedThing","biolink:CellularComponent"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:part_of"                                   │["biolink:NamedThing","biolink:MacromolecularComplexMixin"]│
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_or_within"                │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:enables"                                   │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:actively_involved_in"                      │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:colocalizes_with"                          │["biolink:NamedThing","biolink:CellularComponent"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:active_in"                                 │["biolink:NamedThing","biolink:CellularComponent"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_or_within"                │["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:actively_involved_in"                      │["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:contributes_to"                            │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:orthologous_to"                            │["biolink:NamedThing","biolink:Gene"]                      │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:participates_in"                           │["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:interacts_with"                            │["biolink:NamedThing","biolink:Gene"]                      │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:has_phenotype"                             │["biolink:NamedThing","biolink:GeneticInheritance"]        │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:has_phenotype"                             │["biolink:NamedThing","biolink:PhenotypicQuality"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:risk_affected_by"                          │["biolink:NamedThing","biolink:Disease"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:gene_associated_with_condition"            │["biolink:NamedThing","biolink:Disease"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:has_phenotype"                             │["biolink:NamedThing","biolink:ClinicalModifier"]          │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_positive_effect"          │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of"                          │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:risk_affected_by"                          │["biolink:NamedThing","biolink:Gene"]                      │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:gene_associated_with_condition"            │["biolink:NamedThing","biolink:Gene"]                      │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_or_within_positive_effect"│["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:has_mode_of_inheritance"                   │["biolink:NamedThing","biolink:GeneticInheritance"]        │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_negative_effect"          │["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of"                          │["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_positive_effect"          │["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_or_within_negative_effect"│["biolink:NamedThing","biolink:Occurrent"]                 │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:has_phenotype"                             │["biolink:NamedThing","biolink:PhenotypicFeature"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_or_within_negative_effect"│["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_or_within_positive_effect"│["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:expressed_in"                              │["biolink:NamedThing","biolink:GrossAnatomicalStructure"]  │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:expressed_in"                              │["biolink:NamedThing","biolink:AnatomicalEntity"]          │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:acts_upstream_of_negative_effect"          │["biolink:NamedThing","biolink:Pathway"]                   │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:expressed_in"                              │["biolink:NamedThing","biolink:Cell"]                      │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:located_in"                                │["biolink:NamedThing","biolink:MacromolecularComplexMixin"]│
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:expressed_in"                              │["biolink:NamedThing","biolink:CellularComponent"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:expressed_in"                              │["biolink:NamedThing","biolink:MacromolecularComplexMixin"]│
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:part_of"                                   │["biolink:NamedThing","biolink:CellularComponent"]         │
                            +├────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
                            +│"biolink:expressed_in"                              │["biolink:NamedThing"]                                     │
                            +└────────────────────────────────────────────────────┴───────────────────────────────────────────────────────────┘
                            +
                            +
                            +

                            Note: the DISTINCT keyword will only remove duplicate results if the entire result is the same. In this case, we're interested in the unique combinations of relationship type and node category.

                            +
                            +

                            Kinds of associations between two entity types

                            +

                            Further constraining on the type of the connecting node, we can ask what kinds of associations exist between two entity types. For example, what kinds of associations exist between genes and diseases?

                            +
                            MATCH (g:`biolink:Gene`)-[rel]->(n:`biolink:Disease`) RETURN DISTINCT type(rel)
                            +
                            +
                            ╒════════════════════════════════════════╕
                            +│"type(rel)"                             │
                            +╞════════════════════════════════════════╡
                            +│"biolink:gene_associated_with_condition"│
                            +├────────────────────────────────────────┤
                            +│"biolink:risk_affected_by"              │
                            +└────────────────────────────────────────┘
                            +
                            +

                            Diseases associated with a gene

                            +
                            MATCH (g:`biolink:Gene`{id:"HGNC:1100"})-[]-(d:`biolink:Disease`) RETURN g,d
                            +
                            +

                            Phenotypes associated with diseases associated with a gene

                            +
                            MATCH (g:`biolink:Gene`{id:"HGNC:1100"})-[]->(d:`biolink:Disease`)-[]->(p:`biolink:PhenotypicFeature`) RETURN g,d,p
                            +
                            +

                            Why doesn't this return results? This is a great opportunity to track down an unexpected problem.

                            +

                            First, try a less constrained query, so that the 3rd node can be anything:

                            +
                            MATCH (g:`biolink:Gene`{id:"HGNC:1100"})-[]->(d:`biolink:Disease`)-[]->(p) RETURN g,d,p
                            +
                            +

                            With a little tugging and stretching, a good picture emerges, and by clicking our phenotype bubbles, they look like they're showing as PhenotypicQuality rather than PhenotypicFeature. This is likely a bug, but a sensible alternative for this same intent might be:

                            +
                            MATCH (g:`biolink:Gene`{id:"HGNC:1100"})-[]->(d:`biolink:Disease`)-[:`biolink:has_phenotype`]->(p) RETURN g,d,p
                            +
                            +

                            Recursive traversal

                            +

                            Sometimes, we don't know the specific number of hops. What if we want to answer the question "What genes affect the risk for an inherited auditory system disease?"

                            +

                            First, lets find out how are diseases connected to one another. Name the relationship to query for just the predicates. +

                            MATCH (d:`biolink:Disease`)-[rel]-(d2:`biolink:Disease`) RETURN DISTINCT type(rel)
                            +

                            +
                            ╒════════════════════════════════════════╕
                            +│"type(rel)"                             │
                            +╞════════════════════════════════════════╡
                            +│"biolink:subclass_of"                   │
                            +├────────────────────────────────────────┤
                            +│"biolink:related_to"                    │
                            +├────────────────────────────────────────┤
                            +│"biolink:associated_with"               │
                            +├────────────────────────────────────────┤
                            +│"biolink:has_phenotype"                 │
                            +├────────────────────────────────────────┤
                            +│"biolink:gene_associated_with_condition"│
                            +├────────────────────────────────────────┤
                            +│"biolink:risk_affected_by"              │
                            +└────────────────────────────────────────┘
                            +
                            +

                            (* Please ignore biolink:gene_associated_with_condition and biolink:risk_affected_by showing up here, those are due to a bug in our OMIM ingest)

                            +

                            We'll construct a query that fixes the super class disease, then connects at any distance to any subclass of that disease, and then brings genes that affect risk for those diseases. To avoid a big hairball graph being returned, we can return the results as a table showing the diseases and genes.

                            +
                            MATCH (d:`biolink:Disease`{id:"MONDO:0002409"})<-[:`biolink:subclass_of`*]-(d2:`biolink:Disease`)<-[`biolink:risk_affected_by`]-(g:`biolink:Gene`) RETURN d.id, d.name, d2.id, d2.name,g.symbol,g.id
                            +
                            +

                            once you trust the query, you can also use the DISTINCT keyword again focus in on just the gene list

                            +
                            MATCH (d:`biolink:Disease`{id:"MONDO:0002409"})<-[:`biolink:subclass_of`*]-(d2:`biolink:Disease`)<-[`biolink:risk_affected_by`]-(g:`biolink:Gene`) RETURN DISTINCT g.id
                            +
                            +

                            Gene to Gene Associations

                            +

                            First, we can ask what kind of associations we have between genes.

                            +
                            MATCH (g:`biolink:Gene`)-[rel]->(g2:`biolink:Gene`) RETURN DISTINCT type(rel)
                            +
                            +
                            ╒════════════════════════════════════════╕
                            +│"type(rel)"                             │
                            +╞════════════════════════════════════════╡
                            +│"biolink:orthologous_to"                │
                            +├────────────────────────────────────────┤
                            +│"biolink:interacts_with"                │
                            +├────────────────────────────────────────┤
                            +│"biolink:risk_affected_by"              │
                            +├────────────────────────────────────────┤
                            +│"biolink:gene_associated_with_condition"│
                            +└────────────────────────────────────────┘
                            +
                            +
                            +

                            Again, please ignore biolink:gene_associated_with_condition and biolink:risk_affected_by.

                            +
                            +

                            Let's say that from the list above, we're super interested in the DIABLO gene, because, obviously, it has a cool name. We can find it's orthologues by querying through the biolink:orthologous_to relationship.

                            +
                            MATCH (g {id:"HGNC:21528"})-[:`biolink:orthologous_to`]-(o:`biolink:Gene`) RETURN g,o 
                            +
                            +

                            We can then make the question more interesting, by finding phenotypes associated with these orthologues.

                            +
                            MATCH (g {id:"HGNC:21528"})-[:`biolink:orthologous_to`]-(og:`biolink:Gene`)-[:`biolink:has_phenotype`]->(p) RETURN g,og,p
                            +
                            +

                            That was a dead end. What about gene expression?

                            +
                            MATCH (g {id:"HGNC:21528"})-[:`biolink:orthologous_to`]-(og:`biolink:Gene`)-[:`biolink:expressed_in`]->(a) RETURN g,og,a
                            +
                            +

                            We can add this one step further by connecting our gene expression list in UBERON terms

                            +
                            MATCH (g {id:"HGNC:21528"})-[:`biolink:orthologous_to`]-(og:`biolink:Gene`)-[:`biolink:expressed_in`]->(a)-[`biolink:subclass_of`]-(u) 
                            +WHERE u.id STARTS WITH 'UBERON:'
                            +RETURN distinct u.id, u.name
                            +
                            +

                            In particular, it's a nice confirmation to see that we started at the high level MONDO term "inherited auditory system disease", passed through subclass relationships to more specific diseases, connected to genes that affect risk for those diseases, focused on a single gene, and were able to find that it is expressed in the cochlea.

                            +
                            ╒════════════════╤════════════════════════════════╕
                            +│"u.id"          │"u.name"                        │
                            +╞════════════════╪════════════════════════════════╡
                            +│"UBERON:0000044"│"dorsal root ganglion"          │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0000151"│"pectoral fin"                  │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0000948"│"heart"                         │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0000961"│"thoracic ganglion"             │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001017"│"central nervous system"        │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001555"│"digestive tract"               │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001675"│"trigeminal ganglion"           │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001700"│"geniculate ganglion"           │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001701"│"glossopharyngeal ganglion"     │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001844"│"cochlea"                       │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001991"│"cervical ganglion"             │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0002107"│"liver"                         │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0002441"│"cervicothoracic ganglion"      │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0003060"│"pronephric duct"               │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0003922"│"pancreatic epithelial bud"     │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0004141"│"heart tube"                    │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0004291"│"heart rudiment"                │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0005426"│"lens vesicle"                  │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0007269"│"pectoral appendage musculature"│
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0019249"│"2-cell stage embryo"           │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0000965"│"lens of camera-type eye"       │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0001645"│"trigeminal nerve"              │
                            +├────────────────┼────────────────────────────────┤
                            +│"UBERON:0003082"│"myotome"                       │
                            +└────────────────┴────────────────────────────────┘
                            +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/odk-toolbox/index.html b/tutorial/odk-toolbox/index.html new file mode 100644 index 000000000..57b48b09b --- /dev/null +++ b/tutorial/odk-toolbox/index.html @@ -0,0 +1,4002 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Using the ODK Toolbox - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Using the ODK Toolbox

                            +

                            This tutorial will show you how to use the tools that are made available by +the ODK Docker images, independently of an ODK-generated repository and of +ODK-managed workflows.

                            +

                            Prerequisites

                            +

                            You have:

                            +
                              +
                            • Docker installed and running on your machine.
                            • +
                            +

                            You know:

                            +
                              +
                            • how to use a command line interface (e.g., run commands and navigate through + a filesystem from a terminal prompt).
                            • +
                            +

                            Managing Docker images

                            +

                            Let’s check which Docker images, if any, are available in your Docker +installation:

                            +
                            $ docker images
                            +REPOSITORY            TAG       IMAGE ID       CREATED        SIZE
                            +
                            +

                            Here, the listing comes up empty, meaning there are no images at all. This is +what you would expect if you have just installed Docker and have yet to do +anything with it.

                            +

                            Let’s download the main ODK image:

                            +
                            $ docker pull obolibrary/odkfull
                            +Using default tag: latest
                            +latest: Pulling from obolibrary/odkfull
                            +[ Output truncated for brevity ]
                            +Digest: sha256:272d3f788c18bc98647627f9e6ac7311ade22f35f0d4cd48280587c15843beee
                            +Status: Downloaded newer image for obolibrary/odkfull:latest
                            +docker.io/obolibrary/odkfull:latest
                            +
                            +

                            Let’s see the images list again:

                            +
                            $ docker images
                            +REPOSITORY           TAG       IMAGE ID       CREATED        SIZE
                            +obolibrary/odkfull   latest    0947360954dc   6 months ago   2.81GB
                            +
                            +

                            Docker images can exist in several versions, which are called tags in Docker +parlance. In our pull command, since we have not specified any tag, Docker +had automatically defaulted to the latest tag, which by convention is the +latest ODK release.

                            +

                            To download a specific version, append the tag after the image name (you can +check which tags are available on +DockerHub). For example, +let’s download the 1.3.1 release from June 2022:

                            +
                            $ docker pull obolibrary/odkfull:v1.3.1
                            +v1.3.1: Pulling from obolibrary/odkfull
                            +Digest: sha256:272d3f788c18bc98647627f9e6ac7311ade22f35f0d4cd48280587c15843beee
                            +Status: Downloaded newer image for obolibrary/odkfull:v1.3.1
                            +docker.io/obolibrary/odkfull:v1.3.1
                            +
                            +

                            Again, let’s see the output of docker images:

                            +
                            $ docker images
                            +REPOSITORY           TAG       IMAGE ID       CREATED        SIZE
                            +obolibrary/odkfull   latest    0947360954dc   6 months ago   2.81GB
                            +obolibrary/odkfull   v1.3.1    0947360954dc   6 months ago   2.81GB
                            +
                            +

                            Note how both the latest and the v1.3.1 images have the same ID. This is +because, at the time of this writing, the 1.3.1 release is the latest ODK +release, so the latest tag actually points to the same image as the v1.3.1 +tag. This will change when the ODK v1.3.2 is released: then, using latest +(explicitly or by not specifying any tag at all) will point to the new +release, while v1.3.1 will forever continue to point to the June 2022 +release.

                            +

                            In the rest of this tutorial, we will always use the latest image, and so we +will dispense with the explicit tag. But remember that anywhere you see +obolibrary/odkfull in one of the commands below, you can always use +obolibrary/odkfull:TAG to force Docker to use a specific ODK version.

                            +

                            Starting a container

                            +

                            Now that we have the ODK image available, let’s try to start it. The command +for that is docker run, which has the following syntax:

                            +
                            docker run [OPTIONS] <IMAGE> [COMMAND [ARGUMENTS...]]
                            +
                            +

                            where IMAGE is the name of the image to use (in our case, always +obolibrary/odkfull).

                            +

                            With the ODK, you will always need the --rm option. It instructs the Docker +engine to automatically remove the container it creates to run a command, once +that command terminates. (Not using the --rm option would lead to those +“spent” containers to accumulate on your system, ultimately forcing you to +manually remove them with the docker container rm command.)

                            +

                            If we don’t specify an explicit command, the simplest command line we can have +is thus:

                            +
                            $ docker run --rm obolibrary/odkfull
                            +Usage: odk.py [OPTIONS] COMMAND [ARGS]...
                            +
                            +Options:
                            +  --help  Show this message and exit.
                            +
                            +Commands:
                            +  create-dynfile   For testing purposes
                            +  create-makefile  For testing purposes
                            +  dump-schema      Dumps the python schema as json schema.
                            +  export-project   For testing purposes
                            +  seed             Seeds an ontology project
                            +$
                            +
                            +

                            In the absence of an explicit command, the default command odk.py is +automatically invoked by Docker. Since it has been invoked without any +argument, odk.py does nothing but printing its “usage” message before +terminating. When it terminates, the Docker container terminates as well, and +we are back at the terminal prompt.

                            +

                            To invoke one of the tools available in the toolbox (we’ll see what those +tools are later in this document), just complete the command line as needed. +For example, to test that ROBOT is there (and to see which version we have):

                            +
                            $ docker run --rm obolibrary/odkfull robot --version
                            +ROBOT version 1.9.0
                            +
                            +

                            Accessing your files from within the container

                            +

                            Since we have ROBOT, let’s use it. Move to a directory containing some +ontology files (here, I’ll use a file from the Drosophila Anatomy Ontology, +because if you have to pick an ontology, why not picking an ontology that +describes the One True Model Organism?).

                            +
                            $ ls
                            +fbbt.obo
                            +
                            +

                            We want to convert that OBO file to a file in, say, the OWL Functional Syntax. +So we call ROBOT with the appropriate command and options:

                            +
                            $ docker run ---rm obolibrary/odkfull robot convert -i fbbt.obo -f ofn -o fbbt.ofn
                            +org.semanticweb.owlapi.io.OWLOntologyInputSourceException: java.io.FileNotFoundException: fbbt.obo (No such file or directory)
                            +Use the -vvv option to show the stack trace.
                            +Use the --help option to see usage information.
                            +
                            +

                            Huh? Why the “No such file or directory” error? We just checked that +fbbt.obo is present in the current directory, why can’t ROBOT find it?

                            +

                            Because Docker containers run isolated from the rest of the system – that’s +kind of the entire point of such containers in general! From within a +container, programs can, by default, only access files from the image from +which the container has been started.

                            +

                            For the ODK Toolbox to be at all useful, we need to explicitly allow the +container to access some parts of our machine. This is done with the -v +option, as in the following example:

                            +
                            $ docker run --rm -v /home/alice/fbbt:/work […rest of the command omitted for now…]
                            +
                            +

                            This -v /home/alice/fbbt:/work has the effect of binding the directory +/home/alice/fbbt from our machine to the directory /work inside the +container. This means that if a program that runs within the container tries +to have a look at the /work directory, what this program will actually see +is the contents of the /home/alice/fbbt directory. Figuratively, the -v +option opens a window in the container’s wall, allowing to see parts of what’s +outside from within the container.

                            +

                            With that window, and assuming our fbbt.obo file is within the +/home/alice/fbbt directory, we can try again invoking the conversion +command:

                            +
                            $ docker run --rm -v /home/alice/fbbt:/work obolibrary/odkfull robot convert -i /work/fbbt.obo -f ofn -o /work/fbbt.ofn
                            +$ ls
                            +fbbt.obo
                            +fbbt.ofn
                            +
                            +

                            This time, ROBOT was able to find out fbbt.obo file, and to convert it as we +asked.

                            +

                            We can slightly simplify the last command line in two ways.

                            +

                            First, instead of explicitly specifying the full pathname to the current +directory (/home/alice/fbbt), we can use the shell variable $PWD, which is +automatically expanded to that pathname: -v $PWD:/work.

                            +

                            Second, to avoid having to explicitly refer to the /work directory in the +command, we can ask the Docker engine to run our command as if the current +directory, within the container, was already /work. This is done with the +-w /work option.

                            +

                            The command above now becomes:

                            +
                            $ docker run --rm -v $PWD:/work -w /work obolibrary/odkfull robot convert -i fbbt.obo -f ofn -o fbbt.ofn
                            +
                            +

                            This is the typical method of invoking a tool from the ODK Toolbox to work on +files from the current directory.

                            +

                            In fact, this is exactly how the src/ontology/run.sh wrapper script, that is +automatically created in an ODK-generated repository, works. If you work with +an ODK-managed ontology, you can invoke an arbitrary ODK tool by using the +run.sh instead of calling docker run yourself. Assuming for example that +you already are in the src/ontology directory of an ODK-managed ontology, +you could use:

                            +
                            ./run.sh robot convert -i fbbt.obo -f ofn -o fbbt.ofn
                            +
                            +

                            If you want to use the ODK toolbox with ontologies that are not managed by +the ODK (so, where a run.sh script is not readily available), you can set up +an independent wrapper script, as explained in the Setting up the +ODK tutorial.

                            +

                            Running a shell session within the container

                            +

                            If you have several commands to invoke in a row involving files from the same +directory, you do not have to repeatedly invoke docker run once for each +command. Instead, you can invoke a shell, from which you will be able to run +successively as many commands as you need:

                            +
                            $ docker run --rm -ti -v $PWD:/work -w /work obolibrary/odkfull bash
                            +root@c1c2c80c491b:/work# 
                            +
                            +

                            The -ti options allow to use your current terminal to control the shell that +is started within the container. This is confirmed by the modified prompt that +you can see above, which indicates that you are now “in” the container. You +can now directly use all the tools that you need:

                            +
                            root@c1c2c80c491b:/work# robot convert -i fbbt.obo -f owx -o fbbt.owl
                            +root@c1c2c80c491b:/work# Konclude consistency -i fbbt.owl
                            +{info} 18:21:14.543 >> Starting Konclude …
                            +[]
                            +{info} 18:21:16.949 >> Ontology ‘out.owl’ is consistent.
                            +root@c1c2c80c491b:/work#
                            +
                            +

                            When you are done, exit the shell by hitting Ctrl-D or with the exit +command. The shell will terminate, and with it, the container will terminate +as well, sending you back to your original terminal.

                            +

                            What’s in the toolbox, actually?

                            +

                            Now that you know how to invoke any tool from the ODK Toolbox, here’s a quick +overview of which tools are available.

                            +

                            For a definitive list, the authoritative source is the ODK +repository, especially +the Dockerfile and requirements.txt.full files. And if you miss a tool +that you think should be present in the toolbox, don’t hesitate to open a +ticket to +suggest that the tool be added in a future ODK release!

                            +

                            Programming language and associated tools

                            +
                              +
                            • Java Development Kit, Maven
                            • +
                            • Ammonite (Scala scripting engine)
                            • +
                            • Python3
                            • +
                            • NodeJS
                            • +
                            +

                            Ontology manipulation tools

                            + +

                            Other semantic tools

                            + + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/odk-tutorial-2/index.html b/tutorial/odk-tutorial-2/index.html new file mode 100644 index 000000000..5157ad8b9 --- /dev/null +++ b/tutorial/odk-tutorial-2/index.html @@ -0,0 +1,3860 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - 20 minute complete walk-through - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            ODK in 20 minutes: a complete walk through the core workflows

                            +

                            The goal of this tutorial is to quickly showcase key ODK workflows. +It is not geared at explaining individual steps in detail. For a much more detailed tutorial for creating a fresh ODK repo, see here for a tutorial for setting up your first workflow. We recommend to complete this tutorial before attempting this one.

                            +

                            Tutorial

                            +
                              +
                            1. Background
                            2. +
                            3. Seeding a new ontology repo
                            4. +
                            5. Import workflow
                            6. +
                            7. Integration Testing
                            8. +
                            9. Release workflow
                            10. +
                            11. Customisable documentation
                            12. +
                            +

                            Background

                            +

                            This is some useful background from the ICBO 2022 OBO Tutorial:

                            + + +

                            +

                            Seeding

                            +
                              +
                            1. Create a new folder.
                            2. +
                            3. Download an example ODK config or create one yourself. Save it in the directory created above.
                            4. +
                            5. Important: in the cato-odk.yaml change github_org to your GitHub username. If you dont do this, some ODK features wont work perfectly, like documentation. +
                              github_org: matentzn
                              +repo: cat-ontology
                              +
                            6. +
                            7. Run the ODK seeding script. +
                              curl https://raw.githubusercontent.com/INCATools/ontology-development-kit/v1.3.1/seed-via-docker.sh | bash -s --  --clean -C cato-odk.yaml
                              +
                            8. +
                            9. Push the newly created repo to GitHub (for example with GitHub Desktop).
                            10. +
                            +

                            +

                            The import workflow

                            +

                            ODK Import Workflow

                            +

                            Let us now import planned process:

                            +
                              +
                            1. Open the term file src/ontology/imports/cob_terms.txt in your favourite text editor
                            2. +
                            3. Add COB:0000082 to the term file (this is the planned process class in COB).
                            4. +
                            5. From within the src/ontology directory, run sh run.sh make refresh-cob.
                            6. +
                            7. Inspect the diff. Rather than importing just one term, it seems that we have important a whole bunch. This is because by default, ODK is using the SLME module extraction technique, which ensures that not only the terms we explicitly request are imported - but all the logically dependent ones as well.
                            8. +
                            9. In src/ontology/cato-odk.yaml, locate the entry for importing cob and switch it to a different module type: filter. +
                              import_group:
                              +  products: 
                              +    - id: ro
                              +    - id: cob
                              +      module_type: filter
                              +
                            10. +
                            11. Run sh run.sh make update_repo to apply the changes. Check out the git diff to the Makefile to convince yourself that the new extraction method has been applied.
                            12. +
                            13. Let us refresh the COB import again: From within the src/ontology directory, run sh run.sh make refresh-cob. Convince yourself that now only the planned process term is imported.
                            14. +
                            +

                            +

                            Integration Testing

                            +

                            ODK Testing Workflow

                            +
                              +
                            1. Switch to a new git branch and commit your changes to Makefile, cato-odk.yaml, imports/cob_terms.txt and imports/cob_import.owl.
                            2. +
                            3. Push the branch and create a Pull Request.
                            4. +
                            5. After a few seconds, the automated testing should start: + QC Test Starting + Feel free to click on details to see what is happening!
                            6. +
                            7. Once the test passes (turns green) the PR is ready to be reviewed. + Since this tutorial is for illustration purposes only, we just merge.
                            8. +
                            +

                            +

                            The release workflow

                            +

                            ODK Release Workflow

                            +

                            Great, we have done our change, now we are ready to make a release!

                            +
                              +
                            1. Switch to the main branch in git.
                            2. +
                            3. Make sure you you pull all changes (git pull).
                            4. +
                            5. In src/ontology execute the release workflow: sh run.sh make prepare_release_fast (we are using fast release here which skips refreshing imports again - we just did that).
                            6. +
                            7. Inspect the changes. You should see that the planned process class has been added to all ontology release artefacts.
                            8. +
                            9. Create a branch and commit the changes. Push. Create pull request. Request review (skipped in this tutorial). Wait for QC to pass. Merge.
                            10. +
                            11. On GitHub (repository front page), click on "Create a new release".
                            12. +
                            13. In the next Window in the "Choose a tag" field select v2022-09-01. Note the leading v. Select the correct date (the date you made the release, YYYY-MM-dd). Fill in all the other form elements as you see fit. Click Publish release.
                            14. +
                            +

                            +

                            Customisable documentation

                            +

                            With our ODK setup, we also have a completely customisable documentation system installed. We just need to do a tiny change to the GitHub pages settings:

                            +
                              +
                            1. On your GitHub repo page, click on "Settings".
                            2. +
                            3. In the menu on the left, click on "Pages".
                            4. +
                            5. On the right, under Build and deployment select Deploy from branch.
                            6. +
                            7. Underneath, select gg-pages as the branch (this is where ODK deploys to), and /(root) as the directory. + ODK GitHub pages settings
                            8. +
                            9. Hit Save.
                            10. +
                            11. Wait for about 4 minutes for the site to be deployed (you can click on Actions in the main menu to follow the build process).
                            12. +
                            13. Go back to the Pages section in Settings. You should see a button Visit site. Click on it. If everything went correctly, you should see your new page: + ODK GitHub pages settings
                            14. +
                            15. Let's make a quick change: On the main page, click on the pen in the top right corner (this only works if you have correctly configured your github_org, see seeding). If you have not configured your repo, go to the GitHub front page of your repo, go into the docs directory, click on +index.md and edit it from here. Make a small random edit.
                            16. +
                            17. Commit the change straight to main or do it properly, create a branch, PR, ask for reviews, merge.
                            18. +
                            19. After the ODK updates your site, you should be able to see your changes reflected on the life site!
                            20. +
                            +

                            Summary

                            +

                            That's it! In about 20 minutes, we

                            +
                              +
                            1. Seeded a new ontology repo.
                            2. +
                            3. Imported a term.
                            4. +
                            5. Made a pull request and watched the ODK Testing framework at work.
                            6. +
                            7. Ran a release.
                            8. +
                            9. Deployed customisable documentation pages to help our users and curators documenting processes and use instructions.
                            10. +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/odk_tutorial_2/cato-odk.yaml b/tutorial/odk_tutorial_2/cato-odk.yaml new file mode 100644 index 000000000..eaa7840a9 --- /dev/null +++ b/tutorial/odk_tutorial_2/cato-odk.yaml @@ -0,0 +1,21 @@ +id: cato +title: "Cat Anatomy Ontology" +github_org: obophenotype +repo: cat-ontology +git_main_branch: main +release_artefacts: + - base + - full + - simple +primary_release: full +export_formats: + - owl + - obo + - json +import_group: + products: + - id: ro + - id: cob +robot_java_args: '-Xmx8G' +documentation: + documentation_system: mkdocs diff --git a/tutorial/ontogpt/index.html b/tutorial/ontogpt/index.html new file mode 100644 index 000000000..49c1b17a0 --- /dev/null +++ b/tutorial/ontogpt/index.html @@ -0,0 +1,3608 @@ + + + + + + + + + + + + + + + + + + + + + + + + OntoGPT - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Using OntoGPT to boost ontology curation

                            +
                              +
                            • Tool: https://github.com/monarch-initiative/ontogpt
                            • +
                            • Preprint: https://arxiv.org/abs/2304.02711
                            • +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/project-ontology-development/index.html b/tutorial/project-ontology-development/index.html new file mode 100644 index 000000000..348550e21 --- /dev/null +++ b/tutorial/project-ontology-development/index.html @@ -0,0 +1,4238 @@ + + + + + + + + + + + + + + + + + + + + + + + + Project Ontology Development - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Project Ontology Development

                            +

                            Summary

                            +

                            A project ontology, sometimes and controversially referred to as an application ontology, is an ontology which is composed of other ontologies for a particular use case, such as Natural Language Processing applications, Semantic Search and Knowledge Graph integration. A defining feature of a project ontology is that it is not intended to be used as a domain ontology. Concretely, this means that content from project ontologies (such as terms or axioms) is not to be re-used by domain ontologies (under no circumstances). Project ontology developers have the freedom to slice & dice, delete and add relationships, change labels etc as their use case demands it. Usually, such processing is minimal, and in a well developed environment such as OBO, new project ontology-specific terms are usually kept at a minimum.

                            +

                            In this tutorial, we discuss the fundamental building blocks of application ontologies and show you how to build one using the Ontology Development Kit as one of several options.

                            +

                            Prerequisites

                            +
                              +
                            • A basic understanding of Ontology Pipelines using ROBOT is helpful to follow this tutorial.
                            • +
                            +

                            Learning objectives

                            +
                              +
                            • Understand how to plan a project ontology project independent of any particular methodology
                            • +
                            • Develop an application ontology using the Ontology Development Kit (ODK)
                            • +
                            • Be aware off pitfalls when dealing with very large application ontologies
                            • +
                            +

                            Table of Contents

                            + +

                            +

                            Why do we need project ontologies?

                            +

                            There are a few reasons for developing project ontologies. Here are two that are popular in our domain:

                            +
                              +
                            • Semantic integration. You have curated a lot of data using standard ontologies and now you wish to access this data using the "semantic fabric" provided by the ontology. Concrete examples:
                            • +
                            • Adding a "semantic layer to your knowledge graph". For example, your data is annotated using specific anatomy terms, and you wish to query your knowledge graph through anatomical groupings, such as "anatomical entities that are part of the cardio-vascular system".
                            • +
                            • Offering "semantic search". For example, you may want to restrict a certain search widget to "diseases" only, or try to figure out whether a user is searching for phenotypes associated with diseases. A concrete example is populating a Solr or elastic-search index using not only the labels and synonyms of an ontology, but also their relationships. Try it: https://platform.opentargets.org/, https://monarchinitiative.org/.
                            • +
                            • Example ontologies:
                                +
                              • https://github.com/monarch-initiative/phenio
                              • +
                              • https://github.com/EBISPOT/efo
                              • +
                              • https://github.com/EBISPOT/scatlas_ontology
                              • +
                              +
                            • +
                            • Natural language processing (NLP). You are developing an NLP application such as an annotator for text. Here, you may like to use ontologies to tag specific phrases in your documents, like those related to COVID. Ontologies in these cases serve essentially as more or less sophisticated dictionaries. But there are some more sophisticated uses of ontologies for NER.
                            • +
                            • Example ontologies:
                                +
                              • https://github.com/berkeleybop/bero
                              • +
                              • https://github.com/EBISPOT/covoc
                              • +
                              +
                            • +
                            • Mapping work. When developing mappings across ontologies and terminologies, it is often useful to have access to all of them at once. This helps to explore the consequences of mapping decisions, as well providing a single interface for ontology matching tools which usually operate on single ontologies. Advanced Machine Learning based approaches are used to generate graph embeddings on such merged ontologies. Example ontologies:
                            • +
                            • https://github.com/monarch-initiative/mondo-ingest
                            • +
                            +

                            +

                            Basic architecture

                            +

                            Basic architecture

                            +

                            +

                            Three "ingredients" of project ontologies

                            +

                            Any application ontology will be concerned with at least 3 ingredients:

                            +
                              +
                            • The seed. This is a the set of terms you wish to import into your application ontology. The seed can take many forms:
                            • +
                            • a simple list of terms, e.g. MONDO:123, MONDO:231
                            • +
                            • a list of terms including additional relational selectors, e.g. MONDO:123, incl. all children
                            • +
                            • a list of terms including a logical selector, MONDO:123, incl. all terms that are in some way logically related to MONDO:123
                            • +
                            • a general selector, like "all classes" or simply "everything".
                            • +
                            • There are probably more, but these are the main ones we work with in the context of biomedical application ontologies.
                            • +
                            • The source ontologies, often referred to as "mirrors" (at least by those working with ODK). These are the full ontologies which we want to use in our application ontology. For example, we may want to include anatomical entities from the Uberon ontology into our application ontology. These are usually downloaded from the internet into the application ontology workspace, and then processed by the application ontology extraction workflow (see later).
                            • +
                            • Additional ontology metadata and customisations, such as axioms used to connect entities (classes) across your source ontologies to fulfil a use case, but also your regular ontology metadata (title, comments, etc).
                            • +
                            +

                            +

                            The five "phases" of project ontology development

                            +

                            There are five phases on project ontology development which we will discuss in detail in this section:

                            + +

                            There are other concerns, like continuous integration (basically making sure that changes to the seed or project ontology pipelines do not break anything) and release workflows which are not different from any other ontology.

                            +

                            +

                            Managing the seed

                            +

                            As described above, the seed is the set of terms that should be extracted from the source ontologies into the project ontology. The seed comprises any of the following:

                            +
                              +
                            • terms, such as MONDO:0000001
                            • +
                            • selectors, such as all, children, descendants, ancestors, annotations
                            • +
                            • combinations of the two (a term with all its children)
                            • +
                            +

                            Users of ODK will be mostly familiar with term files located in the imports directory, such as src/ontology/imports/go_terms.txt. Selectors are usually hidden from the user by the ODK build system, but they are much more important now when building project ontologies.

                            +

                            Regardless of which system you use to build your project ontology, it makes sense to carefully plan your seed management. In the following, we will discuss some examples:

                            +
                              +
                            1. Using annotated data. For the Single Cell Atlas Ontology (SCAO) we already have a spreadsheet with the raw data, annotated with the ontology terms we wish to import. We only want to import these exact terms. Our strategy therefore is to extract the ontology terms from table and use these as our seed.
                            2. +
                            3. User requests. For the Experimental Factor Ontology (EFO), we rely on user requests. Curators provide us with individual term requests, or lists of terms they need for curating their data. We usually include these terms along with their parents to maintain rich hierarchies.
                            4. +
                            5. Use case specific considerations. For the Phenomics Integrated Ontology (PHENIO) we wish to combine all disease, phenotype and anatomy terms together and furthermore pull in related chemicals and biological processes (and more).
                            6. +
                            +

                            It makes sense to document your seed management plan. You should usually account for the possibility of changes (terms being added or removed) during the design phase.

                            +

                            +

                            Extracting modules

                            +

                            Module extraction is the process for selecting an appropriate subset from an ontology. There are many ways to extracting subsets from an ontology:

                            +
                              +
                            1. Using logical modules (SLME, pronounced 'slime'): this will allow you to extract not only all the terms in your seed, but furthermore all logical axioms that could theoretically impact reasoning. SLME modules are typically much larger than what you would expect from a 'relevant' subset.
                            2. +
                            3. Using ROBOT filter, a system to first select entities in your seed, then selectively including or excluding descendants, annotations.
                            4. +
                            5. Using MIREOT, a technique that will extract terms and their subClass relationships, without any attempt to include other kinds of axioms.
                            6. +
                            +

                            You can consult the ROBOT documentation for some details on module extraction.

                            +

                            Let's be honest - none of these module extraction techniques are really ideal for project ontologies. SLME modules are typically used for domain ontology development to ensure logical consistency with imported ontologies, but otherwise contain too much information (for most project ontology use cases). ROBOT filter has a hard time with dealing with closures of existential restrictions: for example you cant be sure that, if you import "endocardial endothelium" and "heart" using filter, that the one former is still part of the latter (it is only indirectly a part) - a lot of research and work has being going on to make this easier. The next version of ROBOT (1.8.5) is going to contain a new module extraction command which will ensure that such links are not broken.

                            +

                            One of the design confusions in this part of the process is that most use cases of application ontologies really do not care at all about OWL. Remember, OWL really only matters for the design of domain ontologies, to ensure a consistent representation of the domain and enable reasoning-based classification. So it is, at least slightly, unsatisfactory that we have to use OWL tools to do something that may as well be done by something simpler, more akin to "graph-walking".

                            +

                            +

                            Managing metadata and customisations

                            +

                            Just like any other ontology, a project ontology should be well annotated according to the standards of FAIR Semantics, for example using the OBO Foundry conventions. In particular, project ontologies should be

                            +
                              +
                            • annotated with a title, a license, a description
                            • +
                            • versioned and annotated with versionIRIs
                            • +
                            • get associated with some PURL system (OBO Foundry often wont accept such ontologies, but other free options like https://w3id.org/ exist)
                            • +
                            +

                            Furthermore, it is often necessary to add additional terms to the ontology which are not covered by other upstream ontologies. Here we need to distinguish two cases:

                            +
                              +
                            • The need to quickly add terms that belong somewhere else
                            • +
                            • Adding terms that have no obvious home in any of your declared source ontologies.
                            • +
                            +

                            With our OBO hat on, if you start adding terms "quickly", you should develop a procedure to get these terms into suitable upstream ontologies at a later stage. This is not so much a necessity as a matter of "open data ethics": if you use other people's work to make your life easier, its good to give back!

                            +

                            Lastly, our use cases sometimes require us to add additional links between the terms in our ontologies. For example, we may have to add subClassOf links between classes of different ontologies that cover the same domain. Or we want to add additional information. As with "quickly adding terms", if the information is generally useful, you should consider to add them to the respective upstream source ontology (synonyms of disease terms from Mondo, for example). We often manage such axioms as ROBOT templates and curate them as simple to read tables.

                            +

                            +

                            Merging and post-processing

                            +

                            Just like with most ontologies, the last part of the process is merging the various pieces (modules from external sources, customisations, metadata) together into a single whole. During this phase a few things can happen, but these are the most common ones:

                            +
                              +
                            • Merging: All separate parts are merged into one file.
                            • +
                            • Restructure: Sometimes, we run additional processes to update the structure of the final ontology. One common post-processing step is to remove obsolete classes that may have come in during the extraction phase, add additional links between classes using approaches such as relation graph or prune away unsatisfiability-causing axioms such as disjointness axioms and negation. The latter is sometimes necessary when terms from multiple logically incompatible ontologies are imported.
                            • +
                            • Annotate version information: owl:versionInfo and versionIRI annotations are added to the merged ontology.
                            • +
                            +

                            Validation

                            +

                            One thing to remember is that you are not building a domain ontology. You are usually not concerned with typical issues in ontology engineering, such as logical consistency (or coherence, i.e. the absence of unsatisfiable classes). The key for validating an application ontology comes from its intended use case: Can the ontology deliver the use case it promised? There are many approaches to ensure that, chief among them competency questions. What we usually do is try to express competency questions as SPARQL queries, and ensure that there is at least one result. For example, for one of the project ontologies the author is involved with (CPONT), we have developed a synthetic data generator, which we combine with the ontology to ask questions such as: "Give me all patients which has a recorded diagnosis of scoliosis" (SPARQL). So the ontology does a "good job" if it is able to return, say, at least 100 patients in our synthetic data for which we know that they are diagnoses with scoliosis or one of its subtypes.

                            +

                            Frameworks for building project ontologies

                            +

                            The perfect framework for building project ontologies does not exist yet. The Ontology Development Kit (ODK) has all the tools you need set up a basic application ontology, but the absence of a "perfect" module extraction algorithm for this use case is still unsatisfactory. However, for many use cases, filter modules like the ones described above are actually good enough. Here we will go through a simple example.

                            +

                            An alternative framework for application ontology development based on a Web User Interface and tables for managing the seed is developed by James Overton at (ontodev).

                            +

                            Another potential alternative is to go all the way to graph-land and build the application ontology with KGX and LinkML. See here for an example. Creating a project ontology this way feels more like a Knowledge Graph ETL task than building an ontology!

                            +

                            Example application ontology with ODK

                            +

                            Set up a basic ODK ontology. We are not covering this again in this tutorial, please refer to the tutorial on setting up your ODK repo.

                            +

                            Dealing with large imports

                            +

                            Many of the larger imports in application ontologies do not fit into the normal GitHub file size limit. In this cases it is better to attach them to a GitHub release rather than to check them into version control.

                            +

                            TBD

                            +

                            Additional materials and resources

                            +
                              +
                            • TBD
                            • +
                            +

                            Contributors

                            + + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/pull-requests/index.html b/tutorial/pull-requests/index.html new file mode 100644 index 000000000..5bb343473 --- /dev/null +++ b/tutorial/pull-requests/index.html @@ -0,0 +1,4667 @@ + + + + + + + + + + + + + + + + + + + + + + + + Pull requests - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Pull Requests

                            +

                            Prerequisites

                            +

                            Participants will need to have access to the following resources and tools prior to the training:

                            +
                              +
                            • GitHub account - register for a free GitHub account here
                            • +
                            • Install GitHub Desktop Please make sure you have some kind of git client installed on your machine. If you are new to Git, please install GitHub Desktop
                            • +
                            • Protege - Install Protege 5.5, download it here
                            • +
                            +

                            Preparation (optional)

                            + +

                            What is delivered as part of the course

                            +

                            Description: How to create and manage pull requests to ontology files in GitHub.

                            +

                            Learning objectives

                            +
                              +
                            • How to create a really good pull request
                            • +
                            • GitHub Pull Request Workflow
                            • +
                            • How to find a reviewer for your pull request in an open source environment
                            • +
                            • How to review a pull request
                            • +
                            • How to change a pull request in response to review
                            • +
                            • How to update from master
                            • +
                            • Resolve conflicts on branch
                            • +
                            +

                            Contributors

                            + +

                            Tutorials

                            +

                            Monarch OBO training Tutorials

                            +

                            Pull Requests Part 1

                            + + +

                            Pull Requests Part 2

                            + + +

                            How to create a really good pull request

                            +

                            What is a Pull Request?

                            +

                            A pull request (PR) is an event in Git where a contributor (you!) asks a maintainer of a Git repository to review changes (e.g. edits to an ontology file) they want to merge into a project (e.g. the owl file) (see reference). A contributor creates a pull request to propose and collaborate on changes to a repository. These changes are proposed in a branch, which ensures that the default branch only contains finished and approved work. See more details here.

                            +

                            image

                            +

                            How to write a great descriptive title

                            +

                            When committing a pull request, you must include a title and a description (more details in the workflow below.) Tips below (adapted from Hugo Dias):

                            +
                              +
                            • +

                              The title of the PR should be self-explanatory

                              +
                            • +
                            • +

                              Do: Describe what was changed in the pull request

                              +
                            • +
                            • +

                              Example: Add new term: MONDO:0100503 DPH5-related diphthamide-deficiency syndrome`

                              +
                            • +
                            • +

                              Don't: write a vague title that has very little meaning.

                              +
                            • +
                            • +

                              Example: Add new term

                              +
                            • +
                            • +

                              Don't: use the branch name in the pull request (sometimes GitHub will offer this as a default name)

                              +
                            • +
                            • Example: issue-5024
                            • +
                            +

                            What kind of information to include in the description

                            +
                              +
                            • Describe what was changed in the pull request
                            • +
                            • Explain why this PR exists
                            • +
                            • Make it clear how it does what it sets out to do. E.g., Does it edit the ontology-edit.owl file? Does it edit another file(s)?
                            • +
                            • What was your motivation for the chosen solution?
                            • +
                            • Use screenshots to demonstrate what has changed. See How to guide on creating screenshots
                            • +
                            +

                            Example:

                            +

                            image

                            +

                            General tips

                            +
                              +
                            • Do:
                            • +
                            • Follow the Single Responsibility Principle: The pull request should do only one thing.
                                +
                              • Note: sometimes a small edit can change a lot of code, for example, if you want to change all of the created_by annotations to dc:creator. That's okay.
                              • +
                              +
                            • +
                            • The pull request should be atomic: it should be small and self contained with simple changes that affect a little code a possible
                            • +
                            • Whenever possible, break pull-requests into smaller ones
                            • +
                            • Commit early, commit often
                            • +
                            • Include specific information like the ID and label for terms changed. Note, you can easily obtain term metadata like OBO ID, IRI, or the term label in Protege by clicking the three lines above the Annotations box (next to the term name), see screenshot below. You can also copy the IRI in markdown, which is really convenient for pasting into GitHub.
                            • +
                            +

                            image

                            +
                              +
                            • Don't:
                            • +
                            • Make additional changes on a single PR that goes beyond the scope of the ticket or PR. For example, if you are adding a new term, don't also fix definitions or formatting for other terms.
                            • +
                            +

                            GitHub Pull Request Workflow

                            +

                            Update the local copy of the ontology

                            +
                              +
                            1. In GitHub Desktop, navigate to your local ontology directory of your ontology
                            2. +
                            3. Make sure you are on the master/main branch and click Pull origin (or Fetch origin)
                            4. +
                            +

                            image

                            +

                            Create a New Working Branch

                            +
                              +
                            1. When starting to work on a ticket or making edits to an ontology, you should create a new branch of the repository to edit the ontology file.
                            2. +
                            3. Make sure you are on the master branch before creating a new branch. Please do not create a new branch off of an existing branch (unless the situation explicitly calls for it).
                            4. +
                            5. To create a new branch, click on Current Branch and select New Branch
                            6. +
                            +

                            image

                            +
                              +
                            1. Name your branch. Some recommended best practices for branch name are to name the branch after the issue number, for example issue-206. If you are not addressing a ticket per se, you could name the branch: 'initals-edits-date', e.g. nv-edits_2022-07-12, or give it a name specific to what you are doing, e.g. fix-typos-2022-07-12.
                            2. +
                            +

                            image

                            +

                            Continuing work on an existing Working Branch

                            +
                              +
                            1. If you are continuing to do work on an existing branch, in addition to updating master, go to your branch by selecting Current Branch in GitHub Desktop and either search for or browse for the branch name.
                            2. +
                            +

                            Video Explanation

                            +

                            A video is below.

                            + + +
                              +
                            1. OPTIONAL: To update the working branch with respect to the current version of the ontology, select Branch from the top menu, Update from master. This step is optional because it is not necessary to work on the current version of the ontology; all changes will be synchronized when git merge is performed.
                            2. +
                            +

                            Editing an ontology on a branch

                            +
                              +
                            1. Create a new branch, open Protege. Protege will display your branch name in the lower left corner (or it will show Git: master)
                            2. +
                            +

                            image

                            +
                              +
                            1. Make necessary edits in Protege.
                            2. +
                            +

                            Committing, pushing and making pull requests

                            +
                              +
                            1. Review: GitHub Desktop will display the diff or changes made to the ontology.
                            2. +
                            3. Before committing, view the diff and ensure the changes were intended. Examples of a diff are pasted below. Large diffs are a sign that something went wrong. In this case, do not commit the changes and ask for help instead or consider discarding your changes and starting the edits again. To discard changes, right click on the changed file name and select Discard changes.
                            4. +
                            +

                            image

                            +

                            Example diffs:

                            +

                            Example 1 (Cell Ontology):

                            +

                            +

                            Example 2 (Mondo):

                            +

                            image

                            +

                            Write a good commit messages

                            +
                              +
                            1. +

                              Commit message: Before Committing, you must add a commit message. In GitHub Desktop in the Commit field in the lower left, there is a subject line and a description.

                              +
                            2. +
                            3. +

                              Give a very descriptive title: Add a descriptive title in the subject line. For example: add new class ONTOLOGY:ID [term name] (e.g. add new class MONDO:0000006 heart disease)

                              +
                            4. +
                            5. +

                              Write a detailed summary of what the change is in the Description box, referring to the issue. The sentence should clearly state how the issue is addressed.

                              +
                            6. +
                            7. +

                              NOTE: You can use the word ‘fixes’ or ‘closes’ in the commit message - these are magic words in GitHub; when used in combination with the ticket number, it will automatically close the ticket. Learn more on this GitHub Help Documentation page about Closing issues via commit messages.

                              +
                            8. +
                            9. +

                              ‘Fixes’ and “Closes’ is case-insensitive and can be plural or singular (fixes, closes, fix, close).

                              +
                            10. +
                            +

                            image

                            +
                              +
                            1. +

                              If you don’t want to close the ticket, just refer to the ticket # without the word ‘fixes’ or use ‘adresses’ or 'addresses'. The commit will be associated with the correct ticket but the ticket will remain open.

                              +
                            2. +
                            3. +

                              Push: To incorporate the changes into the remote repository, click Commit to [branch name], then click Push.

                              +
                            4. +
                            +

                            Make a pull request (PR)

                            +
                              +
                            1. You can either make a pull request (PR) directly from GitHub Desktop, or via the GitHub web browser.
                            2. +
                            3. To make a PR from GitHub Desktop, click the button 'Create Pull Request'. You will be directed to your web browser and GitHub repo.
                            4. +
                            5. Click Create Pull Request.
                            6. +
                            +

                            image

                            +
                              +
                            1. If your PR is a work-in-progress and not ready for review, you can save it as a draft PR and convert it to a PR when it is ready for review.
                            2. +
                            +

                            image

                            +
                              +
                            1. If you do not create a PR directly from GitHub Dekstop, you can go to your GitHub repo and you will see a yellow banner on top that notifies you of a pending PR.
                            2. +
                            3. Navigate to the tab labeled as ‘Code’. You should see your commit listed at the top of the page in a light yellow box. If you don’t see it, click on the ‘Branches’ link to reveal it in the list, and click on it.
                            4. +
                            +

                            image

                            +
                              +
                            1. Click the green button ‘Compare & pull request’ on the right.
                            2. +
                            3. You may now add comments, if applicable and request a reviewer. See section below on reviewers.
                            4. +
                            5. You can see the diff for your file by clicking 'Files Changed'. Examine it as a sanity check.
                            6. +
                            7. Go back to the Conversation tab.
                            8. +
                            9. Click on the green box ‘Pull request’ to generate a pull request.
                            10. +
                            +

                            How to find a reviewer for your pull request in an open source environment

                            +
                              +
                            1. Publicly managed ontologies do not have a structure in place to automatically deal with PRs.
                            2. +
                            3. If you make a PR to an open source project, you should open a separate social channel to the developers to notify them of your PR (e.g. find the project mailing list, Slack, etc.). You should introduce yourself and give some context.
                            4. +
                            5. Depending on the level of your permissions for the repository, you may or may not be able to assign a reviewer yourself.
                            6. +
                            7. If you have write access to the repository, you can assign a reviewer.
                            8. +
                            9. Otherwise, you can tag people in the description of your pull request.
                            10. +
                            11. +

                              Tips for finding reviewers:

                              +
                            12. +
                            13. +

                              An ontology repository should have an owner assigned. This may be described in the ReadMe file or on the OBO Foundry website. For example, the contact person for Mondo is Nicole Vasilevsky.

                              +
                            14. +
                            15. The primary owner can likely review your PR or triage your request to the appropriate person.
                            16. +
                            17. If you are addressing a specific ticket, you may want to assign the person who created the ticket to review.
                            18. +
                            +

                            How to review a pull request (PR)

                            +

                            If you are assigned to review a pull request, you should receive an email notification. You can also check for PRs assigned to you by going to https://github.com/pulls/assigned.

                            +

                            What kind of person do we need for what kind of pull request?

                            +

                            It depends on what the pull request is addressing. Remember the QC checks will check for things like unsatisfiable classes and many other checks (that vary between ontologies). Your job as a reviewer is to check for things that the QC checks won't pick up and need human judgement.

                            +
                              +
                            • If it is content changes, like adding new terms, or reclassifying a term, an ontology curator could review your PR.
                            • +
                            • If the PR is addressing quality control or technical aspects, one of the ontology semantic engineers would probably be a good fit.
                            • +
                            • +

                              If you don't know who to assign, we recommend assigning the ontology contact person and they can triage the request.

                              +
                            • +
                            • +

                              To review a PR, you should view the 'Files changed' and view the diff(s). You can review changes in a pull request one file at a time.

                              +
                            • +
                            • While reviewing the files in a pull request, you can leave individual comments on specific changes.
                            • +
                            +

                            Example: +image

                            +

                            Things to look out for when reviewing a PR:

                            +
                              +
                            1. +

                              Make sure the changes made address the ticket. In the example above, Sabrina addressed a ticket that requested adding a new term to Mondo, which is what she did on the PR (see https://github.com/monarch-initiative/mondo/pull/5078).

                              +
                            2. +
                            3. +

                              Examples of things to look for in content changes (like adding new terms or revising existing terms):

                              +
                            4. +
                            5. Poorly written definitions
                            6. +
                            7. Missing or misformatted database cross-references
                            8. +
                            9. Incorrectly scoped synonyms
                            10. +
                            11. +

                              appropriate annotations

                              +
                            12. +
                            13. +

                              Make sure there are not any unintended or unwanted changes on the PR. See example below. Protege reordered the location of a term in the file.

                              +
                            14. +
                            +

                            image

                            +
                              +
                            1. Check that the logic is correct. This can be a difficult thing to do. Some tips:
                            2. +
                            3. Open the branch in Protege and examine the hierarchy in Protege
                            4. +
                            5. Compare the logic that was use to the logic used in an existing term
                            6. +
                            7. If the ontology uses Design Patterns, ensure the logic is consistent with the Design Patterns
                            8. +
                            9. Ask an expert in ontology logic to help review the PR
                            10. +
                            11. Remember there is no magic bullet to ensuring an ontology is logically sound, but do the best you can
                            12. +
                            +

                            Adding your review

                            +
                              +
                            1. After you finish reviewing each file, you can mark the file as viewed. This collapses the file, helping you identify the files you still need to review.
                            2. +
                            3. A progress bar in the pull request header shows the number of files you've viewed.
                            4. +
                            5. You can leave comments and requests for changes on the PR inline for on the PR when viewing the 'Files changed'.
                            6. +
                            7. You can add a single comment, or start a review if you have multiple comments.
                            8. +
                            9. +

                              After reviewing the file(s), you can approve the pull request or request additional changes by submitting your review with a summary comment.

                              +
                            10. +
                            11. +

                              Comment (Submit general feedback without explicit approval)

                              +
                            12. +
                            13. Approve (Submit feedback and approve merging these changes)
                            14. +
                            15. +

                              Request changes (Submit feedback that must be addressed before merging)

                              +
                            16. +
                            17. +

                              In addition or instead of adding inline comments, you can leave comments on the Conversation page. The conversation page is a good place to discuss the PR, and for the original creator to respond to the reviewer comments.

                              +
                            18. +
                            +

                            Inline commits

                            +

                            GitHub added a 'suggested Changes' feature that allows a PR reviewer to suggest an exact change in a comment in a PR. You can add inline comments and commit your comment using 'inline commits'. Read more about it here.

                            +
                              +
                            1. Go to the 'Files changed' tab of a pull request
                            2. +
                            3. Hover over the line you want to fix, and a blue box with a plus sign appears near the gutter on the left
                            4. +
                            5. Click that to display the normal line comment form
                            6. +
                            7. Click the button with a plus and minus sign, it adds a suggestion block to the comment text area with the existing text
                            8. +
                            +

                            image

                            +
                              +
                            1. You can make changes to the text inside the suggestion box. Note that you can add context for your suggested changes outside of the suggestion block
                            2. +
                            3. When you create the comment, it will show up to the maintainer as a diff
                            4. +
                            5. The maintainer can see what changes you are suggesting and accept them with a click
                            6. +
                            +

                            When are you done with your review?

                            +

                            If you review the PR and the changes properly address what was described in the description, then it should be sufficient. Not every PR needs comments, it can be approved without any comments or requests for changes. Feel free to ask for help with your review, and/or assign additional reviewers.

                            +

                            Some of the content above was adapted from GitHub Docs.

                            +

                            How to change a pull request in response to review

                            +
                              +
                            1. Check out your branch in GitHub Desktop and open the file in Protege.
                            2. +
                            3. Make the suggested changes.
                            4. +
                            5. Check the diff.
                            6. +
                            7. Commit your changes on your branch.
                            8. +
                            9. Note, you do not need to create another PR, your commits will show up on the same PR.
                            10. +
                            11. Resolve the comments on the PR.
                            12. +
                            13. Notify the reviewer that your PR is ready for re-review.
                            14. +
                            +

                            How to update from master

                            +
                              +
                            1. In GitHub Desktop, navigate to your branch.
                            2. +
                            3. In the top file menu, select Branch -> Update from master.
                            4. +
                            +

                            Resolve conflicts on branch

                            +

                            Conflicts arise when edits are made on two separate branches to the same line in a file. (reference). When editing an ontology file (owl file or obo file), conflicts often arise when adding new terms to an ontology file on separate branches, or when there are a lot of open pull requests.

                            +

                            Conflicts in ontology files can be fixed either on the command line or using GitHub Desktop. In this lesson, we describe how to fix conflicts using GitHub Desktop.

                            +

                            Fix conflicts in GitHub desktop

                            +
                              +
                            1. In GitHub Desktop, go to your master/main branch and fetch pull.
                            2. +
                            3. Go to branch with conflict.
                            4. +
                            5. Pull branch.
                            6. +
                            7. Branch -> update from master.
                            8. +
                            9. Open in Sublime or Atom.
                            10. +
                            11. Make changes in file (open the ontology file in a text editor (like Sublime) and search for the conflicts. These are usually preceded by <<<<<. Fix the conflicts, then save).
                            12. +
                            13. In GitHub Desktop, continue merge.
                            14. +
                            15. Push.
                            16. +
                            17. In terminal: open [ontology file name] (e.g.open mondo-edit.obo) or open in Protege manually.
                            18. +
                            19. Save as (nothing should have changed in the diff).
                            20. +
                            21. Check the diff in GitHub online.
                            22. +
                            +

                            Video Explanation

                            +

                            Watch a video below with an example fixing a conflict in the Mondo ontology file.

                            + + +

                            Some examples of conflicts that Nicole fixed in Mondo are below:

                            +

                            image +image +image +image

                            +

                            Further regarding

                            +

                            Gene Ontology Daily Workflow

                            +

                            Gene Ontology Editing Guide

                            +

                            GitHub Merge Conflicts

                            + +

                            The anatomy of a perfect pull request

                            +

                            Blog post by Hugo Dias

                            +

                            Suggesting Changes on GitHub - includes description of how to make inline commits

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/resources/BDK14-exercises/basic-classification/ubiq-ligase-complex.owl b/tutorial/resources/BDK14-exercises/basic-classification/ubiq-ligase-complex.owl new file mode 100644 index 000000000..ab1e25d32 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-classification/ubiq-ligase-complex.owl @@ -0,0 +1,1137 @@ + + + + + + + + + + +]> + + + + + 1.2 + + + + + + + + Systematic synonym + + + + + shorthand + + + in_subset + + + Catalytic activity terms in need of attention + + + + has_scope + + + has_obo_format_version + + + definition + + + database_cross_reference + + + Generic GO slim + + + + Aspergillus GO slim + + + + has_alternative_id + + + Prokaryotic GO subset + + + + has_obo_namespace + + + subset_property + + + + PIR GO slim + + + + synonym_type_property + + + + has_exact_synonym + + + + Plant GO slim + + + + Candida GO slim + + + + has_related_synonym + + + has_narrow_synonym + + + High-level terms not to be used for direct annotation + + + + has_broad_synonym + + + Yeast GO slim + + + + Fission yeast GO slim + + + + + + + + + + + + + + + + + + + + part_of + BFO:0000050 + OBO_REL:part_of + gene_ontology + part_of + part_of + + + + + + + + + + + + + ubiquitin ligase complex + + + A protein complex that includes a ubiquitin-protein ligase and other proteins that may confer substrate specificity on the complex. + GO:0000151 + cellular_component + + + + + A protein complex that includes a ubiquitin-protein ligase and other proteins that may confer substrate specificity on the complex. + PMID:9529603 + + + + + + + + + + ER ubiquitin ligase complex + + + + + + + + + + + + + + + + + + A ubiquitin ligase complex found in the ER. + GO:0000835 + cellular_component + + + A ubiquitin ligase complex found in the ER. + GOC:elh + + + + + + + + + + cellular_component + GO:0005575 + GO:0008372 + NIF_Subcellular:sao1337158144 + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + cellular component + cellular component unknown + cellular_component + + + + + + + + + + GOC:go_curators + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + + + + + + + + + + intracellular + + GO:0005622 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + cellular_component + internal to cell + nucleocytoplasm + protoplasm + protoplast + + + + + + + GOC:mah + nucleocytoplasm + + + + + GOC:mah + protoplast + + + + + ISBN:0198506732 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + + + + + + + + + + cell + + GO:0005623 + NIF_Subcellular:sao1813327414 + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + Wikipedia:Cell_(biology) + cellular_component + + + + + + GOC:go_curators + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + + + + + + + + + + nucleus + + A membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. In most cells, the nucleus contains all of the cell's chromosomes except the organellar chromosomes, and is the site of RNA synthesis and processing. In some species, or in specialized cell types, RNA metabolism or DNA replication may be absent. + GO:0005634 + NIF_Subcellular:sao1702920020 + Wikipedia:Cell_nucleus + cell nucleus + cellular_component + + + + + + + + + A membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. In most cells, the nucleus contains all of the cell's chromosomes except the organellar chromosomes, and is the site of RNA synthesis and processing. In some species, or in specialized cell types, RNA metabolism or DNA replication may be absent. + GOC:go_curators + + + + + + + + + + anaphase-promoting complex + + + + A ubiquitin ligase complex that degrades mitotic cyclins and anaphase inhibitory protein, thereby triggering sister chromatid separation and exit from mitosis. Substrate recognition by APC occurs through degradation signals, the most common of which is termed the Dbox degradation motif, originally discovered in cyclin B. + APC + GO:0005680 + Note that the synonym 'APC' should not be confused with the abbreviation for the adenomatous polyposis coli gene and protein. + Wikipedia:Anaphase-promoting_complex + anaphase promoting complex + cellular_component + cyclosome + + + A ubiquitin ligase complex that degrades mitotic cyclins and anaphase inhibitory protein, thereby triggering sister chromatid separation and exit from mitosis. Substrate recognition by APC occurs through degradation signals, the most common of which is termed the Dbox degradation motif, originally discovered in cyclin B. + GOC:jh + GOC:vw + PMID:10465783 + PMID:10611969 + + + + + + + + + + cytoplasm + + All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GO:0005737 + Wikipedia:Cytoplasm + cellular_component + + + + + + + + All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + ISBN:0198547684 + + + + + + + + + + endoplasmic reticulum + + + ER + GO:0005783 + NIF_Subcellular:sao1036339110 + The irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The ER takes two forms, rough (or granular), with ribosomes adhering to the outer surface, and smooth (with no ribosomes attached). + Wikipedia:Endoplasmic_reticulum + cellular_component + + + + + + + + + ISBN:0198506732 + The irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The ER takes two forms, rough (or granular), with ribosomes adhering to the outer surface, and smooth (with no ribosomes attached). + + + + + + + + + + endoplasmic reticulum membrane + + + + + + + + + + ER membrane + GO:0005789 + The lipid bilayer surrounding the endoplasmic reticulum. + cellular_component + + + GOC:mah + The lipid bilayer surrounding the endoplasmic reticulum. + + + + + + + + + + endomembrane system + + A collection of membranous structures involved in transport within the cell. The main components of the endomembrane system are endoplasmic reticulum, Golgi bodies, vesicles, cell membrane and nuclear envelope. Members of the endomembrane system pass materials through each other or though the use of vesicles. + GO:0012505 + Wikipedia:Endomembrane_system + cellular_component + + + + + + A collection of membranous structures involved in transport within the cell. The main components of the endomembrane system are endoplasmic reticulum, Golgi bodies, vesicles, cell membrane and nuclear envelope. Members of the endomembrane system pass materials through each other or though the use of vesicles. + GOC:lh + + + + + + + + + + membrane + + Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GO:0016020 + Wikipedia:Biological_membrane + cellular_component + + + + + + + + + Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GOC:mah + ISBN:0815316194 + + + + + + + + + + SCF ubiquitin ligase complex + + A ubiquitin ligase complex in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1). + CDL1 complex + CRL1 complex + Cul1-RING ubiquitin ligase complex + GO:0019005 + SCF complex + SCF complex substrate recognition subunit + Skp1/Cul1/F-box protein complex + Wikipedia:SCF_complex + cellular_component + cullin-RING ligase 1 + + + A ubiquitin ligase complex in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1). + PMID:15571813 + PMID:15688063 + + + + + + + + + + VCB complex + + + A protein complex that possesses ubiquitin ligase activity; the complex is usually pentameric; for example, in mammals the subunits are pVHL, elongin B, elongin C, cullin-2 (Cul2), and Rbx1. + GO:0030891 + VHL complex + cellular_component + pVHL-elongin C-elongin B complex + von Hippel-Lindau tumor suppressor complex + + + A protein complex that possesses ubiquitin ligase activity; the complex is usually pentameric; for example, in mammals the subunits are pVHL, elongin B, elongin C, cullin-2 (Cul2), and Rbx1. + GOC:mah + PMID:11865071 + + + + + + + + + + organelle membrane + + + + + + + + + GO:0031090 + The lipid bilayer surrounding an organelle. + cellular_component + + + + GOC:mah + The lipid bilayer surrounding an organelle. + + + + + + + + + + BRCA1-BARD1 complex + + + A heterodimeric complex comprising BRCA1 and BARD1, which possesses ubiquitin ligase activity and is involved in genome maintenance, possibly by functioning in surveillance for DNA damage. + GO:0031436 + cellular_component + + + A heterodimeric complex comprising BRCA1 and BARD1, which possesses ubiquitin ligase activity and is involved in genome maintenance, possibly by functioning in surveillance for DNA damage. + PMID:12787778 + + + + + + + + + + cullin-RING ubiquitin ligase complex + + Any ubiquitin ligase complex in which the catalytic core consists of a member of the cullin family and a RING domain protein; the core is associated with one or more additional proteins that confer substrate specificity. + CRL complex + GO:0031461 + cellular_component + cullin complex + cullin-RING ligase + + + Any ubiquitin ligase complex in which the catalytic core consists of a member of the cullin family and a RING domain protein; the core is associated with one or more additional proteins that confer substrate specificity. + PMID:15571813 + PMID:15688063 + + + + + + + + + + macromolecular complex + + A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which the constituent parts function together. + GO:0032991 + cellular_component + macromolecule complex + + + + + A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which the constituent parts function together. + GOC:mah + + + + + + + + + + SUMO-targeted ubiquitin ligase complex + + + A nuclear ubiquitin ligase complex that specifically targets SUMOylated proteins; the complex is formed of homodimers or heterodimers of RNF4 family ubiquitin ligases and is conserved in eukaryotes. + GO:0033768 + cellular_component + + + A nuclear ubiquitin ligase complex that specifically targets SUMOylated proteins; the complex is formed of homodimers or heterodimers of RNF4 family ubiquitin ligases and is conserved in eukaryotes. + GOC:vw + PMID:17762864 + PMID:17762865 + + + + + + + + + + nuclear outer membrane-endoplasmic reticulum membrane network + + + + + + + + + GO:0042175 + NE-ER continuum + NE-ER network + The continuous network of membranes encompassing the nuclear outer membrane and the endoplasmic reticulum membrane. + cellular_component + nuclear envelope-ER network + nuclear envelope-endoplasmic reticulum continuum + nuclear envelope-endoplasmic reticulum network + nuclear membrane-ER network + nuclear membrane-endoplasmic reticulum continuum + + + GOC:mah + nuclear membrane-ER network + + + + + GOC:mah + nuclear envelope-endoplasmic reticulum network + + + + + GOC:bf + GOC:jl + GOC:mah + GOC:mcc + GOC:pr + GOC:vw + The continuous network of membranes encompassing the nuclear outer membrane and the endoplasmic reticulum membrane. + + + + + GOC:mah + nuclear membrane-endoplasmic reticulum continuum + + + + + + + + + + cytoplasmic SCF ubiquitin ligase complex + + + + + + + + + + + + A ubiquitin ligase complex, located in the cytoplasm, in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1). + GO:0043223 + cellular_component + cytoplasmic SCF complex + cytoplasmic Skp1/Cul1/F-box protein complex + cytoplasmic cullin complex + + + A ubiquitin ligase complex, located in the cytoplasm, in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1). + PMID:15571813 + PMID:15688063 + + + + + + + + + + nuclear SCF ubiquitin ligase complex + + + + + + + + + + + + + + + A ubiquitin ligase complex, located in the nucleus, in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1). + GO:0043224 + cellular_component + nuclear SCF complex + nuclear Skp1/Cul1/F-box protein complex + nuclear cullin complex + + + A ubiquitin ligase complex, located in the nucleus, in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1). + PMID:15571813 + PMID:15688063 + + + + + + + + + + organelle + + GO:0043226 + NIF_Subcellular:sao1539965131 + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + Wikipedia:Organelle + cellular_component + + + + + + GOC:go_curators + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + + + + + + + + + + membrane-bounded organelle + + GO:0043227 + NIF_Subcellular:sao414196390 + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + cellular_component + membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + + + + + + + + + + intracellular organelle + + + GO:0043229 + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + + + + + + + + + + intracellular membrane-bounded organelle + + + GO:0043231 + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + cellular_component + intracellular membrane-enclosed organelle + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + + + + + + + + + + protein complex + + Any macromolecular complex composed of two or more polypeptide subunits, which may or may not be identical. Protein complexes may have other associated non-protein prosthetic groups, such as nucleotides, metal ions or other small molecules. + GO:0043234 + Wikipedia:Protein_complex + cellular_component + protein-protein complex + + + + + + Any macromolecular complex composed of two or more polypeptide subunits, which may or may not be identical. Protein complexes may have other associated non-protein prosthetic groups, such as nucleotides, metal ions or other small molecules. + GOC:go_curators + + + + + + + + + + organelle part + + + + + + + + + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GO:0044422 + cellular_component + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + intracellular part + + + + + + + + + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GO:0044424 + cellular_component + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + membrane part + + + + + + + + + + + + Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GO:0044425 + cellular_component + + + + Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GOC:jl + + + + + + + + + + nuclear part + + + + + + + + + + + + Any constituent part of the nucleus, a membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. + GO:0044428 + cellular_component + nucleus component + + + Any constituent part of the nucleus, a membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. + GOC:jl + + + + + + + + + + endoplasmic reticulum part + + + + + + + + + + + + Any constituent part of the endoplasmic reticulum, the irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. + ER component + GO:0044432 + cellular_component + + + Any constituent part of the endoplasmic reticulum, the irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. + GOC:jl + + + + + + + + + + cytoplasmic part + + + + + + + + + + + + Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GO:0044444 + cellular_component + cytoplasm component + + + + Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GOC:jl + + + + + + + + + + intracellular organelle part + + + + + + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GO:0044446 + cellular_component + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + cell part + + + + + + + + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GO:0044464 + cellular_component + protoplast + + + + + GOC:mah + protoplast + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/basic-disjoint/bad-chromosome.owl b/tutorial/resources/BDK14-exercises/basic-disjoint/bad-chromosome.owl new file mode 100644 index 000000000..4041611d1 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-disjoint/bad-chromosome.owl @@ -0,0 +1,1053 @@ + + + + + + + + + + +]> + + + + + 1.2 + + + + + + + + + + + + + definition + + + + + + + + Aspergillus GO slim + + + + + + + + + Candida GO slim + + + + + + + + + Generic GO slim + + + + + + + + + PIR GO slim + + + + + + + + + Plant GO slim + + + + + + + + + Fission yeast GO slim + + + + + + + + + Yeast GO slim + + + + + + + + + Prokaryotic GO subset + + + + + + + + + High-level terms not to be used for direct annotation + + + + + + + + + Catalytic activity terms in need of attention + + + + + + + + + Systematic synonym + + + + + + + + + + subset_property + + + + + + + + synonym_type_property + + + + + + + + has_alternative_id + + + + + + + + has_broad_synonym + + + + + + + + database_cross_reference + + + + + + + + has_exact_synonym + + + + + + + + has_narrow_synonym + + + + + + + + has_obo_format_version + + + + + + + + has_obo_namespace + + + + + + + + has_related_synonym + + + + + + + + has_scope + + + + + + + + + + + + + + in_subset + + + + + + + + shorthand + + + + + + + + + + + + + + + + + + + + + + + + + + part_of + BFO:0000050 + OBO_REL:part_of + gene_ontology + part_of + part_of + + + + + + + + + + + + + cellular_component + GO:0005575 + GO:0008372 + NIF_Subcellular:sao1337158144 + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + cellular component + cellular component unknown + cellular_component + + + + + + + + + + GOC:go_curators + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + + + + + + + + + + intracellular + + GO:0005622 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + cellular_component + internal to cell + nucleocytoplasm + protoplasm + protoplast + + + + + + + GOC:mah + nucleocytoplasm + + + + + ISBN:0198506732 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + + + + + GOC:mah + protoplast + + + + + + + + + + cell + + GO:0005623 + NIF_Subcellular:sao1813327414 + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + Wikipedia:Cell_(biology) + cellular_component + + + + + + GOC:go_curators + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + + + + + + + + + + nucleus + + A membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. In most cells, the nucleus contains all of the cell's chromosomes except the organellar chromosomes, and is the site of RNA synthesis and processing. In some species, or in specialized cell types, RNA metabolism or DNA replication may be absent. + GO:0005634 + NIF_Subcellular:sao1702920020 + Wikipedia:Cell_nucleus + cell nucleus + cellular_component + + + + + + + + + A membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. In most cells, the nucleus contains all of the cell's chromosomes except the organellar chromosomes, and is the site of RNA synthesis and processing. In some species, or in specialized cell types, RNA metabolism or DNA replication may be absent. + GOC:go_curators + + + + + + + + + + chromosome + + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0005694 + Wikipedia:Chromosome + cellular_component + chromatid + interphase chromosome + prophase chromosome + + + + + + + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + ISBN:0198547684 + + + + + + + + + + cytoplasm + + All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GO:0005737 + Wikipedia:Cytoplasm + cellular_component + + + + + + + + All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + ISBN:0198547684 + + + + + + + + + + mitochondrion + + + A semiautonomous, self replicating organelle that occurs in varying numbers, shapes, and sizes in the cytoplasm of virtually all eukaryotic cells. It is notably the site of tissue respiration. + GO:0005739 + NIF_Subcellular:sao1860313010 + Wikipedia:Mitochondrion + cellular_component + mitochondria + + + + + + + + + A semiautonomous, self replicating organelle that occurs in varying numbers, shapes, and sizes in the cytoplasm of virtually all eukaryotic cells. It is notably the site of tissue respiration. + ISBN:0198506732 + + + + + + + + + + plasma membrane + + + + + + + + GO:0005886 + GO:0005904 + NIF_Subcellular:sao1663586795 + The membrane surrounding a cell that separates the cell from its external environment. It consists of a phospholipid bilayer and associated proteins. + Wikipedia:Cell_membrane + bacterial inner membrane + cell membrane + cellular_component + cytoplasmic membrane + inner endospore membrane + juxtamembrane + plasma membrane lipid bilayer + plasmalemma + + + + + + + + + ISBN:0716731363 + The membrane surrounding a cell that separates the cell from its external environment. It consists of a phospholipid bilayer and associated proteins. + + + + + GOC:mah + plasma membrane lipid bilayer + + + + + + + + + + membrane + + Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GO:0016020 + Wikipedia:Biological_membrane + cellular_component + + + + + + + + + Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GOC:mah + ISBN:0815316194 + + + + + + + + + + organelle + + GO:0043226 + NIF_Subcellular:sao1539965131 + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + Wikipedia:Organelle + cellular_component + + + + + + GOC:go_curators + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + + + + + + + + + + membrane-bounded organelle + + GO:0043227 + NIF_Subcellular:sao414196390 + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + cellular_component + membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + + + + + + + + + + non-membrane-bounded organelle + + GO:0043228 + NIF_Subcellular:sao1456184038 + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + cellular_component + non-membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + + + + + + + + + + intracellular organelle + + + GO:0043229 + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + + + + + + + + + + intracellular membrane-bounded organelle + + + GO:0043231 + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + cellular_component + intracellular membrane-enclosed organelle + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + + + + + + + + + + intracellular non-membrane-bounded organelle + + + GO:0043232 + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane and occurring within the cell. Includes ribosomes, the cytoskeleton and chromosomes. + cellular_component + intracellular non-membrane-enclosed organelle + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane and occurring within the cell. Includes ribosomes, the cytoskeleton and chromosomes. + + + + + + + + + + organelle part + + + + + + + + + + + + + + + + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GO:0044422 + cellular_component + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + intracellular part + + + + + + + + + + + + + + + + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GO:0044424 + cellular_component + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + membrane part + + + + + + + + + + + + + + + + + + + Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GO:0044425 + cellular_component + + + + Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GOC:jl + + + + + + + + + + nuclear part + + + + + + + + + + + + + + + + + + + Any constituent part of the nucleus, a membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. + GO:0044428 + cellular_component + nucleus component + + + Any constituent part of the nucleus, a membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. + GOC:jl + + + + + + + + + + mitochondrial part + + + + + + + + + + + + + + + + + + + + Any constituent part of a mitochondrion, a semiautonomous, self replicating organelle that occurs in varying numbers, shapes, and sizes in the cytoplasm of virtually all eukaryotic cells. It is notably the site of tissue respiration. + GO:0044429 + cellular_component + mitochondrion component + + + Any constituent part of a mitochondrion, a semiautonomous, self replicating organelle that occurs in varying numbers, shapes, and sizes in the cytoplasm of virtually all eukaryotic cells. It is notably the site of tissue respiration. + GOC:jl + + + + + + + + + + cytoplasmic part + + + + + + + + + + + + + + + + + + + Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GO:0044444 + cellular_component + cytoplasm component + + + + Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GOC:jl + + + + + + + + + + intracellular organelle part + + + + + + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GO:0044446 + cellular_component + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + plasma membrane part + + + + + + + + + + + + + + + + + + + Any constituent part of the plasma membrane, the membrane surrounding a cell that separates the cell from its external environment. It consists of a phospholipid bilayer and associated proteins. + GO:0044459 + cellular_component + + + + Any constituent part of the plasma membrane, the membrane surrounding a cell that separates the cell from its external environment. It consists of a phospholipid bilayer and associated proteins. + GOC:jl + + + + + + + + + + cell part + + + + + + + + + + + + + + + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GO:0044464 + cellular_component + protoplast + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + GOC:mah + protoplast + + + + + + + + + + cell periphery + + GO:0071944 + The part of a cell encompassing the cell cortex, the plasma membrane, and any external encapsulating structures. + cellular_component + + + GOC:mah + The part of a cell encompassing the cell cortex, the plasma membrane, and any external encapsulating structures. + + + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/basic-dl-query/cc.owl b/tutorial/resources/BDK14-exercises/basic-dl-query/cc.owl new file mode 100644 index 000000000..65a2862f8 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-dl-query/cc.owl @@ -0,0 +1,53553 @@ +Prefix: xsd: +Prefix: owl: +Prefix: oboInOwl: +Prefix: : +Prefix: obo: +Prefix: xml: +Prefix: rdf: +Prefix: rdfs: +Prefix: go: + + + +Ontology: + + +AnnotationProperty: obo:go#systematic_synonym + + Annotations: + rdfs:label "Systematic synonym"^^xsd:string, + oboInOwl:hasScope + + Annotations: + oboInOwl:hasScope , + rdfs:label "Systematic synonym"^^xsd:string + + SubPropertyOf: + oboInOwl:SynonymTypeProperty + + +AnnotationProperty: oboInOwl:shorthand + + Annotations: + rdfs:label "shorthand"^^xsd:string + + Annotations: + rdfs:label "shorthand"^^xsd:string + + +AnnotationProperty: oboInOwl:inSubset + + Annotations: + rdfs:label "in_subset"^^xsd:string + + Annotations: + rdfs:label "in_subset"^^xsd:string + + +AnnotationProperty: obo:go#mf_needs_review + + Annotations: + rdfs:comment "Catalytic activity terms in need of attention"^^xsd:string + + Annotations: + rdfs:comment "Catalytic activity terms in need of attention"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: oboInOwl:hasScope + + Annotations: + rdfs:label "has_scope"^^xsd:string + + Annotations: + rdfs:label "has_scope"^^xsd:string + + +AnnotationProperty: oboInOwl:hasOBOFormatVersion + + Annotations: + rdfs:label "has_obo_format_version"^^xsd:string + + Annotations: + rdfs:label "has_obo_format_version"^^xsd:string + + +AnnotationProperty: obo:IAO_0000115 + + Annotations: + rdfs:label "definition"^^xsd:string + + Annotations: + rdfs:label "definition"^^xsd:string + + +AnnotationProperty: oboInOwl:hasDbXref + + Annotations: + rdfs:label "database_cross_reference"^^xsd:string + + Annotations: + rdfs:label "database_cross_reference"^^xsd:string + + +AnnotationProperty: obo:go#goslim_generic + + Annotations: + rdfs:comment "Generic GO slim"^^xsd:string + + Annotations: + rdfs:comment "Generic GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: obo:go#goslim_aspergillus + + Annotations: + rdfs:comment "Aspergillus GO slim"^^xsd:string + + Annotations: + rdfs:comment "Aspergillus GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: oboInOwl:hasAlternativeId + + Annotations: + rdfs:label "has_alternative_id"^^xsd:string + + Annotations: + rdfs:label "has_alternative_id"^^xsd:string + + +AnnotationProperty: obo:go#gosubset_prok + + Annotations: + rdfs:comment "Prokaryotic GO subset"^^xsd:string + + Annotations: + rdfs:comment "Prokaryotic GO subset"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: oboInOwl:hasOBONamespace + + Annotations: + rdfs:label "has_obo_namespace"^^xsd:string + + Annotations: + rdfs:label "has_obo_namespace"^^xsd:string + + +AnnotationProperty: oboInOwl:SubsetProperty + + Annotations: + rdfs:label "subset_property"^^xsd:string + + Annotations: + rdfs:label "subset_property"^^xsd:string + + +AnnotationProperty: oboInOwl:id + + +AnnotationProperty: obo:go#goslim_pir + + Annotations: + rdfs:comment "PIR GO slim"^^xsd:string + + Annotations: + rdfs:comment "PIR GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: oboInOwl:SynonymTypeProperty + + Annotations: + rdfs:label "synonym_type_property"^^xsd:string + + Annotations: + rdfs:label "synonym_type_property"^^xsd:string + + +AnnotationProperty: rdfs:label + + +AnnotationProperty: oboInOwl:hasExactSynonym + + Annotations: + rdfs:label "has_exact_synonym"^^xsd:string + + Annotations: + rdfs:label "has_exact_synonym"^^xsd:string + + +AnnotationProperty: rdfs:comment + + +AnnotationProperty: obo:go#goslim_plant + + Annotations: + rdfs:comment "Plant GO slim"^^xsd:string + + Annotations: + rdfs:comment "Plant GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: obo:go#goslim_candida + + Annotations: + rdfs:comment "Candida GO slim"^^xsd:string + + Annotations: + rdfs:comment "Candida GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: oboInOwl:hasRelatedSynonym + + Annotations: + rdfs:label "has_related_synonym"^^xsd:string + + Annotations: + rdfs:label "has_related_synonym"^^xsd:string + + +AnnotationProperty: oboInOwl:hasNarrowSynonym + + Annotations: + rdfs:label "has_narrow_synonym"^^xsd:string + + Annotations: + rdfs:label "has_narrow_synonym"^^xsd:string + + +AnnotationProperty: obo:go#high_level_annotation_qc + + Annotations: + rdfs:comment "High-level terms not to be used for direct annotation"^^xsd:string + + Annotations: + rdfs:comment "High-level terms not to be used for direct annotation"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: oboInOwl:hasBroadSynonym + + Annotations: + rdfs:label "has_broad_synonym"^^xsd:string + + Annotations: + rdfs:label "has_broad_synonym"^^xsd:string + + +AnnotationProperty: obo:go#goslim_yeast + + Annotations: + rdfs:comment "Yeast GO slim"^^xsd:string + + Annotations: + rdfs:comment "Yeast GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +AnnotationProperty: obo:go#goslim_pombe + + Annotations: + rdfs:comment "Fission yeast GO slim"^^xsd:string + + Annotations: + rdfs:comment "Fission yeast GO slim"^^xsd:string + + SubPropertyOf: + oboInOwl:SubsetProperty + + +Datatype: xsd:string + + +ObjectProperty: obo:BFO_0000050 + + Annotations: + oboInOwl:shorthand "part_of"^^xsd:string, + oboInOwl:hasDbXref "BFO:0000050"^^xsd:string, + oboInOwl:hasOBONamespace "gene_ontology"^^xsd:string, + rdfs:label "part_of"^^xsd:string, + oboInOwl:hasDbXref "OBO_REL:part_of"^^xsd:string, + oboInOwl:id "part_of"^^xsd:string + + Characteristics: + Transitive + + +ObjectProperty: obo:BFO_0000051 + + Annotations: + oboInOwl:hasDbXref "OBO_REL:has_part"^^xsd:string, + oboInOwl:hasDbXref "BFO:0000051"^^xsd:string, + oboInOwl:hasOBONamespace "gene_ontology"^^xsd:string, + oboInOwl:id "has_part"^^xsd:string, + oboInOwl:shorthand "has_part"^^xsd:string, + rdfs:label "has_part"^^xsd:string + + Characteristics: + Transitive + + +Class: obo:GO_0070603 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "SWI-SNF-type complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16155938"^^xsd:string + obo:IAO_0000115 "A chromatin remodeling complex that contains an ortholog of the Saccharomyces ATPase Swi2/Snf2 as one of the core components."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:224"^^xsd:string + oboInOwl:hasRelatedSynonym "SWI-SNF global transcription activator complex "^^xsd:string, + rdfs:label "SWI/SNF-type complex"^^xsd:string, + oboInOwl:id "GO:0070603"^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0070604 + + Annotations: + rdfs:label "PBAF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:565"^^xsd:string + oboInOwl:hasExactSynonym "SWI/SNF complex B"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16155938"^^xsd:string, + oboInOwl:hasDbXref "PMID:8895581"^^xsd:string + obo:IAO_0000115 "A SWI/SNF-type complex that contains the ATPase product of the mammalian BAF180 gene."^^xsd:string, + oboInOwl:id "GO:0070604"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:565"^^xsd:string + oboInOwl:hasExactSynonym "Polybromo- and BAF containing complex"^^xsd:string + + SubClassOf: + obo:GO_0070603 + + +Class: obo:GO_0071189 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v7 and protocadherin-gamma-a3, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0071189"^^xsd:string, + rdfs:label "protocadherin-alpha-v7-protocadherin-gamma-a3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1019"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdha7-Pcdhga3 complex"^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071188 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071188"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1021"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdha7-Pcdhga1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v7 and protocadherin-gamma-a1, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + rdfs:label "protocadherin-alpha-v7-protocadherin-gamma-a1 complex"^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071187 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:1017"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdhga1-Pcdhgb4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protocadherin-alpha-v4-protocadherin-gamma-b4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v4 and protocadherin-gamma-b4, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0071187"^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071196 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Kv4.3-KChIP1 channel complex"^^xsd:string, + oboInOwl:id "GO:0071196"^^xsd:string, + oboInOwl:hasDbXref "CORUM:3091"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15356203"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the Kv channel interacting protein KChIP1 associated with the channel via interaction with the Kv alpha subunit 4.3."^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0071197 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15356203"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the Kv alpha subunits 4.2 and 4.3."^^xsd:string, + rdfs:label "Kv4.2-Kv4.3 channel complex"^^xsd:string, + oboInOwl:id "GO:0071197"^^xsd:string, + oboInOwl:hasDbXref "CORUM:609"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0071194 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071194"^^xsd:string, + oboInOwl:hasDbXref "CORUM:608"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15356203"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the Kv channel interacting protein KChIP3 associated with the channel via interaction with the Kv alpha subunit 4.2."^^xsd:string, + rdfs:label "Kv4.2-KChIP3 channel complex"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0030906 + + Annotations: + rdfs:label "retromer complex, inner shell"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030906"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9700157"^^xsd:string + obo:IAO_0000115 "One of two subcomplexes that combine to form the retromer, believed to be closely associated with the membrane. In budding yeast the complex comprises Vps35p, Vps29p, and Vps26p."^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030904, + obo:GO_0043234 + + +Class: obo:GO_0071195 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Kv4.2-KChIP4 channel complex"^^xsd:string, + oboInOwl:id "GO:0071195"^^xsd:string, + oboInOwl:hasDbXref "CORUM:3090"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15356203"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the Kv channel interacting protein KChIP4 associated with the channel via interaction with the Kv alpha subunit 4.2."^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0030907 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Mlu1-box binding factor"^^xsd:string, + rdfs:label "MBF transcription complex"^^xsd:string, + oboInOwl:hasExactSynonym "DSC1 transcription factor complex"^^xsd:string, + oboInOwl:id "GO:0030907"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11206552"^^xsd:string, + oboInOwl:hasDbXref "PMID:15838511"^^xsd:string, + oboInOwl:hasDbXref "PMID:18160399"^^xsd:string, + oboInOwl:hasDbXref "PMID:9343385"^^xsd:string + obo:IAO_0000115 "A protein complex that binds to the Mlu1 cell cycle box (MCB) promoter element, consensus sequence ACGCGN, and is involved in regulation of transcription during the G1/S transition of the cell cycle. In Saccharomyces, the complex contains a heterodimer of the DNA binding protein Mbp1p and the activator Swi4p, and is associated with additional proteins known as Nrm1p, Msa1p, and Msa2p; in Schizosaccharomyces the complex contains Res1p, Res2p, and Cdc10p."^^xsd:string, + oboInOwl:hasExactSynonym "MBF"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071192 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15356203"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the Kv channel interacting protein KChIP1 associated with the channel via interaction with the Kv alpha subunit 4.2."^^xsd:string, + rdfs:label "Kv4.2-KChIP1 channel complex"^^xsd:string, + oboInOwl:hasDbXref "CORUM:606"^^xsd:string, + oboInOwl:id "GO:0071192"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0030904 + + Annotations: + rdfs:label "retromer complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9700157"^^xsd:string + obo:IAO_0000115 "A conserved multimeric membrane-associated complex involved in retrograde transport from endosomes to the Golgi apparatus. For example, the budding yeast retromer comprises Vps35p, Vps29p, Vps26p, Vps5p, and Vps17p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030904"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0012505, + obo:GO_0043234 + + +Class: obo:GO_0071193 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15356203"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the Kv channel interacting protein KChIP2 associated with the channel via interaction with the Kv alpha subunit 4.2."^^xsd:string, + oboInOwl:hasDbXref "CORUM:607"^^xsd:string, + rdfs:label "Kv4.2-KChIP2 channel complex"^^xsd:string, + oboInOwl:id "GO:0071193"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0030905 + + Annotations: + rdfs:label "retromer complex, outer shell"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9700157"^^xsd:string + obo:IAO_0000115 "One of two subcomplexes that combine to form the retromer, believed to be peripherally associated with the membrane. The budding yeast complex comprises Vps5p and Vps17p, and may contain multiple copies of a Vps5p/Vps17p dimer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030905"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030904, + obo:GO_0043234 + + +Class: obo:GO_0071190 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v7 and protocadherin-gamma-b2, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0071190"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1018"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdha7-Pcdhgb4 complex"^^xsd:string, + rdfs:label "protocadherin-alpha-v7-protocadherin-gamma-b2 complex"^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071191 + + Annotations: + rdfs:label "protocadherin-alpha-v7-protocadherin-gamma-b4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1020"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdha7-Pcdhgb2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v7 and protocadherin-gamma-b4, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0071191"^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0016035 + + Annotations: + oboInOwl:id "GO:0016035"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16631579"^^xsd:string, + oboInOwl:hasDbXref "PMID:16971464"^^xsd:string + obo:IAO_0000115 "A heterodimeric DNA polymerase complex that catalyzes error-prone DNA synthesis in contexts such as translesion synthesis and double-stranded break repair. First characterized in Saccharomyces, in which the subunits are Rev3p and Rev7p; a third protein, Rev1p, is often associated with the polymerase dimer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "zeta DNA polymerase complex"^^xsd:string + + SubClassOf: + obo:GO_0042575, + obo:GO_0044446 + + +Class: obo:GO_0070618 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070618"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2545"^^xsd:string + oboInOwl:hasNarrowSynonym "Grb2-mSos1 complex"^^xsd:string, + rdfs:label "Grb2-Sos complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7798267"^^xsd:string, + oboInOwl:hasDbXref "PMID:8940013"^^xsd:string + obo:IAO_0000115 "A protein complex that contains Grb2 and the guanine nucleotide exchange factor Sos (or an ortholog thereof, such as mSos1), and is involved in linking EGFR activation to the p21-Ras pathway."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0008091 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008091"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao536287099"^^xsd:string, + rdfs:label "spectrin"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Spectrin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Membrane associated dimeric protein (240 and 220 kDa) of erythrocytes. Forms a complex with ankyrin, actin and probably other components of the membrane cytoskeleton, so that there is a mesh of proteins underlying the plasma membrane, potentially restricting the lateral mobility of integral proteins."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030864, + obo:GO_0044430, + obo:GO_0044448 + + +Class: obo:GO_0070619 + + Annotations: + rdfs:label "Shc-Grb2-Sos complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2553"^^xsd:string + oboInOwl:hasNarrowSynonym "Shc-Grb2-mSos1 complex, EGF stimulated"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070619"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7970708"^^xsd:string, + oboInOwl:hasDbXref "PMID:8940013"^^xsd:string + obo:IAO_0000115 "A protein complex that contains Grb2, the adaptor protein Shc and the guanine nucleotide exchange factor Sos (or an ortholog thereof, such as mSos1), and is involved in linking EGFR activation to the p21-Ras pathway."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071177 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MAML2-RBP-Jkappa-ICN3 complex"^^xsd:string, + oboInOwl:id "GO:0071177"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3218"^^xsd:string + oboInOwl:hasExactSynonym "MAML2-RBP-Jkappa-Notch3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch3 (ICN3), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-2 (MAML2); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0071176 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MAML2-RBP-Jkappa-ICN2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3217"^^xsd:string + oboInOwl:hasExactSynonym "MAML2-RBP-Jkappa-Notch2 complex"^^xsd:string, + oboInOwl:id "GO:0071176"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch2 (ICN2), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-2 (MAML2); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0071179 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3220"^^xsd:string + oboInOwl:hasExactSynonym "MAML3-RBP-Jkappa-Notch1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch1 (ICN1), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-3 (MAML3); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string, + oboInOwl:id "GO:0071179"^^xsd:string, + rdfs:label "MAML3-RBP-Jkappa-ICN1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0071178 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3219"^^xsd:string + oboInOwl:hasExactSynonym "MAML2-RBP-Jkappa-Notch4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071178"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch4 (ICN4), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-2 (MAML2); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string, + rdfs:label "MAML2-RBP-Jkappa-ICN4 complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0071183 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains two cell adhesion molecules, a protocadherin-alpha and a protocadherin-gamma, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + rdfs:label "protocadherin-alpha-protocadherin-gamma complex"^^xsd:string, + oboInOwl:id "GO:0071183"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071184 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1014"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdhga1-Pcdha4 complex"^^xsd:string, + rdfs:label "protocadherin-alpha-v4-protocadherin-gamma-a1 complex"^^xsd:string, + oboInOwl:id "GO:0071184"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v4 and protocadherin-gamma-a1, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071185 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1016"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdhga1-Pcdhga3 complex"^^xsd:string, + rdfs:label "protocadherin-alpha-v4-protocadherin-gamma-a3 complex"^^xsd:string, + oboInOwl:id "GO:0071185"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v4 and protocadherin-gamma-a3, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071186 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:1015"^^xsd:string + oboInOwl:hasNarrowSynonym "Pcdhga1-Pcdhgb2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15347688"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell adhesion molecules protocadherin-alpha-v4 and protocadherin-gamma-b2, and is involved in the regulation of protein localization to the plasma membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protocadherin-alpha-v4-protocadherin-gamma-b2 complex"^^xsd:string, + oboInOwl:id "GO:0071186"^^xsd:string + + SubClassOf: + obo:GO_0071183 + + +Class: obo:GO_0071180 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch2 (ICN2), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-3 (MAML3); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MAML3-RBP-Jkappa-ICN2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3221"^^xsd:string + oboInOwl:hasExactSynonym "MAML3-RBP-Jkappa-Notch2 complex"^^xsd:string, + oboInOwl:id "GO:0071180"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0030914 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the cellular component term 'SAGA complex ; GO:0000124'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11564863"^^xsd:string + obo:IAO_0000115 "A large multiprotein complex that possesses histone acetyltransferase and is involved in regulation of transcription. The composition is similar to that of the SAGA complex; for example, the human complex contains the transcription-transformation cofactor TRRAP, hGCN5L acetylase, novel human ADA-like and SPT-like cofactors, and a subset of TAFs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18838386"^^xsd:string + oboInOwl:hasExactSynonym "SPT3-TAF9-GCN5 acetylase complex"^^xsd:string, + rdfs:label "STAGA complex"^^xsd:string, + oboInOwl:hasExactSynonym "STAGA coactivator complex"^^xsd:string, + oboInOwl:id "GO:0030914"^^xsd:string + + SubClassOf: + obo:GO_0070461 + + +Class: obo:GO_0071181 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch3 (ICN3), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-3 (MAML3); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string, + rdfs:label "MAML3-RBP-Jkappa-ICN3 complex"^^xsd:string, + oboInOwl:id "GO:0071181"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3222"^^xsd:string + oboInOwl:hasExactSynonym "MAML3-RBP-Jkappa-Notch3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0030915 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Smc5-Smc6 complex"^^xsd:string, + oboInOwl:id "GO:0030915"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:14701739"^^xsd:string + obo:IAO_0000115 "A conserved complex that contains a heterodimer of SMC proteins (Smc5p and Smc6p, or homologs thereof) and several other proteins, and is involved in DNA repair and maintaining cell cycle arrest following DNA damage. In S. cerevisiae, this is an octameric complex called Mms21-Smc5-Smc6 complex, with at least five of its subunits conserved in fission yeast and humans."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0000793 + + +Class: obo:GO_0071182 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3223"^^xsd:string + oboInOwl:hasExactSynonym "MAML3-RBP-Jkappa-Notch4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MAML3-RBP-Jkappa-ICN4 complex"^^xsd:string, + oboInOwl:id "GO:0071182"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch4 (ICN4), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-3 (MAML3); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0070519 + + Annotations: + rdfs:label "alpha4-beta1 integrin-CD63 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2424"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-CD63 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8757325"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to membrane protein CD63, a member of the tetraspan family."^^xsd:string, + oboInOwl:id "GO:0070519"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070517 + + Annotations: + rdfs:label "DNA replication factor C core complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:278"^^xsd:string + oboInOwl:hasExactSynonym "RFC core complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0070517"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8692848"^^xsd:string, + oboInOwl:hasDbXref "PMID:9228079"^^xsd:string, + oboInOwl:hasDbXref "PMID:9582326"^^xsd:string + obo:IAO_0000115 "A protein complex containing three of the five subunits of eukaryotic replication factor C, those corresponding to human p40, p38, and p37."^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0043599, + obo:GO_0043234 + + +Class: obo:GO_0070518 + + Annotations: + rdfs:label "alpha4-beta1 integrin-CD53 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2420"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-CD53 complex"^^xsd:string, + oboInOwl:id "GO:0070518"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8757325"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to membrane protein CD53, a member of the tetraspan family."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070515 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-talin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2378"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2b-ITGB3-TLN1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8663236"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to talin."^^xsd:string, + oboInOwl:id "GO:0070515"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070516 + + Annotations: + rdfs:label "CAK-ERCC2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8692841"^^xsd:string, + oboInOwl:hasDbXref "PMID:8692842"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the cyclin-dependent protein kinase activating kinase (CAK) holoenzyme complex with ERCC2."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "cyclin-dependent protein kinase activating kinase holoenzyme-ERCC2 complex"^^xsd:string, + oboInOwl:id "GO:0070516"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070514 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8617811"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that contains the serum response factor (SRF) and the basic helix-loop-helix proteins myogenin and E12, and is involved in activating transcription of muscle-specific genes."^^xsd:string, + rdfs:label "SRF-myogenin-E12 complex"^^xsd:string, + oboInOwl:id "GO:0070514"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0031988 + + Annotations: + oboInOwl:inSubset , + rdfs:label "membrane-bounded vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031988"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any small, fluid-filled, spherical organelle enclosed by a lipid bilayer."^^xsd:string, + oboInOwl:hasExactSynonym "membrane-enclosed vesicle"^^xsd:string + + SubClassOf: + obo:GO_0031982 + + +Class: obo:GO_0070621 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "EGFR-Shc-Grb2-Sos complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7798267"^^xsd:string, + oboInOwl:hasDbXref "PMID:8940013"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the epidermal growth factor receptor (EGFR), Grb2, the adaptor protein SHC and the guanine nucleotide exchange factor Sos (or an ortholog thereof, such as mSos1), and is involved in linking EGFR activation to the p21-Ras pathway."^^xsd:string, + oboInOwl:id "GO:0070621"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031985 + + Annotations: + rdfs:label "Golgi cisterna"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031985"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any of the thin, flattened membrane-bounded compartments that form the central portion of the Golgi complex."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005795, + obo:GO_0044431, + obo:GO_0031984 + + +Class: obo:GO_0070622 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "UDP-N-acetylglucosamine-lysosomal-enzyme N-acetylglucosaminephosphotransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8940155"^^xsd:string + oboInOwl:hasExactSynonym "UDP-N-acetylglucosamine:lysosomal-enzyme N-acetylglucosamine-1-phosphotransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:406"^^xsd:string + oboInOwl:hasRelatedSynonym "N-acetylglucosamine-1-phosphotransferase complex"^^xsd:string, + oboInOwl:id "GO:0070622"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8940155"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses UDP-N-acetylglucosamine-lysosomal-enzyme N-acetylglucosaminephosphotransferase activity; the bovine complex contains disulfide-linked homodimers of 166- and 51-kDa subunits and two identical, noncovalently associated 56-kDa subunits."^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0005764, + obo:GO_0043234 + + +Class: obo:GO_0031986 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Proteinoplast"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031986"^^xsd:string, + rdfs:label "proteinoplast"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "A leucoplast in which protein is stored."^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0031983 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao797538226"^^xsd:string, + oboInOwl:id "GO:0031983"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane or protein that forms a vesicle."^^xsd:string, + rdfs:label "vesicle lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031988, + obo:GO_0043233 + + +Class: obo:GO_0070620 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2548"^^xsd:string + oboInOwl:hasNarrowSynonym "Egfr-Grb2-mSos1 complex, EGF stimulated"^^xsd:string, + rdfs:label "EGFR-Grb2-Sos complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7798267"^^xsd:string, + oboInOwl:hasDbXref "PMID:8940013"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the epidermal growth factor receptor (EGFR), Grb2 and the guanine nucleotide exchange factor Sos (or an ortholog thereof, such as mSos1), and is involved in linking EGFR activation to the p21-Ras pathway."^^xsd:string, + oboInOwl:id "GO:0070620"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031984 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to membrane-bounded compartments that are not considered organelles in their own right, but form parts of larger organelles."^^xsd:string, + oboInOwl:id "GO:0031984"^^xsd:string, + oboInOwl:hasExactSynonym "suborganelle compartment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "A compartment that consists of a lumen and an enclosing membrane, and is part of an organelle."^^xsd:string, + rdfs:label "organelle subcompartment"^^xsd:string + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0043227 + + +Class: obo:GO_0017109 + + Annotations: + + Annotations: oboInOwl:hasDbXref "EC:6.3.2.2"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the ligation of glutamate to cysteine, forming glutamylcysteine."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "glutamate-cysteine ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-glutamylcysteine synthetase complex"^^xsd:string, + oboInOwl:id "GO:0017109"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0017101 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:16169847"^^xsd:string + obo:IAO_0000115 "A multienzyme complex found in all multicellular eukaryotes composed of eight proteins with aminoacyl-tRNA synthetase activities (abbreviated as: ArgRS, AspRS, GluProRS, GlnRS, IleRS, LeuRS, LysRS, MetRS where RS is the enzyme, preceded by the amino acid it uses as a substrate) as well as three non-synthetase proteins (p43, p38, and p18) with diverse functions. Several of these subunits are known dimers, so the total polypeptide count in the multisynthetase complex is at least fifteen. All of the enzymes in this assembly catalyze the same reaction, the covalent attachment of an amino acid to either the 2'- or 3'-hydroxyl of the 3'-terminal adenosine of tRNA, but using different substrates."^^xsd:string, + oboInOwl:id "GO:0017101"^^xsd:string, + oboInOwl:hasExactSynonym "aminoacyl-tRNA synthetase complex"^^xsd:string, + rdfs:label "aminoacyl-tRNA synthetase multienzyme complex"^^xsd:string, + oboInOwl:hasExactSynonym "multisynthetase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0017102 + + Annotations: + rdfs:label "methionyl glutamyl tRNA synthetase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0017102"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:11069915"^^xsd:string + obo:IAO_0000115 "A complex consisting of methionyl- and glutamyl-tRNA synthetases. The tRNA synthetases present in the complex bind to their cognate tRNAs more efficiently than they do as monomers."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0043509 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "activin A complex"^^xsd:string, + rdfs:comment "Note that the actions of the activin complex are the opposite of those of the inhibin complex, which is a dimer of an inhibin beta-A or inhibin beta-B subunit and an inhibin alpha subunit. See also the cellular component term 'inhibin complex ; GO:0043511'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "A nonsteroidal regulator, composed of two covalently linked inhibin beta-A subunits (sometimes known as activin beta-A or activin/inhibin beta-A)."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0048181"^^xsd:string, + oboInOwl:id "GO:0043509"^^xsd:string + + SubClassOf: + obo:GO_0048180 + + +Class: obo:GO_0070505 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:12930826"^^xsd:string, + oboInOwl:hasDbXref "PMID:15012271"^^xsd:string + obo:IAO_0000115 "A layer of extracellular matrix deposited onto the surface of the pollen wall upon disintegration of the tapetal layer of the anther wall in the late stages of pollen development. The composition of this material is highly heterogeneous and includes waxes, lipid droplets, small aromatic molecules, and proteins. The pollen coat is proposed to have many functions, such as holding pollen in the anther until dispersal, facilitation of pollen dispersal, protection of pollen from water loss and UV radiation, and facilitation of adhesion of pollen to the stigma."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15012271"^^xsd:string + oboInOwl:hasExactSynonym "pollenkitt"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15012271"^^xsd:string + oboInOwl:hasExactSynonym "tryphine"^^xsd:string, + rdfs:label "pollen coat"^^xsd:string, + oboInOwl:id "GO:0070505"^^xsd:string + + SubClassOf: + obo:GO_0044420 + + +Class: obo:GO_0071199 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the peptidase-related protein DPP10 associated with the channel via interaction with the Kv alpha subunit 4.1."^^xsd:string, + oboInOwl:hasDbXref "CORUM:601"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071199"^^xsd:string, + rdfs:label "Kv4.1-DPP10 channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + oboInOwl:hasExactSynonym "Kv4.1-DPPY channel complex"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0031976 + + Annotations: + rdfs:label "plastid thylakoid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "Any thylakoid within a plastid."^^xsd:string, + oboInOwl:id "GO:0031976"^^xsd:string + + EquivalentTo: + obo:GO_0009579 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0009579, + obo:GO_0031984 + + +Class: obo:GO_0071198 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the peptidase-related protein DPP6 associated with the channel via interaction with the Kv alpha subunit 4.1."^^xsd:string, + rdfs:label "Kv4.1-DPP6 channel complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "CORUM:600"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + oboInOwl:hasExactSynonym "Kv4.1-DPPX channel complex"^^xsd:string, + oboInOwl:id "GO:0071198"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0031977 + + Annotations: + rdfs:label "thylakoid lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The volume enclosed by a thylakoid membrane."^^xsd:string, + oboInOwl:id "GO:0031977"^^xsd:string + + SubClassOf: + obo:GO_0044436 + + +Class: obo:GO_0031978 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plastid thylakoid lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by a plastid thylakoid membrane."^^xsd:string, + oboInOwl:id "GO:0031978"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0031977, + obo:BFO_0000050 some obo:GO_0031976 + + +Class: obo:GO_0001891 + + Annotations: + oboInOwl:id "GO:0001891"^^xsd:string, + rdfs:label "phagocytic cup"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10358769"^^xsd:string + obo:IAO_0000115 "An invagination of the cell membrane formed by an actin dependent process during phagocytosis. Following internalization it is converted into a phagosome."^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0031979 + + Annotations: + rdfs:label "plasma membrane-derived thylakoid lumen"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane thylakoid lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The volume enclosed by a plasma membrane-derived thylakoid."^^xsd:string, + oboInOwl:id "GO:0031979"^^xsd:string + + SubClassOf: + obo:GO_0031977, + obo:GO_0044459, + obo:GO_0060205, + obo:BFO_0000050 some obo:GO_0030075 + + +Class: obo:GO_0031972 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of a chloroplast envelope."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast envelope lumen"^^xsd:string, + rdfs:label "chloroplast intermembrane space"^^xsd:string, + oboInOwl:id "GO:0031972"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009941, + obo:GO_0044434, + obo:GO_0009529 + + +Class: obo:GO_0031973 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of a chromoplast envelope."^^xsd:string, + oboInOwl:hasExactSynonym "chromoplast envelope lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chromoplast intermembrane space"^^xsd:string, + oboInOwl:id "GO:0031973"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031898, + obo:GO_0009529 + + +Class: obo:GO_0043505 + + Annotations: + oboInOwl:id "GO:0043505"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:15175412"^^xsd:string, + oboInOwl:hasDbXref "PMID:16183641"^^xsd:string + obo:IAO_0000115 "A form of nucleosome located only at the centromere, in which the histone H3 is replaced by the variant form CENP-A (sometimes known as CenH3)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "centromere-specific nucleosome"^^xsd:string, + oboInOwl:hasExactSynonym "centromeric nucleosome"^^xsd:string, + oboInOwl:hasExactSynonym "centromere specific nucleosome"^^xsd:string + + SubClassOf: + obo:GO_0000786, + obo:BFO_0000050 some obo:GO_0000939 + + +Class: obo:GO_0031974 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The enclosed volume within a sealed membrane or between two sealed membranes. Encompasses the volume enclosed by the membranes of a particular organelle, e.g. endoplasmic reticulum lumen, or the space between the two lipid bilayers of a double membrane surrounding an organelle, e.g. nuclear envelope lumen."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031974"^^xsd:string, + rdfs:label "membrane-enclosed lumen"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0031975 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "A multilayered structure surrounding all or part of a cell; encompasses one or more lipid bilayers, and may include a cell wall layer; also includes the space between layers."^^xsd:string, + oboInOwl:id "GO:0031975"^^xsd:string, + rdfs:label "envelope"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0031982 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0031982"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "Any small, fluid-filled, spherical organelle enclosed by membrane or protein."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Vesicle_(biology)"^^xsd:string, + rdfs:label "vesicle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao221389602"^^xsd:string + + SubClassOf: + obo:GO_0043226 + + +Class: obo:GO_0017117 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "ssDNA-dependent ATP-dependent DNA helicase complex"^^xsd:string, + oboInOwl:id "GO:0017117"^^xsd:string, + rdfs:label "single-stranded DNA-dependent ATP-dependent DNA helicase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses single-stranded DNA-dependent DNA helicase activity."^^xsd:string + + SubClassOf: + obo:GO_0033202 + + +Class: obo:GO_0031981 + + Annotations: + rdfs:label "nuclear lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the nuclear inner membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031981"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0070013 + + +Class: obo:GO_0070118 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "organellar chromatophore thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer membrane of any thylakoid within an organellar chromatophore."^^xsd:string, + oboInOwl:id "GO:0070118"^^xsd:string + + SubClassOf: + obo:GO_0042651, + obo:BFO_0000050 some obo:GO_0070116, + obo:GO_0044433 + + +Class: obo:GO_0070117 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by an organellar chromatophore thylakoid membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore thylakoid lumen"^^xsd:string, + rdfs:label "organellar chromatophore thylakoid lumen"^^xsd:string, + oboInOwl:id "GO:0070117"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070116, + obo:GO_0031977, + obo:GO_0044433 + + +Class: obo:GO_0043510 + + Annotations: + oboInOwl:hasAlternativeId "GO:0048182"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the actions of the activin complex are the opposite of those of the inhibin complex, which is a dimer of an inhibin beta-A or inhibin beta-B subunit and a inhibin alpha subunit. See 'inhibin complex ; GO:0043511'."^^xsd:string, + oboInOwl:id "GO:0043510"^^xsd:string, + rdfs:label "activin B complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "A nonsteroidal regulator, composed of two covalently linked inhibin beta-B subunits (sometimes known as activin beta-B or activin/inhibin beta-B)."^^xsd:string + + SubClassOf: + obo:GO_0048180 + + +Class: obo:GO_0017119 + + Annotations: + rdfs:label "Golgi transport complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "Sec34/35 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:9792665"^^xsd:string + obo:IAO_0000115 "A complex of proteins that, in vitro, stimulates intra-Golgi transport; a 13S complex, about 800 kDa in size and consists of at least five polypeptides. In yeast, this complex is called the Sec34/35 complex and is composed of eight subunits (Sec34p, Sec35p, Dor1p, Cod1p, Cod2p, Cod3p, Cod4p, and Cod5p)."^^xsd:string, + oboInOwl:hasExactSynonym "COG complex"^^xsd:string, + oboInOwl:hasExactSynonym "conserved oligomeric Golgi complex"^^xsd:string, + oboInOwl:id "GO:0017119"^^xsd:string + + SubClassOf: + obo:GO_0044431, + obo:GO_0043234 + + +Class: obo:GO_0070114 + + Annotations: + oboInOwl:id "GO:0070114"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore outer membrane"^^xsd:string, + rdfs:label "organellar chromatophore outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, of the two lipid bilayers surrounding an organellar chromatophore."^^xsd:string + + SubClassOf: + obo:GO_0043661, + obo:GO_0070112 + + +Class: obo:GO_0070113 + + Annotations: + oboInOwl:id "GO:0070113"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore inner membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, of the two lipid bilayers surrounding an organellar chromatophore."^^xsd:string, + rdfs:label "organellar chromatophore inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0070112 + + +Class: obo:GO_0070116 + + Annotations: + oboInOwl:id "GO:0070116"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "organellar chromatophore thylakoid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore thylakoid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A thylakoid located in an organellar chromatophore."^^xsd:string + + SubClassOf: + obo:GO_0009579, + obo:BFO_0000050 some obo:GO_0070111, + obo:GO_0044433 + + +Class: obo:GO_0045009 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chitosome"^^xsd:string, + oboInOwl:id "GO:0045009"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "PMID:8970154"^^xsd:string + obo:IAO_0000115 "An intracellular membrane-bounded particle found in fungi and containing chitin synthase; it synthesizes chitin microfibrils. Chitin synthase activity exists in chitosomes and they are proposed to act as a reservoir for regulated transport of chitin synthase enzymes to the division septum."^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0070115 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers that surround an organellar chromatophore."^^xsd:string, + oboInOwl:id "GO:0070115"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore intermembrane space"^^xsd:string, + rdfs:label "organellar chromatophore intermembrane space"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070111, + obo:GO_0044433 + + +Class: obo:GO_0070110 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12707266"^^xsd:string + obo:IAO_0000115 "A protein complex that acts as a receptor for the cytokine ciliary neurotrophic factor (CNTF). In humans the receptor complex is a hexamer composed of two molecules each of CNTF and CNTFR and one molecule each of gp130 and LIFR."^^xsd:string, + oboInOwl:id "GO:0070110"^^xsd:string, + rdfs:label "ciliary neurotrophic factor receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0070112 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Paulinella-type chromatophore membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround an organellar chromatophore."^^xsd:string, + oboInOwl:id "GO:0070112"^^xsd:string, + rdfs:label "organellar chromatophore membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070111, + obo:GO_0030659 + + +Class: obo:GO_0070111 + + Annotations: + rdfs:label "organellar chromatophore"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070111"^^xsd:string, + oboInOwl:hasExactSynonym "Paulinella-type chromatophore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_mm"^^xsd:string, + oboInOwl:hasDbXref "PMID:18356055"^^xsd:string + obo:IAO_0000115 "A bacteroid-containing symbiosome in which the bacterial component is a genetically highly reduced cyanobacterium that is photosynthetically active and incapable of an independent existence outside its host. The chromatophore functions as a photosynthetic organelle, and has been found and characterized in the amoeba Paulinella chromatophora."^^xsd:string + + SubClassOf: + obo:GO_0043660 + + +Class: obo:GO_0071149 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11358867"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that is composed of the DNA biding protein TEAD-2 and the transcriptional coactivator YAP."^^xsd:string, + oboInOwl:id "GO:0071149"^^xsd:string, + rdfs:label "TEAD-2-YAP complex"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071147 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2870"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11358867"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the DNA binding protein TEAD-2 bound to 12 other polypeptides including the transcriptional coactivator YAP, the multi-PDZ domain protein MPDZ (also called MUPP1), a 14-3-3 domain protein, and others."^^xsd:string, + oboInOwl:id "GO:0071147"^^xsd:string, + rdfs:label "TEAD-2 multiprotein complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0071148 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "TEAD-1-YAP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11358867"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that is composed of the DNA biding protein TEAD-1 and the transcriptional coactivator YAP."^^xsd:string, + oboInOwl:id "GO:0071148"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071145 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9670020"^^xsd:string + obo:IAO_0000115 "A heteromeric SMAD protein complex that contains SMAD2 and SMAD4."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3001"^^xsd:string + oboInOwl:hasExactSynonym "SMAD2-SMAD4 heteromer complex"^^xsd:string, + rdfs:label "SMAD2-SMAD4 protein complex"^^xsd:string, + oboInOwl:id "GO:0071145"^^xsd:string + + SubClassOf: + obo:GO_0071141 + + +Class: obo:GO_0034245 + + Annotations: + oboInOwl:hasExactSynonym "mitochondrial RNA polymerase holoenzyme complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial DNA-directed RNA polymerase complex"^^xsd:string, + oboInOwl:id "GO:0034245"^^xsd:string, + oboInOwl:hasBroadSynonym "mitochondrial RNA polymerase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7929382"^^xsd:string + obo:IAO_0000115 "A DNA-directed RNA polymerase complex located in the mitochondrion. Mitochondrial RNA polymerase is composed of two subunits, a catalytic core, which resembles the enzymes from bacteriophage T7 and T3, and a specificity factor required for promoter recognition, which is similar to members of the eubacterial sigma factor family. In S. cerevisiae, these are encoded by the nuclear genes RPO41 and MTF1 and the specificity factor, required for promoter recognition and initiation, is not present in the elongating form."^^xsd:string + + EquivalentTo: + obo:GO_0000428 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0000428, + obo:GO_0044429 + + +Class: obo:GO_0031968 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing in a cellular organelle, lipid bilayer of an organelle envelope."^^xsd:string, + rdfs:label "organelle outer membrane"^^xsd:string, + oboInOwl:id "GO:0031968"^^xsd:string + + SubClassOf: + obo:GO_0019867, + obo:GO_0044424, + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0031967 + + +Class: obo:GO_0071146 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3002"^^xsd:string + oboInOwl:hasExactSynonym "SMAD3-SMAD4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9670020"^^xsd:string + obo:IAO_0000115 "A heteromeric SMAD protein complex that contains SMAD3 and SMAD4."^^xsd:string, + rdfs:label "SMAD3-SMAD4 protein complex"^^xsd:string, + oboInOwl:id "GO:0071146"^^xsd:string + + SubClassOf: + obo:GO_0071141 + + +Class: obo:GO_0070533 + + Annotations: + rdfs:label "BRCA1-C complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15485915"^^xsd:string, + oboInOwl:hasDbXref "PMID:16391231"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the BRCA1-BARD1 heterodimer, CtIP and Mre11/Rad50/NBS1 (M/R/N) complex, and binds to DNA at DNA damage sites. BRCA1-C binding ta damaged DNA is required for DNA damage-induced Chk1 phosphorylation and the G2/M transition checkpoint."^^xsd:string, + oboInOwl:id "GO:0070533"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031967 + + Annotations: + rdfs:label "organelle envelope"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "A double membrane structure enclosing an organelle, including two lipid bilayers and the region between them. In some cases, an organelle envelope may have more than two membranes."^^xsd:string, + oboInOwl:id "GO:0031967"^^xsd:string + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0043227, + obo:GO_0031975 + + +Class: obo:GO_0071143 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SMAD3 protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9670020"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of a SMAD3 homotrimer."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3003"^^xsd:string + oboInOwl:hasExactSynonym "SMAD3 homotrimer complex"^^xsd:string, + oboInOwl:id "GO:0071143"^^xsd:string + + SubClassOf: + obo:GO_0071141 + + +Class: obo:GO_0070532 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BRCA1-B complex"^^xsd:string, + oboInOwl:id "GO:0070532"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16391231"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the BRCA1-BARD1 heterodimer, BACH1 and TopBP1, and binds to DNA during S phase at DNA damage sites."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031966 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround the mitochondrion and form the mitochondrial envelope."^^xsd:string, + oboInOwl:id "GO:0031966"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005740, + obo:GO_0031090, + obo:GO_0044429 + + +Class: obo:GO_0071144 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3000"^^xsd:string + oboInOwl:hasExactSynonym "SMAD2-SMAD3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9670020"^^xsd:string + obo:IAO_0000115 "A heteromeric SMAD protein complex that contains SMAD2 and SMAD3."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SMAD2-SMAD3 protein complex"^^xsd:string, + oboInOwl:id "GO:0071144"^^xsd:string + + SubClassOf: + obo:GO_0071141 + + +Class: obo:GO_0070531 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BRCA1-A complex"^^xsd:string, + oboInOwl:id "GO:0070531"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19261749"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the BRCA1-BARD1 heterodimer, RAP80/UIMC1, BRCC3/BRCC36, BRE/BRCC45, FAM175A/CCDC98/Abraxas and MERIT40/NBA1, and specifically recognizes and binds K63-linked polyubiquitin chains present on histone H2A and H2AX at DNA damage sites."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031965 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround the nucleus and form the nuclear envelope; excludes the intermembrane space."^^xsd:string, + rdfs:label "nuclear membrane"^^xsd:string, + oboInOwl:id "GO:0031965"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1687101204"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005635, + obo:GO_0031090, + obo:GO_0044428 + + +Class: obo:GO_0031969 + + Annotations: + oboInOwl:id "GO:0031969"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround a chloroplast and form the chloroplast envelope."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Chloroplast_membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009941, + obo:GO_0044434, + obo:GO_0042170 + + +Class: obo:GO_0070648 + + Annotations: + rdfs:label "formin-nucleated actin cable"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14671023"^^xsd:string, + oboInOwl:hasDbXref "PMID:16959963"^^xsd:string + obo:IAO_0000115 "An actin filament bundle that consists of short filaments organized into bundles of uniform polarity, and is nucleated by formins. In fungal cells, myosin motors transport cargo along actin cables toward sites of polarized cell growth; actin cables may play a similar role in pollen tube growth."^^xsd:string, + oboInOwl:id "GO:0070648"^^xsd:string + + SubClassOf: + obo:GO_0032432 + + +Class: obo:GO_0070645 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070645"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14612572"^^xsd:string + oboInOwl:hasExactSynonym "orbicule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14612572"^^xsd:string, + oboInOwl:hasDbXref "PMID:16524248"^^xsd:string + obo:IAO_0000115 "A small, granular structure that is found in the extracellular matrix of cell of the secretory tapetal layer that surrounds developing pollen grains. Ubisch bodies have a sporopollenin coat, are attached to the peritapetal wall, and may play a role in pollen development."^^xsd:string, + rdfs:label "Ubisch body"^^xsd:string + + SubClassOf: + obo:GO_0044420 + + +Class: obo:GO_0030018 + + Annotations: + rdfs:label "Z disc"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Platelike region of a muscle sarcomere to which the plus ends of actin filaments are attached."^^xsd:string, + oboInOwl:hasExactSynonym "Z band"^^xsd:string, + oboInOwl:hasExactSynonym "Z line"^^xsd:string, + oboInOwl:hasExactSynonym "Z disk"^^xsd:string, + oboInOwl:id "GO:0030018"^^xsd:string + + SubClassOf: + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0031674 + + +Class: obo:GO_0030017 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Sarcomere"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "sarcomere"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The repeating unit of a myofibril in a muscle cell, composed of an array of overlapping thick and thin filaments between two adjacent Z discs."^^xsd:string, + oboInOwl:id "GO:0030017"^^xsd:string + + SubClassOf: + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0030016 + + +Class: obo:GO_0030016 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "striated muscle fibre"^^xsd:string, + rdfs:label "myofibril"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Myofibril"^^xsd:string, + oboInOwl:hasExactSynonym "striated muscle fiber"^^xsd:string, + oboInOwl:id "GO:0030016"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The contractile element of skeletal and cardiac muscle; a long, highly organized bundle of actin, myosin, and other proteins that contracts by a sliding filament mechanism."^^xsd:string + + SubClassOf: + obo:GO_0043292 + + +Class: obo:GO_0030015 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11113136"^^xsd:string + obo:IAO_0000115 "The core of the CCR4-NOT transcription factor complex. In Saccharomyces the CCR4-NOT core complex comprises Ccr4p, Caf1p, Not1p, Not2p, Not3p, Not4p, and Not5p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030015"^^xsd:string, + rdfs:label "CCR4-NOT core complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030014, + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0030014 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030014"^^xsd:string, + rdfs:label "CCR4-NOT complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11113136"^^xsd:string + obo:IAO_0000115 "A large multimeric transcription factor complex that can regulate transcription positively or negatively; consists of a core complex plus additional proteins; may interact with other proteins to control initiation of transcription. In Saccharomyces the core complex comprises Ccr4p, Caf1p, Not1p, Not2p, Not3p, Not4p, and Not5p; Caf4p, Caf16p, and several less well characterized proteins."^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071153 + + Annotations: + oboInOwl:id "GO:0071153"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12509430"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the guanine nucleotide exchange factor synembrin with the alpha(o) subunit of a heterotrimeric G protein."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:174"^^xsd:string + oboInOwl:hasNarrowSynonym "Ric-8A G(o) alpha-2 subunit complex"^^xsd:string, + rdfs:label "G-protein alpha(o)-synembrin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:172"^^xsd:string + oboInOwl:hasNarrowSynonym "Ric-8A G(o) alpha-1 subunit complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0071152 + + Annotations: + oboInOwl:id "GO:0071152"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12509430"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the guanine nucleotide exchange factor synembrin with the alpha(q) subunit of a heterotrimeric G protein."^^xsd:string, + rdfs:label "G-protein alpha(q)-synembrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:175"^^xsd:string + oboInOwl:hasNarrowSynonym "Ric-8A G(q) alpha subunit complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0071151 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11358867"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that is composed of the DNA biding protein TEAD-4 and the transcriptional coactivator YAP."^^xsd:string, + oboInOwl:id "GO:0071151"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "TEAD-4-YAP complex"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071150 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071150"^^xsd:string, + rdfs:label "TEAD-3-YAP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11358867"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that is composed of the DNA biding protein TEAD-3 and the transcriptional coactivator YAP."^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0031970 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "organelle envelope lumen"^^xsd:string, + oboInOwl:id "GO:0031970"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of an organelle envelope."^^xsd:string, + oboInOwl:hasExactSynonym "organelle intermembrane space"^^xsd:string + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0031967, + obo:GO_0031974 + + +Class: obo:GO_0031143 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Pseudopod"^^xsd:string, + oboInOwl:hasExactSynonym "pseudopod"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A temporary protrusion or retractile process of a cell, associated with flowing movements of the protoplasm, and serving for locomotion and feeding."^^xsd:string, + rdfs:label "pseudopodium"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0031143"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0071136 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3105"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA7-ITGB1-LAMA2 complex"^^xsd:string, + oboInOwl:id "GO:0071136"^^xsd:string, + rdfs:label "alpha7-beta1 integrin-laminin alpha-2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17598176"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha7-beta1 integrin complex bound to laminin alpha-2."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071137 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:18032696"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to the cell surface antigen CD98."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071137"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3103"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-SLC3A2 complex"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-CD98 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070652 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mm2"^^xsd:string + oboInOwl:hasExactSynonym "HAUS augmin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "HAUS complex"^^xsd:string, + oboInOwl:id "GO:0070652"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19427217"^^xsd:string + obo:IAO_0000115 "A protein complex that localizes to interphase centrosomes and to mitotic spindle tubules and regulates mitotic spindle assembly and centrosome integrity; in human, the complex consists of eight subunits, some of which are homologous to subunits of the Drosophila Augmin complex."^^xsd:string + + SubClassOf: + obo:GO_0005875 + + +Class: obo:GO_0071138 + + Annotations: + rdfs:label "alpha5-beta5-fibronectin-SFRP2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071138"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14709558"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta5 integrin complex bound to fibronectin and secreted frizzled-related protein 2."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2388"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB5-FN-1-SFRP2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071132 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3114"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAX-ITGB2-ICAM4 complex"^^xsd:string, + oboInOwl:id "GO:0071132"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaX-beta2 integrin-ICAM-4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16985175"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaX-beta2 integrin complex bound to intercellular adhesion molecule 4."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070521 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:8757325"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to membrane protein CD82, a member of the tetraspan family."^^xsd:string, + oboInOwl:id "GO:0070521"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha4-beta1 integrin-CD82 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071133 + + Annotations: + oboInOwl:id "GO:0071133"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2989"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM8 complex"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM8 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16995821"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM8."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070520 + + Annotations: + oboInOwl:id "GO:0070520"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10229664"^^xsd:string, + oboInOwl:hasDbXref "PMID:8757325"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to membrane protein CD81, a member of the tetraspan family."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2419"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-CD81 complex"^^xsd:string, + rdfs:label "alpha4-beta1 integrin-CD81 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071134 + + Annotations: + oboInOwl:id "GO:0071134"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17413041"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to thrombospondin-1."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-thrombospondin-1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2967"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-THBS1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071135 + + Annotations: + oboInOwl:id "GO:0071135"^^xsd:string, + rdfs:label "alpha7-beta1 integrin-focal adhesion kinase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3106"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA7-ITGB1-PTK2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17598176"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha7-beta1 integrin complex bound to focal adhesion kinase."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070522 + + Annotations: + rdfs:comment "Note that process and function information are included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + oboInOwl:id "GO:0070522"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ERCC4-ERCC1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Rad1-Rad10 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14734547"^^xsd:string + obo:IAO_0000115 "A heterodimeric nucleotide-excision repair complex that has endonuclease activity specific for bubble structures characteristic of certain DNA lesions. The subunits are known as XPF/ERCC4 and ERCC1 in mammals, and Rad1p and Rad10p in S. cerevisiae."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14734547"^^xsd:string + oboInOwl:hasExactSynonym "XPF-ERCC1 complex"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0060204 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of the clathrin sculpted glutamate transport vesicle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted glutamate constitutive secretory pathway transport vesicle lumen"^^xsd:string, + oboInOwl:id "GO:0060204"^^xsd:string, + rdfs:label "clathrin sculpted glutamate transport vesicle lumen"^^xsd:string + + SubClassOf: + obo:GO_0060205, + obo:BFO_0000050 some obo:GO_0060199 + + +Class: obo:GO_0060205 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060205"^^xsd:string, + rdfs:label "cytoplasmic membrane-bounded vesicle lumen"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic membrane-enclosed vesicle lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a cytoplasmic membrane-bounded vesicle."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016023, + obo:GO_0044433, + obo:GO_0031983 + + +Class: obo:GO_0060202 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060202"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of the clathrin sculpted acetylcholine transport vesicle."^^xsd:string, + rdfs:label "clathrin sculpted acetylcholine transport vesicle lumen"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted acetylcholine constitutive secretory pathway transport vesicle lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0060200, + obo:GO_0060205 + + +Class: obo:GO_0060203 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin sculpted glutamate transport vesicle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted glutamate constitutive secretory pathway transport vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0060203"^^xsd:string, + rdfs:label "clathrin sculpted glutamate transport vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0030658, + obo:GO_0030665, + obo:BFO_0000050 some obo:GO_0060199 + + +Class: obo:GO_0060200 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "clathrin sculpted acetylcholine transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted acetylcholine constitutive secretory pathway transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "A clathrin sculpted lipid bilayer membrane-enclosed vesicle after clathrin release and containing acetylcholine."^^xsd:string, + oboInOwl:id "GO:0060200"^^xsd:string + + SubClassOf: + obo:GO_0030133, + obo:GO_0060198 + + +Class: obo:GO_0060201 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin sculpted acetylcholine transport vesicle."^^xsd:string, + rdfs:label "clathrin sculpted acetylcholine transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted acetylcholine constitutive secretory pathway transport vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0060201"^^xsd:string + + SubClassOf: + obo:GO_0030658, + obo:GO_0030665, + obo:BFO_0000050 some obo:GO_0060200 + + +Class: obo:GO_0090406 + + Annotations: + rdfs:comment "Carries the male gametes to into or near the ovule. May be branched in gymnosperms. This term replaces the obsolete term PO:0006345. Part of pollen tube cell (PO:0025195)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PO:0025195"^^xsd:string, + oboInOwl:hasDbXref "PO:0025281"^^xsd:string + obo:IAO_0000115 "A tubular cell projection that is part of a pollen tube cell and extends from a pollen grain."^^xsd:string, + oboInOwl:id "GO:0090406"^^xsd:string, + rdfs:label "pollen tube"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0030008 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030008"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17287728"^^xsd:string, + oboInOwl:hasDbXref "PMID:9564032"^^xsd:string + obo:IAO_0000115 "A large complex present on the cis-Golgi that acts prior to SNARE complex assembly to mediate vesicle docking and fusion. Ras guanyl-nucleotide exchange factor activity has been demonstrated for this complex in S. cerevisiae."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:TRAPP_complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasNarrowSynonym "TRAPP2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasNarrowSynonym "TRAPP1"^^xsd:string, + oboInOwl:hasExactSynonym "transport protein particle"^^xsd:string, + rdfs:label "TRAPP complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005801, + obo:GO_0043234, + obo:GO_0044431 + + +Class: obo:GO_0090405 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0090405"^^xsd:string, + rdfs:comment "Unicellular trichome branch is part of unicellular trichome, which is a narrow synonym of trichome cell (PO:0008030). For a cell that forms a branch of a multicellular trichome, see multicellular trichome branch cell (PO:0025163)."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "A cell projection part that is a branch of a unicellular trichome."^^xsd:string, + rdfs:label "unicellular trichome branch"^^xsd:string + + SubClassOf: + obo:GO_0044463 + + +Class: obo:GO_0009656 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Pigment-protein complex primarily associated to PSII in plants, green algae and cyanobacteria. Involved in state transitions that cause migration to PSI under certain environmental conditions such as high light."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "PSII associated light-harvesting complex II, peripheral complex"^^xsd:string, + oboInOwl:id "GO:0009656"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:GO_0044434, + obo:BFO_0000050 some obo:GO_0009517, + obo:GO_0043234 + + +Class: obo:GO_0030956 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030956"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + oboInOwl:hasRelatedSynonym "AdT"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + oboInOwl:hasNarrowSynonym "GatCAB"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + oboInOwl:hasNarrowSynonym "GatFAB"^^xsd:string, + rdfs:label "glutamyl-tRNA(Gln) amidotransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses glutamyl-tRNA(Gln) amidotransferase activity, and therefore creates Gln-tRNA by amidating Glu-tRNA; usually composed of 3 subunits: A, B, and C. Note that the C subunit may not be required in all organisms."^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function possessed by this complex is represented by the molecular function term 'glutaminyl-tRNA synthase (glutamine-hydrolyzing) activity ; GO:0050567'."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0090404 + + Annotations: + oboInOwl:id "GO:0090404"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "pollen tube tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PO:0025195"^^xsd:string, + oboInOwl:hasDbXref "PO:0025281"^^xsd:string + obo:IAO_0000115 "The region at growing end of the pollen tube cell, where polarized growth occurs."^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0090406, + obo:GO_0035838 + + +Class: obo:GO_0071142 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9670020"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of a SMAD2 homotrimer."^^xsd:string, + oboInOwl:id "GO:0071142"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SMAD2 protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2999"^^xsd:string + oboInOwl:hasExactSynonym "SMAD2 homotrimer complex"^^xsd:string + + SubClassOf: + obo:GO_0071141 + + +Class: obo:GO_0071141 + + Annotations: + oboInOwl:id "GO:0071141"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9670020"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of SMAD proteins; may be homomeric or heteromeric."^^xsd:string, + rdfs:label "SMAD protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "SMAD complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0030958 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "RITS complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14704433"^^xsd:string + obo:IAO_0000115 "A protein complex required for heterochromatin assembly; contains an Argonaute homolog, a chromodomain protein, and at least one additional protein; named for RNA-induced initiation of transcriptional gene silencing."^^xsd:string, + oboInOwl:id "GO:0030958"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005720, + obo:GO_0044454, + obo:GO_0031332 + + +Class: obo:GO_0009655 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "PSII associated light-harvesting complex II, core complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "PSII associated light-harvesting complex II, core complex, LHCIIc subcomplex"^^xsd:string, + oboInOwl:id "GO:0009655"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "The pigment-protein complex primarily associated to PSII in higher plants, green algae and cyanobacteria that directly transfers electrons to the reaction center."^^xsd:string, + oboInOwl:hasNarrowSynonym "PSII associated light-harvesting complex II, core complex, LHCIIa subcomplex"^^xsd:string, + oboInOwl:hasNarrowSynonym "PSII associated light-harvesting complex II, core complex, LHCIId subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:GO_0044434, + obo:BFO_0000050 some obo:GO_0009517, + obo:GO_0043234 + + +Class: obo:GO_0009654 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Oxygen_evolving_complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009654"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "InterPro:IPR002683"^^xsd:string + obo:IAO_0000115 "A complex, composed of a cluster of manganese, calcium and chloride ions bound to extrinsic proteins, that catalyzes the splitting of water to O2 and 4 H+. In cyanobacteria there are five extrinsic proteins in OEC (PsbO, PsbP-like, PsbQ-like, PsbU and PsbV), while in plants there are only three (PsbO, PsbP and PsbQ)."^^xsd:string, + rdfs:label "oxygen evolving complex"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009523, + obo:GO_0043234 + + +Class: obo:GO_0070556 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8858156"^^xsd:string + obo:IAO_0000115 "A transcription factor TFIID complex that contains the TBP-associated factor TAF4B (also known as TAFII105 in human), a cell-type-specific variant of TAF4."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:485"^^xsd:string + oboInOwl:hasRelatedSynonym "TFIID complex, B-cell specific"^^xsd:string, + rdfs:label "TAF4B-containing transcription factor TFIID complex"^^xsd:string, + oboInOwl:id "GO:0070556"^^xsd:string + + SubClassOf: + obo:GO_0005669 + + +Class: obo:GO_0030424 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The long process of a neuron that conducts nerve impulses, usually away from the cell body to the terminals and varicosities, which are sites of storage and release of neurotransmitter."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Axon"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1770195789"^^xsd:string, + rdfs:label "axon"^^xsd:string, + oboInOwl:id "GO:0030424"^^xsd:string + + SubClassOf: + obo:GO_0043005 + + +Class: obo:GO_0070554 + + Annotations: + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-3-complexin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8824312"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, syntaxin 3, and a complexin (or orthologs thereof)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070554"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:842"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx3-Snap25-Vamp2-Cplx1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:842"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx3, Snap25, Vamp2, Cplx1)"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0070552 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BRISC complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19214193"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the FAM175B/ABRO1, BRCC3/BRCC36, BRE/BRCC45 and MERIT40/NBA1 proteins, and specifically cleaves K63-linked polyubiquitin chains."^^xsd:string, + oboInOwl:id "GO:0070552"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0030427 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any part of a cell where non-isotropic growth takes place."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030483"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0000134"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "site of polarized growth"^^xsd:string, + oboInOwl:id "GO:0030427"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0014803 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0014803"^^xsd:string, + rdfs:label "longitudinal sarcoplasmic reticulum lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of the longitudinal sarcoplasmic reticulum envelope. The longitudinal sarcoplasmic reticulum lumen is continuous with the lumen contained within the terminal cisternae."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0014801, + obo:GO_0033018 + + +Class: obo:GO_0031942 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:16247555"^^xsd:string, + oboInOwl:hasDbXref "PMID:16267274"^^xsd:string + obo:IAO_0000115 "Protease complex of the mitochondrial inner membrane whose catalytic residues lie on the intermembrane space side of the inner membrane; involved in mitochondrial protein turnover. Contains a subunit belonging to the AAA family of ATP-dependent metalloproteases."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "i-AAA complex"^^xsd:string, + oboInOwl:id "GO:0031942"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0030428 + + Annotations: + oboInOwl:hasExactSynonym "cross wall"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471940526"^^xsd:string + obo:IAO_0000115 "A structure composed of peptidoglycan and often chitin in addition to other materials. It usually forms perpendicular to the long axis of a cell or hypha and grows centripetally from the cell wall to the center of the cell and often functions in the compartmentalization of a cell into two daughter cells."^^xsd:string, + oboInOwl:id "GO:0030428"^^xsd:string, + rdfs:label "cell septum"^^xsd:string, + oboInOwl:hasBroadSynonym "septum"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0014804 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0014804"^^xsd:string, + rdfs:label "terminal cisterna lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of the terminal cisterna envelope. This space is enriched in calsequestrin."^^xsd:string + + SubClassOf: + obo:GO_0033018, + obo:BFO_0000050 some obo:GO_0014802 + + +Class: obo:GO_0031941 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A two-stranded helical polymer of the protein actin."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Actin"^^xsd:string, + oboInOwl:hasExactSynonym "F-actin"^^xsd:string, + rdfs:label "filamentous actin"^^xsd:string, + rdfs:comment "Note that this term refers only to the actin portion of a microfilament, and does not encompass associated proteins. See also the cellular component term 'actin filament ; GO:0005884'."^^xsd:string, + oboInOwl:id "GO:0031941"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005884, + obo:GO_0044430, + obo:GO_0043234 + + +Class: obo:GO_0014801 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "The portion of the free sarcoplasmic reticulum consisting of longitudinal tubules that connect terminal cisternae."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0014801"^^xsd:string, + rdfs:label "longitudinal sarcoplasmic reticulum"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016529, + obo:GO_0044432 + + +Class: obo:GO_0030425 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Dendrite"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1211023249"^^xsd:string, + rdfs:label "dendrite"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dos"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:nln"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A neuron projection that has a short, tapering, often branched, morphology, receives and integrates signals from other neurons or from sensory stimuli, and conducts a nerve impulse towards the axon or the cell body. In most neurons, the impulse is conveyed from dendrites to axon via the cell body, but in some types of unipolar neuron, the impulse does not travel via the cell body."^^xsd:string, + oboInOwl:id "GO:0030425"^^xsd:string + + SubClassOf: + obo:GO_0043005 + + +Class: obo:GO_0000399 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "Any of a series of septin structures that are localized in the bud neck of a budding fungal cell during the cell cycle."^^xsd:string, + oboInOwl:id "GO:0000399"^^xsd:string, + rdfs:label "cellular bud neck septin structure"^^xsd:string + + SubClassOf: + obo:GO_0032155, + obo:BFO_0000050 some obo:GO_0005935 + + +Class: obo:GO_0014802 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Terminal_cisterna"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0014802"^^xsd:string, + rdfs:label "terminal cisterna"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "The portion of sarcoplasmic reticulum devoted to calcium ion storage and calcium ion release."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016529, + obo:GO_0044432, + obo:GO_0031984 + + +Class: obo:GO_0030426 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Growth_cone"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030426"^^xsd:string, + rdfs:label "growth cone"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The migrating motile tip of a growing nerve cell axon or dendrite."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043005, + obo:GO_0044463, + obo:GO_0030427 + + +Class: obo:GO_0070559 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:1379"^^xsd:string + oboInOwl:hasNarrowSynonym "GALNS-lysosomal hydrolase 1.27 MDa complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "lysosomal multienzyme complex"^^xsd:string, + oboInOwl:id "GO:0070559"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8910459"^^xsd:string + obo:IAO_0000115 "A protein complex found in the lysosome that contains beta-galactosidase, cathepsin A, alpha-neuraminidase and N-acetylgalactosamine-6-sulfate sulfatase, and is involved in glycosaminoglycan catabolism."^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0005764, + obo:GO_0043234 + + +Class: obo:GO_0070558 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070558"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2153"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAM-ITGB2-CD63 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8871662"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaM-beta2 integrin complex bound to membrane protein CD63, a member of the tetraspan family."^^xsd:string, + rdfs:label "alphaM-beta2 integrin-CD63 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070557 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070557"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7911228"^^xsd:string, + oboInOwl:hasDbXref "PMID:7915843"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cyclin-dependent protein kinase inhibitor p21WAF1/CIP1 bound to PCNA; formation of the complex inhibits DNA replication."^^xsd:string, + rdfs:label "PCNA-p21 complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031160 + + Annotations: + oboInOwl:hasExactSynonym "spore coat"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031160"^^xsd:string, + rdfs:label "spore wall"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pg"^^xsd:string + obo:IAO_0000115 "The specialized envelope lying outside the cell membrane of a spore."^^xsd:string + + SubClassOf: + obo:GO_0005618 + + +Class: obo:GO_0031165 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to contractile vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pg"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the contractile vacuolar membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:id "GO:0031165"^^xsd:string + + SubClassOf: + obo:GO_0031311, + obo:GO_0031166 + + +Class: obo:GO_0031166 + + Annotations: + rdfs:label "integral to vacuolar membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the vacuolar membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:id "GO:0031166"^^xsd:string + + SubClassOf: + obo:GO_0031301, + obo:GO_0031310 + + +Class: obo:GO_0071175 + + Annotations: + rdfs:label "MAML2-RBP-Jkappa-ICN1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071175"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12370315"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch1 (ICN1), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-2 (MAML2); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1949"^^xsd:string + oboInOwl:hasExactSynonym "MAML2-RBP-Jkappa-Notch1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0030430 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030430"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The cytoplasm of a host cell."^^xsd:string, + rdfs:label "host cell cytoplasm"^^xsd:string + + SubClassOf: + obo:GO_0033646 + + +Class: obo:GO_0031164 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pg"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the contractile vacuole."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031164"^^xsd:string, + rdfs:label "contractile vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pf"^^xsd:string + oboInOwl:hasExactSynonym "contractile vacuole membrane"^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:BFO_0000050 some obo:GO_0000331, + obo:GO_0044433 + + +Class: obo:GO_0030929 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "ADPG pyrophosphorylase complex"^^xsd:string, + oboInOwl:id "GO:0030929"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PMID:9680965"^^xsd:string + obo:IAO_0000115 "Complex that possesses ADPG pyrophosphorylase activity. In all organisms where it has been found, the complex is a tetramer. In bacteria, it is a homotetramer. In plants, the complex is a heterotetramer composed small and large subunits."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0071154 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:170"^^xsd:string + oboInOwl:hasNarrowSynonym "Ric-8A G(i) alpha-1 subunit complex"^^xsd:string, + rdfs:label "G-protein alpha(i)1-synembrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12509430"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the guanine nucleotide exchange factor synembrin with the alpha(i)1 subunit of a heterotrimeric G protein."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:171"^^xsd:string + oboInOwl:hasRelatedSynonym "Ric-8A G(i) alpha-2 subunit complex"^^xsd:string, + oboInOwl:id "GO:0071154"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031933 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "telomeric heterochromatin"^^xsd:string, + oboInOwl:id "GO:0031933"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Heterochromatic regions of the chromosome found at the telomeres."^^xsd:string + + EquivalentTo: + obo:GO_0000792 + and (obo:BFO_0000050 some obo:GO_0000781) + + SubClassOf: + obo:GO_0000792, + obo:BFO_0000050 some obo:GO_0000781 + + +Class: obo:GO_0097085 + + Annotations: + rdfs:label "interferon regulatory factor 3-interferon regulatory factor 5 complex"^^xsd:string, + oboInOwl:id "GO:0097085"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "IRF3:IRF5 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:12138184"^^xsd:string + obo:IAO_0000115 "An interferon regulatory factor complex that consists of a heterodimer of interferon regulatory factor 3 and interferon regulatory factor 5."^^xsd:string + + SubClassOf: + obo:GO_0097071 + + +Class: obo:GO_0071155 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:176"^^xsd:string + oboInOwl:hasNarrowSynonym "Ric-8A G alpha 13 subunit complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "G-protein alpha(13)-synembrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12509430"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the guanine nucleotide exchange factor synembrin with the alpha(13) subunit of a heterotrimeric G protein."^^xsd:string, + oboInOwl:id "GO:0071155"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031932 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + oboInOwl:hasExactSynonym "TORC2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + oboInOwl:hasExactSynonym "rapamycin and nutrient-insensitive TOR complex"^^xsd:string, + oboInOwl:hasExactSynonym "TOR complex 2"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031932"^^xsd:string, + rdfs:label "TORC2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20496258"^^xsd:string, + oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + oboInOwl:hasNarrowSynonym "mTORC2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:14736892"^^xsd:string, + oboInOwl:hasDbXref "PMID:15780592"^^xsd:string, + oboInOwl:hasDbXref "PMID:16469695"^^xsd:string, + oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + obo:IAO_0000115 "A protein complex that contains at least TOR (target of rapamycin) and Rictor (rapamycin-insensitive companion of TOR), or orthologs of, in complex with other signaling components. Mediates the phosphorylation and activation of PKB (also called AKT). In Saccharomyces, the complex contains Avo1p, Avo2p, Tsc11p, Lst8p, Bit61p, Slm1p, Slm2p, and Tor2p."^^xsd:string, + oboInOwl:hasExactSynonym "TORC 2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0070545 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16043514"^^xsd:string, + oboInOwl:hasDbXref "PMID:17353269"^^xsd:string + obo:IAO_0000115 "A protein complex that is involved in coordinating ribosome biogenesis with cell cycle progression. In human, it is composed of Pes1, Bop1, and WDR12; in Saccharomyces the proteins are known as Nop7p, Erb1 and Ytm1 respectively."^^xsd:string, + rdfs:label "PeBoW complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070545"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:GO_0043234 + + +Class: obo:GO_0031934 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031934"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Heterochromatic regions of the chromosome found at silenced mating-type loci."^^xsd:string, + rdfs:label "mating-type region heterochromatin"^^xsd:string + + SubClassOf: + obo:GO_0000792 + + +Class: obo:GO_0071159 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "NF-kappaB complex"^^xsd:string, + oboInOwl:id "GO:0071159"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0849327946"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of a homo- or heterodimer of members of a family of structurally related proteins that contain a conserved N-terminal region called the Rel homology domain (RHD). In the nucleus, NF-kappaB complexes act as transcription factors. In unstimulated cells, NF-kappaB dimers are sequestered in the cytoplasm by IkappaB monomers; signals that induce NF-kappaB activity cause degradation of IkappaB, allowing NF-kappaB dimers to translocate to the nucleus and induce gene expression."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031931 + + Annotations: + oboInOwl:hasExactSynonym "TORC 1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + oboInOwl:hasExactSynonym "TORC1"^^xsd:string, + oboInOwl:id "GO:0031931"^^xsd:string, + rdfs:label "TORC1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:15780592"^^xsd:string, + oboInOwl:hasDbXref "PMID:16469695"^^xsd:string, + oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + obo:IAO_0000115 "A protein complex that contains at least TOR (target of rapamycin) and Raptor (regulatory-associated protein of TOR), or orthologs of, in complex with other signaling components. Mediates the phosphorylation and activation of S6K. In Saccharomyces, the complex contains Kog1p, Lst8p, Tco89p, and either Tor1p or Tor2p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17183368"^^xsd:string + oboInOwl:hasNarrowSynonym "dTORC1"^^xsd:string, + oboInOwl:hasExactSynonym "TOR complex 1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + oboInOwl:hasExactSynonym "rapamycin and nutrient-sensitive TOR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18765678"^^xsd:string, + oboInOwl:hasDbXref "PMID:21548787"^^xsd:string + oboInOwl:hasNarrowSynonym "mTORC1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17183368"^^xsd:string + oboInOwl:hasNarrowSynonym "dTOR/dRaptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "nutrient sensitive complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0070161 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "anchoring cell junction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815332181"^^xsd:string + obo:IAO_0000115 "A cell junction that mechanically attaches a cell (and its cytoskeleton) to neighboring cells or to the extracellular matrix."^^xsd:string, + rdfs:label "anchoring junction"^^xsd:string, + oboInOwl:id "GO:0070161"^^xsd:string + + SubClassOf: + obo:GO_0030054 + + +Class: obo:GO_0070160 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "occluding cell junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "occluding junction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815332181"^^xsd:string + obo:IAO_0000115 "A cell-cell junction that seals cells together in an epithelium in a way that prevents even small molecules from leaking from one side of the sheet to the other."^^xsd:string, + oboInOwl:id "GO:0070160"^^xsd:string + + SubClassOf: + obo:GO_0005911 + + +Class: obo:GO_0030930 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A protein complex composed of four identical subunits that possesses ADPG pyrophosphorylase activity. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030930"^^xsd:string, + rdfs:label "homotetrameric ADPG pyrophosphorylase complex"^^xsd:string + + SubClassOf: + obo:GO_0030929 + + +Class: obo:GO_0030027 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "lamellipodium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A thin sheetlike process extended by the leading edge of a crawling fibroblast; contains a dense meshwork of actin filaments."^^xsd:string, + oboInOwl:id "GO:0030027"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Lamellipodia"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0042995 + + +Class: obo:GO_0030932 + + Annotations: + oboInOwl:id "GO:0030932"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "amyloplast ADPG pyrophosphorylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ADPG pyrophosphorylase complex found in the amyloplast."^^xsd:string + + EquivalentTo: + obo:GO_0030929 + and (obo:BFO_0000050 some obo:GO_0009501) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009501, + obo:GO_0031009 + + +Class: obo:GO_0030931 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030931"^^xsd:string, + rdfs:label "heterotetrameric ADPG pyrophosphorylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A protein complex composed of four different subunits that possesses ADPG pyrophosphorylase activity. An example of this process is found in Mus musculus."^^xsd:string + + SubClassOf: + obo:GO_0030929 + + +Class: obo:GO_0030934 + + Annotations: + oboInOwl:id "GO:0030934"^^xsd:string, + rdfs:label "anchoring collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "Any collagen polymer which links one collagen assembly, such as a collagen fibril or sheet, to other structures."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + oboInOwl:hasExactSynonym "connecting collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + oboInOwl:hasExactSynonym "linking collagen"^^xsd:string + + SubClassOf: + obo:GO_0005581 + + +Class: obo:GO_0030933 + + Annotations: + oboInOwl:id "GO:0030933"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ADPG pyrophosphorylase complex found in the chloroplast."^^xsd:string, + rdfs:label "chloroplast ADPG pyrophosphorylase complex"^^xsd:string + + EquivalentTo: + obo:GO_0030929 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0031009, + obo:GO_0044434 + + +Class: obo:GO_0030936 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "Any collagen polymer that passes through a lipid bilayer membrane."^^xsd:string, + rdfs:label "transmembrane collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198599587"^^xsd:string + oboInOwl:hasExactSynonym "MACIT"^^xsd:string, + oboInOwl:id "GO:0030936"^^xsd:string + + SubClassOf: + obo:GO_0005581 + + +Class: obo:GO_0030935 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "sheet-forming collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + oboInOwl:hasExactSynonym "network-forming collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "Any collagen polymer in which collagen triple helices associate to form sheet-like networks."^^xsd:string, + oboInOwl:id "GO:0030935"^^xsd:string + + SubClassOf: + obo:GO_0005581 + + +Class: obo:GO_0030938 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type XVIII"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(XVIII) chains."^^xsd:string, + oboInOwl:id "GO:0030938"^^xsd:string + + SubClassOf: + obo:GO_0030934 + + +Class: obo:GO_0030937 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type XVII"^^xsd:string, + oboInOwl:id "GO:0030937"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(XVII) chains; type XVII collagen triple helices associate with hemidesmosomes and the basal lamina."^^xsd:string + + SubClassOf: + obo:GO_0030936 + + +Class: obo:GO_0071162 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:19228417"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the GINS complex, Cdc45p, and the heterohexameric MCM complex, and that is involved in unwinding DNA during replication."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071162"^^xsd:string, + rdfs:label "CMG complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19228417"^^xsd:string + oboInOwl:hasExactSynonym "unwindosome"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0044454, + obo:BFO_0000051 some obo:GO_0042555, + obo:BFO_0000051 some obo:GO_0000811, + obo:GO_0043234 + + +Class: obo:GO_0034206 + + Annotations: + rdfs:label "enhanceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Enhanceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11250145"^^xsd:string, + oboInOwl:hasDbXref "PMID:17574024"^^xsd:string + obo:IAO_0000115 "A protein-DNA complex formed by the association of a distinct set of general and specific transcription factors with a region of enhancer DNA. The cooperative assembly of an enhanceosome confers specificity of transcriptional regulation."^^xsd:string, + oboInOwl:id "GO:0034206"^^xsd:string + + SubClassOf: + obo:GO_0032993 + + +Class: obo:GO_0043564 + + Annotations: + oboInOwl:hasExactSynonym "Ku70:Ku80 heterodimer"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12518983"^^xsd:string + obo:IAO_0000115 "Heterodimeric protein complex composed of a 70 kDa and a 80 kDa subunit, binds DNA through a channel formed by the heterodimer. Functions in DNA double stranded break repair, chromosome maintenance, transcription regulation, V(D)J recombination, and activation of DNA-PK."^^xsd:string, + oboInOwl:id "GO:0043564"^^xsd:string, + rdfs:label "Ku70:Ku80 complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0000329 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "fungal-type vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vacuole, the shape of which correlates with cell cycle phase. The membrane separates its contents from the cytoplasm of the cell. An example of this structure is found in Saccharomyces cerevisiae."^^xsd:string, + oboInOwl:id "GO:0000329"^^xsd:string, + oboInOwl:hasExactSynonym "membrane of vacuole with cell cycle-correlated morphology"^^xsd:string, + rdfs:label "fungal-type vacuole membrane"^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:BFO_0000050 some obo:GO_0000324 + + +Class: obo:GO_0070691 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "Sgv1/Bur2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070691"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16721054"^^xsd:string, + oboInOwl:hasDbXref "PMID:19328067"^^xsd:string + obo:IAO_0000115 "A positive transcription elongation factor complex b that comprises two subunits; an example is the budding yeast complex containing Svg1p (also called Bur1p) and Bur2p."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16721054"^^xsd:string, + oboInOwl:hasDbXref "PMID:19328067"^^xsd:string + oboInOwl:hasNarrowSynonym "Bur1/Bur2 complex"^^xsd:string, + rdfs:label "dimeric positive transcription elongation factor complex b"^^xsd:string + + SubClassOf: + obo:GO_0008024 + + +Class: obo:GO_0033655 + + Annotations: + oboInOwl:hasBroadSynonym "cytoplasm component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any constituent part of the host cell cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:id "GO:0033655"^^xsd:string, + rdfs:label "host cell cytoplasm part"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030430, + obo:GO_0033646 + + +Class: obo:GO_0000325 + + Annotations: + oboInOwl:id "GO:0000325"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316208"^^xsd:string + obo:IAO_0000115 "A closed structure that is completely surrounded by a unit membrane, contains liquid, and retains the same shape regardless of cell cycle phase. An example of this structure is found in Arabidopsis thaliana."^^xsd:string, + rdfs:label "plant-type vacuole"^^xsd:string, + oboInOwl:hasExactSynonym "vacuole, cell cycle-independent morphology"^^xsd:string + + SubClassOf: + obo:GO_0005773 + + +Class: obo:GO_0000326 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000326"^^xsd:string, + rdfs:label "protein storage vacuole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11739409"^^xsd:string + obo:IAO_0000115 "A storage vacuole that contains a lytic vacuole; identified in plants."^^xsd:string + + SubClassOf: + obo:GO_0000325, + obo:GO_0000322 + + +Class: obo:GO_0042151 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "DOI:10.1139/z02-135"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "An organelle found in cnidoblast (nematoblast) cells. When matured, these stinging organelles store toxins and can deliver them when the cnidocil (a short extension of the cnidocyst) is stimulated by a prey or another stimulus."^^xsd:string, + oboInOwl:id "GO:0042151"^^xsd:string, + rdfs:label "nematocyst"^^xsd:string, + oboInOwl:hasExactSynonym "cnidocyst"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cnidocyte"^^xsd:string + + SubClassOf: + obo:GO_0044448, + obo:GO_0043232 + + +Class: obo:GO_0000327 + + Annotations: + oboInOwl:id "GO:0000327"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11739490"^^xsd:string + obo:IAO_0000115 "A membrane-bounded compartment containing crystals of phytic acid and proteins characteristic of a lytic vacuole, found within a storage vacuole."^^xsd:string, + rdfs:label "lytic vacuole within protein storage vacuole"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + EquivalentTo: + obo:GO_0000323 + and (obo:BFO_0000050 some obo:GO_0000326) + + SubClassOf: + obo:GO_0044437, + obo:GO_0000323, + obo:BFO_0000050 some obo:GO_0000326 + + +Class: obo:GO_0000328 + + Annotations: + oboInOwl:id "GO:0000328"^^xsd:string, + rdfs:label "fungal-type vacuole lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "lumen of vacuole with cell cycle-correlated morphology"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The volume enclosed within the vacuolar membrane of a vacuole, the shape of which correlates with cell cycle phase. An example of this structure is found in Saccharomyces cerevisiae."^^xsd:string + + SubClassOf: + obo:GO_0005775, + obo:BFO_0000050 some obo:GO_0000324 + + +Class: obo:GO_0008021 + + Annotations: + oboInOwl:id "GO:0008021"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "synaptic vesicle"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Synaptic_vesicle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1071221672"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10099709"^^xsd:string + obo:IAO_0000115 "A secretory organelle, some 50 nm in diameter, of presynaptic nerve terminals; accumulates in high concentrations of neurotransmitters and is secreted these into the synaptic cleft by fusion with the 'active zone' of the presynaptic plasma membrane."^^xsd:string + + EquivalentTo: + obo:GO_0031982 + and (obo:BFO_0000050 some obo:GO_0045202) + + SubClassOf: + obo:GO_0044456, + obo:GO_0030136 + + +Class: obo:GO_0034673 + + Annotations: + oboInOwl:id "GO:0034673"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:10746731"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of inhibin, type III transforming growth factor beta receptor (also known as betaglycan), and the type II activin receptor ActRII. The complex is thought to negatively regulate the activity of activin B."^^xsd:string, + rdfs:label "inhibin-betaglycan-ActRII complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0008023 + + Annotations: + oboInOwl:id "GO:0008023"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcription elongation factor complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any protein complex that interacts with RNA polymerase II to increase (positive transcription elongation factor) or reduce (negative transcription elongation factor) the rate of transcription elongation."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0042568 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "insulin-like growth factor binary complex"^^xsd:string, + oboInOwl:hasExactSynonym "IGF binary complex"^^xsd:string, + oboInOwl:id "GO:0042568"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12239079"^^xsd:string + obo:IAO_0000115 "A complex of two proteins, which in animals is 50kDa and consists of the insulin-like growth factor (IGF) and one of the insulin-like growth factor binding protein-1 (IGFBP-1), -2 (IGFBP-2), -4 (IGFBP-4) and -6 (IGFBP-6). The complex plays a role in growth and development."^^xsd:string + + SubClassOf: + obo:GO_0016942 + + +Class: obo:GO_0034676 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2323"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha6-beta4 integrin complex"^^xsd:string, + oboInOwl:id "GO:0034676"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha6 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0065010 + + Annotations: + rdfs:label "extracellular membrane-bounded organelle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0065010"^^xsd:string, + oboInOwl:hasExactSynonym "extracellular membrane-enclosed organelle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:isa_complete"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, bounded by a lipid bilayer membrane and occurring outside the cell."^^xsd:string + + SubClassOf: + obo:GO_0043227, + obo:GO_0043230 + + +Class: obo:GO_0042567 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12239079"^^xsd:string + obo:IAO_0000115 "A complex of three proteins, which in animals is approximately 150kDa and consists of the insulin-like growth factor (IGF), the insulin-like growth factor binding protein-3 (IGFBP-3), or -5 (IGFBP-5) and an acid-labile subunit (ALS). The complex plays a role in growth and development."^^xsd:string, + rdfs:label "insulin-like growth factor ternary complex"^^xsd:string, + oboInOwl:id "GO:0042567"^^xsd:string, + oboInOwl:hasExactSynonym "IGF ternary complex"^^xsd:string + + SubClassOf: + obo:GO_0016942 + + +Class: obo:GO_0034677 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034677"^^xsd:string, + oboInOwl:hasNarrowSynonym "ITGA7-ITGB1 complex"^^xsd:string, + rdfs:label "alpha7-beta1 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha7 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0008024 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10766736"^^xsd:string, + oboInOwl:hasDbXref "PMID:16721054"^^xsd:string, + oboInOwl:hasDbXref "PMID:17079683"^^xsd:string, + oboInOwl:hasDbXref "PMID:19328067"^^xsd:string, + oboInOwl:hasDbXref "PMID:7759473"^^xsd:string + obo:IAO_0000115 "A transcription elongation factor complex that facilitates the transition from abortive to productive elongation by phosphorylating the CTD domain of the large subunit of DNA-directed RNA polymerase II, holoenzyme. Contains cyclin T and a cyclin-dependent protein kinase catalytic subunit."^^xsd:string, + rdfs:comment "See also the cellular component terms 'cyclin-dependent protein kinase activating kinase holoenzyme complex ; GO:0019907' and 'DNA-directed RNA polymerase II, holoenzyme ; GO:0016591'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008024"^^xsd:string, + rdfs:label "positive transcription elongation factor complex b"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7759473"^^xsd:string + oboInOwl:hasExactSynonym "P-TEFb"^^xsd:string + + SubClassOf: + obo:GO_0032806, + obo:GO_0008023 + + +Class: obo:GO_0042566 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0042566"^^xsd:string, + rdfs:label "hydrogenosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Hydrogenosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11197234"^^xsd:string, + oboInOwl:hasDbXref "PMID:11293569"^^xsd:string + obo:IAO_0000115 "A spherical, membrane-bounded organelle found in some anaerobic protozoa, which participates in ATP and molecular hydrogen formation."^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0034674 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha5-beta1 integrin complex"^^xsd:string, + oboInOwl:id "GO:0034674"^^xsd:string, + oboInOwl:hasExactSynonym "VLA-5 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha5 subunit and one beta1 subunit."^^xsd:string, + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0042565 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "RNA nuclear export complex"^^xsd:string, + oboInOwl:id "GO:0042565"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:9323123"^^xsd:string + obo:IAO_0000115 "A complex which usually consists of three components, e.g. in Xenopus and yeast, the export receptor CRM1 (also known as exportin 1), the Ran protein and any RNA with a nuclear export sequence (NES). The complex acts to export RNA molecules with a NES from the nucleus through a nuclear pore."^^xsd:string + + SubClassOf: + obo:GO_0031074 + + +Class: obo:GO_0034675 + + Annotations: + rdfs:label "alpha6-beta1 integrin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2413"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:2649503"^^xsd:string + oboInOwl:hasExactSynonym "VLA-6 complex"^^xsd:string, + oboInOwl:id "GO:0034675"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha6 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034669 + + Annotations: + rdfs:label "alpha4-beta7 integrin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "ITGA4-ITGB7 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha4 subunit and one beta7 subunit."^^xsd:string, + oboInOwl:id "GO:0034669"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0042575 + + Annotations: + rdfs:label "DNA polymerase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045093"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses DNA polymerase activity and is involved in template directed synthesis of DNA."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0042575"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0034668 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha4 subunit and one beta1 subunit."^^xsd:string, + rdfs:label "alpha4-beta1 integrin complex"^^xsd:string, + oboInOwl:hasExactSynonym "VLA-4 complex"^^xsd:string, + oboInOwl:id "GO:0034668"^^xsd:string, + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034667 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha3 subunit and one beta1 subunit."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2406"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA3-ITGB1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:3546305"^^xsd:string + oboInOwl:hasExactSynonym "VLA-3 complex"^^xsd:string, + rdfs:label "alpha3-beta1 integrin complex"^^xsd:string, + oboInOwl:id "GO:0034667"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0042571 + + Annotations: + rdfs:label "immunoglobulin complex, circulating"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Antibody"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042571"^^xsd:string, + rdfs:comment "Note that an immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "An immunoglobulin complex that is secreted into extracellular space and found in mucosal areas or other tissues or circulating in the blood or lymph. In its canonical form, a circulating immunoglobulin complex is composed of two identical heavy chains and two identical light chains, held together by disulfide bonds. Some forms of are polymers of the basic structure and contain additional components such as J-chain and the secretory component."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "antibody"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0019814 + + +Class: obo:GO_0018995 + + Annotations: + oboInOwl:id "GO:0018995"^^xsd:string, + oboInOwl:hasExactSynonym "host organism"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Any organism in which another organism, especially a parasite or symbiont, spends part or all of its life cycle and from which it obtains nourishment and/or protection."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Host_(biology)"^^xsd:string, + rdfs:label "host"^^xsd:string + + SubClassOf: + obo:GO_0044215 + + +Class: obo:GO_0070685 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pf"^^xsd:string, + oboInOwl:hasDbXref "PMID:9044041"^^xsd:string + oboInOwl:hasExactSynonym "crown"^^xsd:string, + oboInOwl:id "GO:0070685"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12538772"^^xsd:string, + oboInOwl:hasDbXref "PMID:16968738"^^xsd:string, + oboInOwl:hasDbXref "PMID:9044041"^^xsd:string + obo:IAO_0000115 "A cell projection that forms at the site of macropinocytosis, a form of endocytosis that results in the uptake of relatively large amounts of extracellular fluid. The macropinocytic cup membrane selectively excludes certain proteins, such as H36 or PM4C4 in Dictyostelium, and the underlying cytoskeleton is enriched in F-actin and coronin."^^xsd:string, + rdfs:label "macropinocytic cup"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0000333 + + Annotations: + oboInOwl:id "GO:0000333"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "telomerase catalytic core complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11884619"^^xsd:string + obo:IAO_0000115 "The minimal catalytic core of telomerase is a ribonucleoprotein complex composed of a catalytic reverse transcriptase subunit and an RNA subunit that provides the template for telomeric DNA addition."^^xsd:string + + SubClassOf: + obo:GO_0005697 + + +Class: obo:GO_0070686 + + Annotations: + oboInOwl:id "GO:0070686"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "macropinocytic cup membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a macropinocytic cup."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "crown membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070685, + obo:GO_0031253 + + +Class: obo:GO_0070687 + + Annotations: + rdfs:label "macropinocytic cup cytoskeleton"^^xsd:string, + oboInOwl:id "GO:0070687"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The part of the cortical actin cytoskeleton that forms part of a macropinocytic cup."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "crown cytoskeleton"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070685, + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030864, + obo:GO_0044430, + obo:GO_0044448 + + +Class: obo:GO_0070688 + + Annotations: + oboInOwl:id "GO:0070688"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19377461"^^xsd:string + obo:IAO_0000115 "A protein complex that can methylate lysine-4 of histone H3 and plays an essential role in retinoic-acid-induced granulopoiesis. MLL5 is the catalytic methyltransferase subunit, and the complex also contains serine/threonine kinase 38 (STK38), protein phosphatase 1 catalytic subunits, the host cell factor-1 N-terminal subunit, beta-actin, and O-GlcNAc transferase; the human genes encoding the subunits are MLL5, STK38, PPP1CA, PPP1CB, PPP1CC, HCFC1, ACTB and OGT, respectively."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MLL5-L complex"^^xsd:string + + SubClassOf: + obo:GO_0035097 + + +Class: obo:GO_0000331 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000331"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10503189"^^xsd:string + obo:IAO_0000115 "A specialized vacuole of eukaryotic cells, especially Protozoa, that fills with water from the cytoplasm and then discharges this externally by the opening of contractile vacuole pores. Its function is probably osmoregulatory."^^xsd:string, + rdfs:label "contractile vacuole"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Contractile_vacuole"^^xsd:string + + SubClassOf: + obo:GO_0005773, + obo:GO_0016023 + + +Class: obo:GO_0030446 + + Annotations: + rdfs:label "hyphal cell wall"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the Fungal Anatomy Ontology term 'hypha ; FAO:0001001'."^^xsd:string, + oboInOwl:id "GO:0030446"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The cell wall surrounding a fungal hypha."^^xsd:string + + SubClassOf: + obo:GO_0009277 + + +Class: obo:GO_0070578 + + Annotations: + rdfs:label "RISC-loading complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string + oboInOwl:hasExactSynonym "miRLC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "RLC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070578"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "PMID:18178619"^^xsd:string + obo:IAO_0000115 "A trimeric ribonucleoprotein complex that and is required for the formation of a mature RNA induced silencing complex (RISC). In humans the complex is composed of the endonuclease Dicer (DICER1) and TRBP (TARBP2) in association with the Argonaute protein Ago2 (EIF2C2/AGO2). Within the complex, Dicer and TRBP are required to process precursor miRNAs (pre-miRNAs) to mature miRNAs and then load them onto Ago2. Ago2 bound to the mature miRNA constitutes the minimal RISC and may subsequently dissociate from Dicer and TRBP."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string + oboInOwl:hasExactSynonym "microRNA loading complex"^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0000330 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The volume enclosed within the vacuolar membrane of a vacuole that retains the same shape regardless of cell cycle phase. An example of this is found in Arabidopsis thaliana."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000330"^^xsd:string, + oboInOwl:hasExactSynonym "lumen of vacuole with cell cycle-independent morphology"^^xsd:string, + rdfs:label "plant-type vacuole lumen"^^xsd:string + + SubClassOf: + obo:GO_0005775, + obo:BFO_0000050 some obo:GO_0000325 + + +Class: obo:GO_0030445 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The wall surrounding a cell of a dimorphic fungus growing in the single-cell budding yeast form, in contrast to the filamentous or hyphal form."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the Fungal Anatomy Ontology term 'vegetative cell ; FAO:0000032'."^^xsd:string, + rdfs:label "yeast-form cell wall"^^xsd:string, + oboInOwl:id "GO:0030445"^^xsd:string + + SubClassOf: + obo:GO_0009277 + + +Class: obo:GO_0034680 + + Annotations: + rdfs:label "alpha10-beta1 integrin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha10 subunit and one beta1 subunit."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3057"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA10-ITGB1 complex"^^xsd:string, + oboInOwl:id "GO:0034680"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034681 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3058"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA11-ITGB1 complex"^^xsd:string, + oboInOwl:id "GO:0034681"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha11-beta1 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha11 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034682 + + Annotations: + oboInOwl:id "GO:0034682"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphav subunit and one beta1 subunit."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2436"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB1 complex"^^xsd:string, + rdfs:label "alphav-beta1 integrin complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034683 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphav subunit and one beta3 subunit."^^xsd:string, + oboInOwl:id "GO:0034683"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphav-beta3 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2816"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034684 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphav subunit and one beta5 subunit."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034684"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2350"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB5 complex"^^xsd:string, + rdfs:label "alphav-beta5 integrin complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0017177 + + Annotations: + rdfs:comment "Note that alpha-glucosidase I functions as a monomer, and therefore does not have a corresponding cellular component term."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:19605557"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasRelatedSynonym "alpha-glucosidase II complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0017177"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10464333"^^xsd:string, + oboInOwl:hasDbXref "PMID:8910335"^^xsd:string + obo:IAO_0000115 "A heterodimeric complex that catalyzes the trimming of glucose residues from N-linked core glycans on newly synthesized glycoproteins."^^xsd:string, + rdfs:label "glucosidase II complex"^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0034685 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2354"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB6 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034685"^^xsd:string, + rdfs:label "alphav-beta6 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphav subunit and one beta6 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034686 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphav subunit and one beta8 subunit."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034686"^^xsd:string, + rdfs:label "alphav-beta8 integrin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "ITGAV-ITGB8 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034687 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034687"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphaL subunit and one beta2 subunit."^^xsd:string, + rdfs:label "alphaL-beta2 integrin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Itgal-Itgb2 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0042579 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Cytoplasmic organelles, spherical or oval in shape, that are bounded by a single membrane and contain oxidative enzymes, especially those utilizing hydrogen peroxide (H2O2)."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Microbody"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "microbody"^^xsd:string, + oboInOwl:id "GO:0042579"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0034688 + + Annotations: + rdfs:label "alphaM-beta2 integrin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Itgam-Itgb2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphaM subunit and one beta2 subunit."^^xsd:string, + oboInOwl:id "GO:0034688"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0042583 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:19158310"^^xsd:string, + oboInOwl:hasDbXref "PMID:1961743"^^xsd:string + obo:IAO_0000115 "Specialized secretory vesicle found in the cells of adrenal glands and various other organs, which is concerned with the synthesis, storage, metabolism, and secretion of epinephrine and norepinephrine."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042583"^^xsd:string, + rdfs:label "chromaffin granule"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0034679 + + Annotations: + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha9-beta1 integrin complex"^^xsd:string, + oboInOwl:id "GO:0034679"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha9 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0042584 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a chromaffin granule, a specialized secretory vesicle found in the cells of adrenal glands and various other organs, which is concerned with the synthesis, storage, metabolism, and secretion of epinephrine and norepinephrine."^^xsd:string, + oboInOwl:id "GO:0042584"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chromaffin granule membrane"^^xsd:string + + SubClassOf: + obo:GO_0030667, + obo:BFO_0000050 some obo:GO_0042583 + + +Class: obo:GO_0034678 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2439"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA8-ITGB1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha8-beta1 integrin complex"^^xsd:string, + oboInOwl:id "GO:0034678"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha8 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0010319 + + Annotations: + oboInOwl:hasRelatedSynonym "Stroma-filled tubule"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Stromule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "stromule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15272881"^^xsd:string, + oboInOwl:hasDbXref "PMID:15699062"^^xsd:string, + oboInOwl:hasDbXref "PMID:16582010"^^xsd:string + obo:IAO_0000115 "Thin filamentous structure extending from the surface of all plastid types examined so far, including chloroplast, proplastid, etioplast, leucoplast, amyloplast, and chromoplast. In general, stromules are more abundant in tissues containing non-green plastids, and in cells containing smaller plastids. The primary function of stromules is still unresolved, although the presence of stromules markedly increases the plastid surface area, potentially increasing transport to and from the cytosol. Other functions of stromules, such as transfer of macromolecules between plastids and starch granule formation in cereal endosperm, may be restricted to particular tissues and cell types."^^xsd:string, + oboInOwl:id "GO:0010319"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009526 + + +Class: obo:GO_0042585 + + Annotations: + oboInOwl:id "GO:0042585"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "germinal vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:19019837"^^xsd:string + obo:IAO_0000115 "The enlarged, fluid filled nucleus of a primary oocyte, the development of which is suspended in prophase I of the first meiotic division between embryohood and sexual maturity."^^xsd:string, + oboInOwl:hasExactSynonym "primary oocyte nucleus"^^xsd:string + + SubClassOf: + obo:GO_0001674 + + +Class: obo:GO_0010318 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:2170409"^^xsd:string + obo:IAO_0000115 "Refers to the beta subunit of the heterodimeric complex that possesses pyrophosphate-dependent phosphofructokinase activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010318"^^xsd:string, + rdfs:label "pyrophosphate-dependent phosphofructokinase complex, beta-subunit complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "PFK complex, beta-subunit"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0010316, + obo:GO_0043234 + + +Class: obo:GO_0010317 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:2170409"^^xsd:string + obo:IAO_0000115 "Refers to the alpha subunit of the heterodimeric complex that possesses pyrophosphate-dependent phosphofructokinase activity."^^xsd:string, + rdfs:label "pyrophosphate-dependent phosphofructokinase complex, alpha-subunit complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010317"^^xsd:string, + oboInOwl:hasRelatedSynonym "PFK complex, alpha-subunit"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0010316, + obo:GO_0043234 + + +Class: obo:GO_0034271 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:11157979"^^xsd:string, + oboInOwl:hasDbXref "PMID:16421251"^^xsd:string + obo:IAO_0000115 "A protein complex that posseses phosphatidylinositol 3-kinase activity and is involved in autophagy. In budding yeast, this complex consists of Vps30p, Vps34p, Atg14p and Vps15p."^^xsd:string, + rdfs:label "phosphatidylinositol 3-kinase complex I"^^xsd:string, + oboInOwl:hasExactSynonym "PtdIns-3-kinase complex I"^^xsd:string, + oboInOwl:id "GO:0034271"^^xsd:string, + rdfs:comment "Note that this term should not be confused with '1-phosphatidylinositol-4-phosphate 3-kinase, class IA complex; GO:0005943' or '1-phosphatidylinositol-4-phosphate 3-kinase, class IB complex ; GO:0005944'."^^xsd:string + + SubClassOf: + obo:GO_0005942 + + +Class: obo:GO_0010316 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:2170409"^^xsd:string + obo:IAO_0000115 "Heterodimeric complex that catalyzes the pyrophosphate-dependent phosphorylation of D-fructose 6-phosphate into D-fructose 1,6-bisphosphate."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "PFK complex"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "pyrophosphate-dependent phosphofructokinase complex"^^xsd:string, + oboInOwl:id "GO:0010316"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0042580 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11912051"^^xsd:string, + oboInOwl:hasDbXref "PMID:9799531"^^xsd:string + obo:IAO_0000115 "A specialised tubular organelle, assembled in hexagonal bundles within an external membrane. Mannosomes are specific to molluscs and are thought to be involved in a general stress reaction."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mannosome"^^xsd:string, + oboInOwl:id "GO:0042580"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0034270 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "CVT complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:15659643"^^xsd:string + obo:IAO_0000115 "A protein complex that is involved in the CVT pathway. In budding yeast, the CVT complex consists of multimers of preApe1p."^^xsd:string, + oboInOwl:id "GO:0034270"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0042581 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042581"^^xsd:string, + rdfs:label "specific granule"^^xsd:string, + oboInOwl:hasExactSynonym "secondary granule"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Specific_granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721662544"^^xsd:string, + oboInOwl:hasDbXref "PMID:7334549"^^xsd:string + obo:IAO_0000115 "Granule with a membranous, tubular internal structure, found primarily in mature neutrophil cells. Most are released into the extracellular fluid. Specific granules contain lactoferrin, lysozyme, vitamin B12 binding protein and elastase."^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0034273 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Atg1p signalling complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:15743910"^^xsd:string + obo:IAO_0000115 "A protein complex that contains a protein kinase and is required for the autophagosome formation. In budding yeast this complex consists of the kinase Atg1p, Atg13p and Atg17p."^^xsd:string, + oboInOwl:id "GO:0034273"^^xsd:string, + rdfs:label "Atg1p signaling complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0042582 + + Annotations: + oboInOwl:hasExactSynonym "primary granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:17152095"^^xsd:string + obo:IAO_0000115 "Primary lysosomal granule found in neutrophil granulocytes. Contains a wide range of hydrolytic enzymes and is released into the extracellular fluid."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042582"^^xsd:string, + rdfs:label "azurophil granule"^^xsd:string + + SubClassOf: + obo:GO_0030141, + obo:GO_0005766 + + +Class: obo:GO_0034272 + + Annotations: + rdfs:label "phosphatidylinositol 3-kinase complex II"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "PtdIns-3-kinase complex II"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:11157979"^^xsd:string, + oboInOwl:hasDbXref "PMID:16421251"^^xsd:string + obo:IAO_0000115 "A protein complex that posseses phosphatidylinositol 3-kinase activity and is involved in vacuolar protein sorting (VPS) via endosomes. In budding yeast, this complex consists of Vps30p, Vps34p, VPS38 and Vps15p."^^xsd:string, + oboInOwl:id "GO:0034272"^^xsd:string, + rdfs:comment "Note that this term should not be confused with '1-phosphatidylinositol-4-phosphate 3-kinase, class IA complex; GO:0005943' or '1-phosphatidylinositol-4-phosphate 3-kinase, class IB complex ; GO:0005944'."^^xsd:string + + SubClassOf: + obo:GO_0005942 + + +Class: obo:GO_0000346 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:11979277"^^xsd:string + obo:IAO_0000115 "The transcription export (TREX) complex couples transcription elongation by RNA polymerase II to mRNA export. The complex associates with the polymerase and travels with it along the length of the transcribed gene. TREX is composed of the THO transcription elongation complex as well as other proteins that couple THO to mRNA export proteins. The TREX complex is known to be found in a wide range of eukaryotes, including S. cerevisiae and metazoans."^^xsd:string, + oboInOwl:id "GO:0000346"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "TREX complex"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "transcription export complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0034274 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034274"^^xsd:string, + rdfs:label "Atg12-Atg5-Atg16 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:17986448"^^xsd:string + obo:IAO_0000115 "A protein complex required for the expansion of the autophagosomal membrane. In budding yeast, this complex consists of Atg12p, Atg5p and Atg16p."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0000345 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0000345"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11158566"^^xsd:string + obo:IAO_0000115 "The eubacterial DNA-directed RNA polymerase is a multisubunit complex with a core composed of the essential subunits beta-prime, beta, and two copies of alpha and a fifth nonessential subunit called omega. An additional subunit, a sigma factor, is required for promoter recognition and specificity."^^xsd:string, + rdfs:label "cytosolic DNA-directed RNA polymerase complex"^^xsd:string + + SubClassOf: + obo:GO_0000428, + obo:GO_0044445 + + +Class: obo:GO_0000344 + + Annotations: + oboInOwl:id "GO:0000344"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10946105"^^xsd:string + obo:IAO_0000115 "A plastid-encoded DNA-directed RNA polymerase complex that resembles eubacterial multisubunit RNA polymerases with a core composed of alpha, beta, and beta-prime subunits. An additional subunit, a sigma factor, is required for promoter recognition. PEP-B is distinguished from PEP-A by its sensitivity to the antibiotic rifampicin. PEP-B is found in both etioplasts and chloroplasts, but is the predominate form in etioplasts. It forms the core of the PEP-A form; the conversion from PEP-B to PEP-A occurs during chloroplast maturation."^^xsd:string, + oboInOwl:hasExactSynonym "PEP-B"^^xsd:string, + rdfs:label "plastid-encoded plastid RNA polymerase complex B"^^xsd:string + + SubClassOf: + obo:GO_0000427 + + +Class: obo:GO_0000343 + + Annotations: + oboInOwl:id "GO:0000343"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "PEP-A"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10946105"^^xsd:string + obo:IAO_0000115 "A plastid-encoded DNA-directed RNA polymerase complex that resembles eubacterial multisubunit RNA polymerases, with a core composed of alpha, beta, and beta-prime subunits. An additional subunit, a sigma factor, is required for promoter recognition. PEP-A is generated from the PEP-B form during chloroplast maturation to generate a complex composed of at least thirteen polypeptides that is not sensitive to the antibiotic rifampicin, like its precursor form the PEP-B complex."^^xsd:string, + rdfs:label "plastid-encoded plastid RNA polymerase complex A"^^xsd:string + + SubClassOf: + obo:GO_0000427 + + +Class: obo:GO_0070695 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + rdfs:label "FHF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18799622"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of AKTIP/FTS, FAM160A2/p107FHIP, and one or more members of the Hook family of proteins, HOOK1, HOOK2, and HOOK3. The complex is thought to promote vesicle trafficking and/or fusion, and associates with the homotypic vesicular sorting complex (the HOPS complex)."^^xsd:string, + oboInOwl:id "GO:0070695"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0070692 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:16721054"^^xsd:string, + oboInOwl:hasDbXref "PMID:19328067"^^xsd:string + oboInOwl:hasNarrowSynonym "CTDK-I complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "trimeric positive transcription elongation factor complex b"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16721054"^^xsd:string + oboInOwl:hasNarrowSynonym "Ctk complex"^^xsd:string, + oboInOwl:id "GO:0070692"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16721054"^^xsd:string, + oboInOwl:hasDbXref "PMID:19328067"^^xsd:string + obo:IAO_0000115 "A positive transcription elongation factor complex b that comprises three subunits; an example is the budding yeast Ctk complex, which consists of Ctk1p, Ctk2p and Ctk3p."^^xsd:string + + SubClassOf: + obo:GO_0008024 + + +Class: obo:GO_0033675 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "pericanalicular vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15763347"^^xsd:string, + oboInOwl:hasDbXref "PMID:9790571"^^xsd:string + obo:IAO_0000115 "A membrane-bounded vesicle found near the apical, or pericanalicular, membrane of a hepatocyte; contains proteins involved in bile salt transport and other fluid and solute transport processes."^^xsd:string, + oboInOwl:id "GO:0033675"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0070693 + + Annotations: + rdfs:label "P-TEFb-cap methyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasNarrowSynonym "P-TEFb-Pcm1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasNarrowSynonym "Cdk9-Pcm1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17332744"^^xsd:string, + oboInOwl:hasDbXref "PMID:19328067"^^xsd:string + obo:IAO_0000115 "A protein complex that is formed by the association of positive transcription elongation factor complex b (P-TEFb) with the mRNA capping methyltransferase."^^xsd:string, + oboInOwl:id "GO:0070693"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070565 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pde"^^xsd:string, + oboInOwl:hasDbXref "PMID:19179534"^^xsd:string + obo:IAO_0000115 "A complex of DNA and protein located at the end of a linear chromosome that enables replication of the telomeric repeat sequences at the end of a linear chromosome."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "telomere-telomerase complex"^^xsd:string, + oboInOwl:id "GO:0070565"^^xsd:string, + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific protein complex and not a region of the chromosome."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000781, + obo:GO_0032993 + + +Class: obo:GO_0042175 + + Annotations: + oboInOwl:id "GO:0042175"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "nuclear membrane-endoplasmic reticulum continuum"^^xsd:string, + oboInOwl:hasRelatedSynonym "NE-ER continuum"^^xsd:string, + oboInOwl:hasRelatedSynonym "nuclear envelope-endoplasmic reticulum continuum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "nuclear envelope-endoplasmic reticulum network"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "The continuous network of membranes encompassing the nuclear outer membrane and the endoplasmic reticulum membrane."^^xsd:string, + oboInOwl:hasRelatedSynonym "nuclear envelope-ER network"^^xsd:string, + oboInOwl:hasRelatedSynonym "NE-ER network"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "nuclear membrane-ER network"^^xsd:string, + rdfs:label "nuclear outer membrane-endoplasmic reticulum membrane network"^^xsd:string + + SubClassOf: + obo:GO_0016020, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0012505 + + +Class: obo:GO_0000347 + + Annotations: + rdfs:label "THO complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:11060033"^^xsd:string, + oboInOwl:hasDbXref "PMID:11979277"^^xsd:string, + oboInOwl:hasDbXref "PMID:16983072"^^xsd:string + obo:IAO_0000115 "The THO complex is a nuclear complex that is required for transcription elongation through genes containing tandemly repeated DNA sequences. The THO complex is also part of the TREX (TRanscription EXport) complex that is involved in coupling transcription to export of mRNAs to the cytoplasm. In S. cerevisiae, it is composed of four subunits: Hpr1p, Tho2p, Thp1p, and Mft1p, while the human complex is composed of 7 subunits."^^xsd:string, + oboInOwl:id "GO:0000347"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0045495 + + Annotations: + oboInOwl:hasNarrowSynonym "germ plasm"^^xsd:string, + oboInOwl:id "GO:0045495"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "pole plasm"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:17113380"^^xsd:string + obo:IAO_0000115 "Differentiated cytoplasm associated with a pole (animal, vegetal, anterior, or posterior) of an oocyte, egg or early embryo."^^xsd:string, + oboInOwl:hasExactSynonym "polar plasm"^^xsd:string + + SubClassOf: + obo:GO_0005737 + + +Class: obo:GO_0008043 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008043"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19154717"^^xsd:string + obo:IAO_0000115 "A ferritin complex located in the cell. Intracellular ferritin complexes contain 24 subunits, in a mixture of L (light) chains and H (heavy) chains."^^xsd:string, + rdfs:label "intracellular ferritin complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0070288 + + +Class: obo:GO_0042170 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plastid membrane"^^xsd:string, + oboInOwl:id "GO:0042170"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround a plastid and form the plastid envelope."^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0009526 + + +Class: obo:GO_0001411 + + Annotations: + oboInOwl:id "GO:0001411"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "hyphal tip"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The end, or tip, of a fungal hypha, where polarized growth occurs during hyphal elongation."^^xsd:string + + SubClassOf: + obo:GO_0030427 + + +Class: obo:GO_0001405 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14517234"^^xsd:string, + oboInOwl:hasDbXref "PMID:14638855"^^xsd:string + obo:IAO_0000115 "Protein complex located on the matrix side of the mitochondrial inner membrane and associated with the presequence translocase complex; hydrolyzes ATP to provide the force to drive import of proteins into the mitochondrial matrix."^^xsd:string, + oboInOwl:hasExactSynonym "pre-sequence translocase-associated import motor"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "PAM complex"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial import motor"^^xsd:string, + rdfs:label "presequence translocase-associated import motor"^^xsd:string, + oboInOwl:id "GO:0001405"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005744, + obo:GO_0043234 + + +Class: obo:GO_0034646 + + Annotations: + oboInOwl:id "GO:0034646"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A lipid monolayer that surrounds and encloses an organelle."^^xsd:string, + rdfs:label "organelle-enclosing lipid monolayer"^^xsd:string + + SubClassOf: + obo:GO_0044446 + + +Class: obo:GO_0035796 + + Annotations: + oboInOwl:id "GO:0035796"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "ATP-binding cassette (ABC) transporter complex, ECF-type"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:21135102"^^xsd:string + oboInOwl:hasExactSynonym "energy coupling factor (ECF)-type ABC transporter"^^xsd:string, + rdfs:comment "The ECF-type transporters differs from other types of ABC transporters because the substrate-binding subunit lies integral to the membrane."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18931129"^^xsd:string + oboInOwl:hasExactSynonym "energy-coupling factor transporter"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18931129"^^xsd:string, + oboInOwl:hasDbXref "PMID:20972419"^^xsd:string, + oboInOwl:hasDbXref "PMID:21135102"^^xsd:string + obo:IAO_0000115 "A complex for the transport of metabolites into the cell, consisting of 4 subunits: a transmembrane substrate-binding protein (known as the S component), and an energy-coupling module that comprises two ATP-binding proteins (known as the A and A' components) and a transmembrane protein (known as the T component). Transport of the substrate across the membrane is driven by the hydrolysis of ATP."^^xsd:string, + rdfs:label "ATP-binding cassette (ABC) transporter complex, transmembrane substrate-binding subunit-containing"^^xsd:string + + SubClassOf: + obo:GO_0043190 + + +Class: obo:GO_0033643 + + Annotations: + oboInOwl:inSubset , + rdfs:label "host cell part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033643"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any constituent part of a host cell. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0043657) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043657, + obo:GO_0044217 + + +Class: obo:GO_0035792 + + Annotations: + rdfs:label "other organism postsynaptic membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "A postsynaptic membrane that is part of another organism, i.e. a secondary organism with which the first organism is interacting. A postsynaptic membrane is a specialized area of membrane facing the presynaptic membrane on the tip of the nerve ending and separated from it by a minute cleft (the synaptic cleft). Neurotransmitters transmit the signal across the synaptic cleft to the postsynaptic membrane."^^xsd:string, + oboInOwl:id "GO:0035792"^^xsd:string + + SubClassOf: + obo:GO_0044218 + + +Class: obo:GO_0043591 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + oboInOwl:hasBroadSynonym "spore wall"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + oboInOwl:hasExactSynonym "peptidoglycan-based spore wall"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "endospore wall"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043591"^^xsd:string, + rdfs:label "endospore external encapsulating structure"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0055030"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:15035041"^^xsd:string + obo:IAO_0000115 "The structures that lie outside the inner membrane and surround the entire endospore; consists of a peptidoglycan-containing inner layer (the endospore cortex) surrounded by a multilayered proteinaceous coat. An exosporium may be present as an extreme outer layer."^^xsd:string + + SubClassOf: + obo:GO_0031160 + + +Class: obo:GO_0043592 + + Annotations: + oboInOwl:inSubset , + rdfs:label "exosporium"^^xsd:string, + oboInOwl:hasRelatedSynonym "exospore"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "epispore"^^xsd:string, + oboInOwl:id "GO:0043592"^^xsd:string, + oboInOwl:hasRelatedSynonym "perispore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "The outermost layer of a bacterial endospore, which is loosely attached and located outside of the endospore coat. It is generally composed of protein, carbohydrate, and perhaps lipid."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0043591 + + +Class: obo:GO_0033648 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033648"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, as found in host cells, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:hasExactSynonym "host intracellular membrane-enclosed organelle"^^xsd:string, + rdfs:label "host intracellular membrane-bounded organelle"^^xsd:string + + SubClassOf: + obo:GO_0033647 + + +Class: obo:GO_0043593 + + Annotations: + rdfs:label "endospore coat"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "The layer in a bacterial endospore that lies under the exosporium, and is impermeable to many toxic molecules. The coat may also contain enzymes that are involved in endospore germination."^^xsd:string, + oboInOwl:id "GO:0043593"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0043591 + + +Class: obo:GO_0043594 + + Annotations: + oboInOwl:inSubset , + rdfs:label "outer endospore membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043594"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "The outer membrane around a bacterial endospore, located between the endospore cortex and endospore coat."^^xsd:string + + EquivalentTo: + obo:GO_0019867 + and (obo:BFO_0000050 some obo:GO_0043591) + + SubClassOf: + obo:GO_0019867, + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0043591 + + +Class: obo:GO_0043595 + + Annotations: + oboInOwl:inSubset , + rdfs:label "endospore cortex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043595"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A layer surrounding a bacterial endospore found inside the outer endospore membrane, but outside the membrane surrounding the endospore core. It consists of peptidoglycan of a different chemical nature than that found in vegetative cell walls which results in less cross-linking of peptidoglycan."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0043591 + + +Class: obo:GO_0033645 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033645"^^xsd:string, + rdfs:label "host cell endomembrane system"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A collection of membranous structures involved in transport within the host cell. The main components of the endomembrane system are endoplasmic reticulum, Golgi bodies, vesicles, cell membrane and nuclear envelope. Members of the endomembrane system pass materials through each other or though the use of vesicles. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + SubClassOf: + obo:GO_0033644 + + +Class: obo:GO_0030485 + + Annotations: + oboInOwl:hasExactSynonym "smooth muscle fibre"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "smooth muscle contractile fiber"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The contractile fiber of smooth muscle cells."^^xsd:string, + oboInOwl:hasBroadSynonym "smooth muscle fiber"^^xsd:string, + oboInOwl:id "GO:0030485"^^xsd:string + + SubClassOf: + obo:GO_0043292, + obo:GO_0044449 + + +Class: obo:GO_0043596 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The Y-shaped region of a nuclear replicating DNA molecule, resulting from the separation of the DNA strands and in which the synthesis of new strands takes place. Also includes associated protein complexes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear replication fork"^^xsd:string, + oboInOwl:id "GO:0043596"^^xsd:string + + EquivalentTo: + obo:GO_0005657 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:BFO_0000051 some obo:GO_0071162, + obo:GO_0044454, + obo:GO_0005657 + + +Class: obo:GO_0033644 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell membrane"^^xsd:string, + oboInOwl:id "GO:0033644"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Double layer of lipid molecules as it encloses host cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + SubClassOf: + obo:GO_0044218, + obo:GO_0033643 + + +Class: obo:GO_0030486 + + Annotations: + rdfs:label "smooth muscle dense body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Electron-dense region associated with a smooth muscle contractile fiber."^^xsd:string, + oboInOwl:id "GO:0030486"^^xsd:string + + SubClassOf: + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0030485 + + +Class: obo:GO_0043597 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The Y-shaped region of a cytoplasmic replicating DNA molecule, resulting from the separation of the DNA strands and in which the synthesis of new strands takes place. Also includes associated protein complexes."^^xsd:string, + rdfs:label "cytoplasmic replication fork"^^xsd:string, + oboInOwl:id "GO:0043597"^^xsd:string + + EquivalentTo: + obo:GO_0005657 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0005657, + obo:BFO_0000050 some obo:GO_0000229, + obo:GO_0044444 + + +Class: obo:GO_0033647 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, occurring within the host cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033647"^^xsd:string, + rdfs:label "host intracellular organelle"^^xsd:string + + SubClassOf: + obo:GO_0033646 + + +Class: obo:GO_0043598 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043598"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:14646196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16172520"^^xsd:string + obo:IAO_0000115 "A cytoplasmic complex of two polypeptides that loads the DNA polymerase processivity factor proliferating cell nuclear antigen (PCNA) onto DNA, thereby permitting processive DNA synthesis catalyzed by DNA polymerase. Examples of this component are found in prokaryotic species."^^xsd:string, + rdfs:label "cytoplasmic DNA replication factor C complex"^^xsd:string + + EquivalentTo: + obo:GO_0005663 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0005663, + obo:BFO_0000050 some obo:GO_0043600, + obo:GO_0044444 + + +Class: obo:GO_0033646 + + Annotations: + oboInOwl:hasExactSynonym "host cell intracellular part"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033646"^^xsd:string, + rdfs:label "host intracellular part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any constituent part of the living contents of a host cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043656, + obo:GO_0033643 + + +Class: obo:GO_0042555 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11282021"^^xsd:string + obo:IAO_0000115 "A hexameric protein complex required for the initiation and regulation of DNA replication."^^xsd:string, + rdfs:label "MCM complex"^^xsd:string, + oboInOwl:id "GO:0042555"^^xsd:string, + oboInOwl:hasExactSynonym "mini-chromosome maintenance complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0044454, + obo:GO_0043234 + + +Class: obo:GO_0034663 + + Annotations: + oboInOwl:id "GO:0034663"^^xsd:string, + oboInOwl:hasExactSynonym "ER chaperone complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12475965"^^xsd:string + obo:IAO_0000115 "A protein complex that is located in the endoplasmic reticulum and is composed of chaperone proteins, including BiP, GRP94; CaBP1, protein disulfide isomerase (PDI), ERdj3, cyclophilin B, ERp72, GRP170, UDP-glucosyltransferase, and SDF2-L1."^^xsd:string, + rdfs:label "endoplasmic reticulum chaperone complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "endoplasmic reticulum network complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "ER network complex"^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0034664 + + Annotations: + oboInOwl:id "GO:0034664"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Ig heavy chain-bound ER chaperone complex"^^xsd:string, + rdfs:label "Ig heavy chain-bound endoplasmic reticulum chaperone complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12475965"^^xsd:string + obo:IAO_0000115 "A protein complex that is located in the endoplasmic reticulum (ER) and is formed by the association of an immunoglobulin heavy chain with the proteins of the ER chaperone complex; the latter include BiP, GRP94; CaBP1, protein disulfide isomerase (PDI), ERdj3, cyclophilin B, ERp72, GRP170, UDP-glucosyltransferase, and SDF2-L1."^^xsd:string, + oboInOwl:hasExactSynonym "immunoglobulin heavy chain-bound endoplasmic reticulum chaperone complex"^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0034665 + + Annotations: + oboInOwl:hasNarrowSynonym "ITGA1-ITGB1 complex"^^xsd:string, + oboInOwl:id "GO:0034665"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "VLA-1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha1 subunit and one beta1 subunit."^^xsd:string, + rdfs:label "alpha1-beta1 integrin complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034666 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034666"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2432"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2-ITGB1 complex"^^xsd:string, + rdfs:label "alpha2-beta1 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:3546305"^^xsd:string + oboInOwl:hasExactSynonym "VLA-2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alpha2 subunit and one beta1 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0001400 + + Annotations: + oboInOwl:id "GO:0001400"^^xsd:string, + oboInOwl:hasNarrowSynonym "conjugation tube base"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "base of shmoo tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The region where the mating projection meets the bulk of the cell, in unicellular fungi exposed to mating pheromone."^^xsd:string, + rdfs:label "mating projection base"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005937, + obo:GO_0044463 + + +Class: obo:GO_0043590 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "bacterial nucleoid"^^xsd:string, + oboInOwl:id "GO:0043590"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The region of a bacterial cell to which the DNA is confined."^^xsd:string + + SubClassOf: + obo:GO_0009295 + + +Class: obo:GO_0034662 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16129695"^^xsd:string, + oboInOwl:hasDbXref "PMID:16798722"^^xsd:string, + oboInOwl:hasDbXref "PMID:16926444"^^xsd:string + obo:IAO_0000115 "A protein complex that contains ezrin, Na+/H+ exchanger regulatory factor (NHERF, also called EBP50), and two copies of the cystic fibrosis transmembrane conductance regulator (CFTR). The CFTR molecules interact with NHERF via their cytoplasmic tail domains; the complex is thought to link the CFTR channel to the actin cytoskeleton and contribute to the regulation of channel activity."^^xsd:string, + oboInOwl:id "GO:0034662"^^xsd:string, + rdfs:label "CFTR-NHERF-ezrin complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0001401 + + Annotations: + rdfs:label "mitochondrial sorting and assembly machinery complex"^^xsd:string, + rdfs:comment "See also the cellular component term 'mitochondrial outer membrane translocase complex ; GO:0005742'."^^xsd:string, + oboInOwl:id "GO:0001401"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "SAM complex"^^xsd:string, + oboInOwl:hasExactSynonym "TOB complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12891361"^^xsd:string + obo:IAO_0000115 "A large complex of the mitochondrial outer membrane that mediates sorting of some imported proteins to the outer membrane and their assembly in the membrane; functions after import of incoming proteins by the mitochondrial outer membrane translocase complex."^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005741, + obo:GO_0043234 + + +Class: obo:GO_0045098 + + Annotations: + oboInOwl:hasNarrowSynonym "peripherin"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "glial fibrillary acidic protein"^^xsd:string, + oboInOwl:hasNarrowSynonym "type III intermediate filament associated protein"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "A type of intermediate filament, typically made up of one or more of the proteins vimentin, desmin, glial fibrillary acidic protein (GFAP), and peripherin. Unlike the keratins, the type III proteins can form both homo- and heteropolymeric IF filaments."^^xsd:string, + rdfs:label "type III intermediate filament"^^xsd:string, + oboInOwl:hasNarrowSynonym "vimentin"^^xsd:string, + oboInOwl:hasNarrowSynonym "desmin"^^xsd:string, + oboInOwl:id "GO:0045098"^^xsd:string + + SubClassOf: + obo:GO_0005882 + + +Class: obo:GO_0034657 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "GID complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12686616"^^xsd:string, + oboInOwl:hasDbXref "PMID:18508925"^^xsd:string + obo:IAO_0000115 "A protein complex with ubiquitin ligase activity that is involved in proteasomal degradation of fructose-1,6-bisphosphatase (FBPase) and phosphoenolpyruvate carboxykinase during the transition from gluconeogenic to glycolytic growth conditions. In S. cerevisiae, the GID (Glucose Induced degradation Deficient) complex consists of Vid30p, Rmd5p, Vid24p, Vid28p, Gid7p, Gid8p, and Fyv10p."^^xsd:string, + oboInOwl:id "GO:0034657"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0042563 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:9323123"^^xsd:string, + oboInOwl:hasDbXref "PMID:9323134"^^xsd:string + obo:IAO_0000115 "A protein complex which usually consists of three components, e.g. in Xenopus, the importin alpha-subunit/CAS/Ran, and which functions to shuttle the importin alpha-subunit out of the nucleus through the nuclear pore."^^xsd:string, + oboInOwl:id "GO:0042563"^^xsd:string, + rdfs:label "importin alpha-subunit nuclear export complex"^^xsd:string + + SubClassOf: + obo:GO_0031074 + + +Class: obo:GO_0042564 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042564"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:9323123"^^xsd:string, + oboInOwl:hasDbXref "PMID:9323134"^^xsd:string + obo:IAO_0000115 "A protein complex which usually consists of three components, e.g. in Xenopus, the importin alpha and beta-subunits and any protein which has a nuclear localization sequence (NLS). The complex acts to import proteins with an NLS into the nucleus through a nuclear pore."^^xsd:string, + rdfs:label "NLS-dependent protein nuclear import complex"^^xsd:string + + SubClassOf: + obo:GO_0031074 + + +Class: obo:GO_0033651 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell plastid"^^xsd:string, + oboInOwl:id "GO:0033651"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any member of a family of organelles as found in the cytoplasm of host cells, which are membrane-bounded and contain DNA. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0030479 + + Annotations: + oboInOwl:id "GO:0030479"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "actin cortical patch"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005857"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879693649"^^xsd:string, + oboInOwl:hasDbXref "PMID:16959963"^^xsd:string + obo:IAO_0000115 "A discrete actin-containing structure found at the plasma membrane in cells, at sites of endocytosis; formed of networks of branched actin filaments that lie just beneath the plasma membrane and assemble, move, and disassemble rapidly. An example of this is the actin cortical patch found in Saccharomyces cerevisiae."^^xsd:string, + oboInOwl:hasExactSynonym "actin patch"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030864, + obo:GO_0044430, + obo:GO_0044448 + + +Class: obo:GO_0045092 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-18 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12759435"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-18; comprises an alpha and a beta subunit."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045092"^^xsd:string, + rdfs:label "interleukin-18 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0033652 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A chlorophyll-containing plastid as found within host cells with thylakoids organized into grana and frets, or stroma thylakoids, and embedded in a stroma. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:id "GO:0033652"^^xsd:string, + rdfs:label "host cell chloroplast"^^xsd:string + + SubClassOf: + obo:GO_0033651 + + +Class: obo:GO_0030478 + + Annotations: + oboInOwl:id "GO:0030478"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000143"^^xsd:string, + rdfs:label "actin cap"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:10652251"^^xsd:string + obo:IAO_0000115 "Polarized accumulation of cytoskeletal proteins (including F-actin) and regulatory proteins in a cell. An example of this is the actin cap found in Saccharomyces cerevisiae."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030864, + obo:GO_0044430, + obo:GO_0044448 + + +Class: obo:GO_0033653 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "host chloroplast component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any constituent part of a chloroplast as it is found in host cells and which are a chlorophyll-containing plastid with thylakoids organized into grana and frets, or stroma thylakoids, and embedded in a stroma. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:id "GO:0033653"^^xsd:string, + rdfs:label "host cell chloroplast part"^^xsd:string + + SubClassOf: + obo:GO_0033652 + + +Class: obo:GO_0033654 + + Annotations: + rdfs:label "host cell chloroplast thylakoid membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033654"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any sac-like membranous structures (cisternae) in a chloroplast found in host cells, combined into stacks (grana) and present singly in the stroma (stroma thylakoids or frets) as interconnections between grana. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + SubClassOf: + obo:GO_0044160, + obo:GO_0033653 + + +Class: obo:GO_0045095 + + Annotations: + rdfs:label "keratin filament"^^xsd:string, + oboInOwl:id "GO:0045095"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "acidic keratin"^^xsd:string, + oboInOwl:hasRelatedSynonym "basic/neutral keratin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "A filament composed of acidic and basic keratins (types I and II), typically expressed in epithelial cells. The keratins are the most diverse classes of IF proteins, with a large number of keratin isoforms being expressed. Each type of epithelium always expresses a characteristic combination of type I and type II keratins."^^xsd:string + + SubClassOf: + obo:GO_0005882 + + +Class: obo:GO_0033650 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell mitochondrion"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A semiautonomous, self replicating organelle as found in host cells that occurs in varying numbers, shapes, and sizes in the cell cytoplasm. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:hasExactSynonym "host mitochondria"^^xsd:string, + oboInOwl:id "GO:0033650"^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0017122 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "UDP-N-acetylglucosamine-peptide N-acetylglucosaminyltransferase"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein N-acetylglucosaminyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15247246"^^xsd:string + obo:IAO_0000115 "Heterotrimeric enzyme complex, which in humans is composed of two large subunits of the same size, and one smaller subunit. Functions in the addition of nucleotide-activated sugars onto the polypeptide."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "O-GlcNAc transferase complex"^^xsd:string, + oboInOwl:id "GO:0017122"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0036007 + + Annotations: + oboInOwl:id "GO:0036007"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "scintillon"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mag"^^xsd:string, + oboInOwl:hasDbXref "PMID:4501583"^^xsd:string, + oboInOwl:hasDbXref "PMID:5642469"^^xsd:string + obo:IAO_0000115 "A body present in the cytoplasm of some dinoflagellates, which is the source of bioluminescence; emits light on acidification in the presence of oxygen."^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0016528 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The cytoplasm of a muscle cell; includes the sarcoplasmic reticulum."^^xsd:string, + oboInOwl:id "GO:0016528"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sarcoplasm"^^xsd:string, + rdfs:label "sarcoplasm"^^xsd:string + + SubClassOf: + obo:GO_0005737 + + +Class: obo:GO_0016529 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Endoplasmic_reticulum#Sarcoplasmic_reticulum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008221"^^xsd:string, + oboInOwl:id "GO:0016529"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A fine reticular network of membrane-limited elements that pervades the sarcoplasm of a muscle cell; continuous over large portions of the cell and with the nuclear envelope; that part of the endoplasmic reticulum specialized for calcium release, uptake and storage."^^xsd:string, + rdfs:label "sarcoplasmic reticulum"^^xsd:string, + rdfs:comment "See also the cellular component terms 'sarcoplasm ; GO:0016528', 'nuclear envelope ; GO:0005635' and 'endoplasmic reticulum ; GO:0005783'."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016528, + obo:GO_0005783 + + +Class: obo:GO_0036000 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mag"^^xsd:string, + oboInOwl:hasDbXref "PMID:10723937"^^xsd:string, + oboInOwl:hasDbXref "PMID:4629881"^^xsd:string + obo:IAO_0000115 "A small subcellular vesicle, surrounded by a membrane, in the pellicle of ciliate protozoans that discharges a mucus-like secretion."^^xsd:string, + oboInOwl:id "GO:0036000"^^xsd:string, + rdfs:label "mucocyst"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0016942 + + Annotations: + oboInOwl:hasExactSynonym "IGF binding protein complex"^^xsd:string, + rdfs:label "insulin-like growth factor binding protein complex"^^xsd:string, + oboInOwl:id "GO:0016942"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A complex of proteins which includes the insulin-like growth factor (IGF) and a number of IGF-binding proteins. The complex plays a role in growth and development."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0030496 + + Annotations: + rdfs:label "midbody"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A thin cytoplasmic bridge formed between daughter cells at the end of cytokinesis. The midbody forms where the contractile ring constricts, and may persist for some time before finally breaking to complete cytokinesis."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Midbody_(cell_biology)"^^xsd:string, + oboInOwl:id "GO:0030496"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0035770 + + Annotations: + oboInOwl:hasExactSynonym "RNP granule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:16520386"^^xsd:string, + oboInOwl:hasDbXref "PMID:20368989"^^xsd:string, + oboInOwl:hasDbXref "PMID:21436445"^^xsd:string + obo:IAO_0000115 "A non-membranous macromolecular complex containing proteins and translationally silenced mRNAs. RNA granules contain proteins that control the localization, stability, and translation of their RNA cargo. Different types of RNA granules (RGs) exist, depending on the cell type and cellular conditions."^^xsd:string, + rdfs:label "ribonucleoprotein granule"^^xsd:string, + oboInOwl:id "GO:0035770"^^xsd:string, + oboInOwl:hasExactSynonym "mRNP granule"^^xsd:string, + oboInOwl:hasNarrowSynonym "RNA granule"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0043232, + obo:GO_0044444 + + +Class: obo:GO_0016939 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.csfic.mi.cnr.it/centro/lines/8/ric.html"^^xsd:string + obo:IAO_0000115 "A complex consisting of two distinct motor subunits that form a heterodimer complexed with a third non-motor accessory subunit, the kinesin associated protein or KAP; the KIF3 heterodimer interacts via its C-terminal portion with KAP, which is thought to regulate the binding of the motor to cargo membranes."^^xsd:string, + oboInOwl:id "GO:0016939"^^xsd:string, + rdfs:label "kinesin II complex"^^xsd:string + + SubClassOf: + obo:GO_0005871 + + +Class: obo:GO_0043513 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Heterodimeric hormone composed of an inhibin alpha subunit complexed with an inhibin beta-B subunit."^^xsd:string, + rdfs:comment "Note that the actions of the inhibin complex are the opposite of those of the activin complex, which is a dimer of an inhibin beta-A and/or inhibin beta-B subunit. See also the cellular component term 'activin complex ; GO:0048180'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043513"^^xsd:string, + rdfs:label "inhibin B complex"^^xsd:string + + SubClassOf: + obo:GO_0043511 + + +Class: obo:GO_0016938 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.csfic.mi.cnr.it/centro/lines/8/ric.html"^^xsd:string + obo:IAO_0000115 "A complex of two kinesin heavy chains and two kinesin light chains."^^xsd:string, + oboInOwl:id "GO:0016938"^^xsd:string, + rdfs:label "kinesin I complex"^^xsd:string + + SubClassOf: + obo:GO_0005871 + + +Class: obo:GO_0043514 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "p35"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:ebc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12948519"^^xsd:string, + oboInOwl:hasDbXref "PMID:1381512"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of an interleukin-12 alpha (p35, product of the IL12A gene) and an interleukin-12 beta subunit (p40, product of the IL12B gene) and is secreted into the extracellular space."^^xsd:string, + oboInOwl:id "GO:0043514"^^xsd:string, + rdfs:label "interleukin-12 complex"^^xsd:string, + rdfs:comment "Note that this heterodimeric cytokine utilizes the IL-12p35 subunit as its alpha chain, which is also used by IL-35 as its alpha chain, and utilizes the IL-12p40 subunit as its beta chain, which is also used by IL-23 as its beta chain."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IL12B"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IL12A"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "IL-12 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "p40"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0033620 + + Annotations: + oboInOwl:id "GO:0033620"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Mei2 nuclear dot"^^xsd:string, + oboInOwl:hasExactSynonym "Mei2 dot"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12808043"^^xsd:string + obo:IAO_0000115 "A nuclear body that forms during meiotic prophase in a fixed position in the horsetail nucleus; contains Mei2 and meiRNA. May play a role in the progression of meiosis I."^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0043511 + + Annotations: + rdfs:comment "Note that the actions of the inhibin complex are the opposite of those of the activin complex, which is a dimer of an inhibin beta-A and/or inhibin beta-B subunit. See also the cellular component term 'activin complex ; GO:0048180'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inhibin complex"^^xsd:string, + oboInOwl:id "GO:0043511"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Heterodimeric hormone composed of an inhibin alpha subunit complexed with either an inhibin beta-A subunit, to form inhibin A, or an inhibin beta-B subunit, to form inhibin B."^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0043512 + + Annotations: + rdfs:comment "Note that the actions of the inhibin complex are the opposite of those of the activin complex, which is a dimer of an inhibin beta-A and/or inhibin beta-B subunit. See also the cellular component term 'activin complex ; GO:0048180'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043512"^^xsd:string, + rdfs:label "inhibin A complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Heterodimeric hormone composed of an inhibin alpha subunit complexed with an inhibin beta-A subunit."^^xsd:string + + SubClassOf: + obo:GO_0043511 + + +Class: obo:GO_0016935 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "glycine-gated chloride channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a transmembrane channel through which chloride ions may pass in response to glycine binding to the channel complex or one of its constituent parts."^^xsd:string, + oboInOwl:id "GO:0016935"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0034707 + + +Class: obo:GO_0045025 + + Annotations: + rdfs:label "mitochondrial degradosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10397341"^^xsd:string, + oboInOwl:hasDbXref "PMID:9829834"^^xsd:string + oboInOwl:hasExactSynonym "mtEXO"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10397341"^^xsd:string, + oboInOwl:hasDbXref "PMID:9829834"^^xsd:string + obo:IAO_0000115 "A mitochondrial protein complex with 3' to 5' exoribonuclease activity that participates in intron-independent turnover and processing of mitochondrial transcripts. In humans, the mitochondrial degradosome is a pentameric complex, and in yeast it exists as a heterodimer."^^xsd:string, + oboInOwl:id "GO:0045025"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:GO_0000177 + + +Class: obo:GO_0016533 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15689152"^^xsd:string + obo:IAO_0000115 "A protein complex that activates cyclin-dependent kinase 5; composed of regulatory and catalytic subunits."^^xsd:string, + rdfs:label "cyclin-dependent protein kinase 5 holoenzyme complex"^^xsd:string, + oboInOwl:id "GO:0016533"^^xsd:string + + SubClassOf: + obo:GO_0019908, + obo:GO_0000307 + + +Class: obo:GO_0072324 + + Annotations: + oboInOwl:id "GO:0072324"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term is an is_a child of 'extracellular region part' because it is part of the ascus that lies external to spores, each of which is a cell."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "DOI:10.1016/S0953-7562(96)80057-8"^^xsd:string + obo:IAO_0000115 "An extracellular part that consist of ascus cytoplasm that is not packaged into ascospores."^^xsd:string, + rdfs:label "ascus epiplasm"^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0017133 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A protein complex located in the mitochondrion. It contains flavin adenine dinucleotide (FAD) that, together with an acyl-CoA dehydrogenase, forms a system that oxidizes an acyl-CoA molecule and reduces ubiquinone and other acceptors in the mitochondrial electron transport system."^^xsd:string, + oboInOwl:id "GO:0017133"^^xsd:string, + rdfs:label "mitochondrial electron transfer flavoprotein complex"^^xsd:string + + EquivalentTo: + obo:GO_0045251 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0045251 + + +Class: obo:GO_0020002 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "The plasma membrane surrounding a host cell."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell plasma membrane"^^xsd:string, + oboInOwl:id "GO:0020002"^^xsd:string + + SubClassOf: + obo:GO_0033644 + + +Class: obo:GO_0020003 + + Annotations: + rdfs:label "symbiont-containing vacuole"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term does not have a relationship to 'vacuole ; GO:0005773' because it does not fit the definition of a vacuole; the parasitophorous vacuole was so named because it resembles a vacuole in the microscope."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "Membrane-bounded vacuole within a host cell in which a symbiont organism resides. The vacuole membrane is derived from both the host and symbiont."^^xsd:string, + oboInOwl:id "GO:0020003"^^xsd:string, + oboInOwl:hasExactSynonym "parasitophorous vacuole"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:GO_0065010 + + +Class: obo:GO_0016007 + + Annotations: + oboInOwl:id "GO:0016007"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "The major and minor mitochondrial derivatives are the mitochondria of the sperm tail and derive by the unfolding of the Nebenkern during flagellum elongation."^^xsd:string, + rdfs:label "mitochondrial derivative"^^xsd:string + + SubClassOf: + obo:GO_0005739 + + +Class: obo:GO_0016008 + + Annotations: + oboInOwl:id "GO:0016008"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17123504"^^xsd:string + obo:IAO_0000115 "The larger of the two mitochondrial derivatives that arise by the unfolding of the Nebenkern during flagellum elongation; the major mitochondrial derivative is ovoid and darker than the minor derivative."^^xsd:string, + rdfs:label "major mitochondrial derivative"^^xsd:string + + SubClassOf: + obo:GO_0016007 + + +Class: obo:GO_0016009 + + Annotations: + oboInOwl:id "GO:0016009"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "minor mitochondrial derivative"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17123504"^^xsd:string + obo:IAO_0000115 "The smaller of the two mitochondrial derivatives that arise by the unfolding of the Nebenkern during flagellum elongation."^^xsd:string + + SubClassOf: + obo:GO_0016007 + + +Class: obo:GO_0016006 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016006"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "A product of the fusion of the mitochondria during spermatogenesis. After the completion of meiosis the mitochondria of the spermatid collect along side the nucleus and fuse into two masses; these wrap around each other to produce the spherical Nebenkern. During flagellum elongation the Nebenkern unfolds and the two derivatives (major and minor mitochondrial derivatives) elongate down the axoneme."^^xsd:string, + rdfs:label "Nebenkern"^^xsd:string + + SubClassOf: + obo:GO_0005739 + + +Class: obo:GO_0043527 + + Annotations: + rdfs:label "tRNA methyltransferase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A multimeric protein complex involved in the methylation of specific nucleotides in tRNA."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043527"^^xsd:string + + SubClassOf: + obo:GO_0034708, + obo:GO_0044444 + + +Class: obo:GO_0043528 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "tRNA (m2G10) methyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15899842"^^xsd:string + obo:IAO_0000115 "A protein complex required for the methylation of the guanosine nucleotide at position 10 (m2G10) in tRNA. In S. cerevisiae, this complex consists of at least two subunits, Trm11p and Trm112p."^^xsd:string, + oboInOwl:id "GO:0043528"^^xsd:string + + SubClassOf: + obo:GO_0043527 + + +Class: obo:GO_0043529 + + Annotations: + oboInOwl:hasExactSynonym "Golgi to ER Traffic complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16269340"^^xsd:string + obo:IAO_0000115 "A multisubunit complex involved in ER/Golgi trafficking (Golgi to ER Traffic). In yeast, includes Get1p, Get2p and Get3p proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "GET complex"^^xsd:string, + oboInOwl:id "GO:0043529"^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0000300 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10512869"^^xsd:string + obo:IAO_0000115 "Peripheral to that fraction of cells, prepared by disruptive biochemical methods, that includes the plasma and other membranes; can be extracted from membrane fraction with high concentrations of salt or high pH."^^xsd:string, + oboInOwl:id "GO:0000300"^^xsd:string, + rdfs:label "peripheral to membrane of membrane fraction"^^xsd:string + + SubClassOf: + obo:GO_0005624 + + +Class: obo:GO_0042589 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a zymogen granule."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "zymogen granule membrane"^^xsd:string, + oboInOwl:id "GO:0042589"^^xsd:string + + SubClassOf: + obo:GO_0030667, + obo:BFO_0000050 some obo:GO_0042588 + + +Class: obo:GO_0036024 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:15853774"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and transmembrane protease serine 7 (TMPRSS7); formation of the complex inhibits the serine protease activity of transmembrane protease serine 7."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-TMPRSS7 complex"^^xsd:string, + oboInOwl:id "GO:0036024"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein C inhibitor-TMPRSS7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-TMPRSS7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000016461"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-transmembrane protease serine 7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-TMPRSS7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15853774"^^xsd:string, + oboInOwl:hasDbXref "PR:000016461"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-matriptase-3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-TMPRSS7 complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0042587 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12179957"^^xsd:string, + oboInOwl:hasDbXref "http://148.216.10.83/cellbio/the_mi19.gif"^^xsd:string + obo:IAO_0000115 "Cytoplasmic bead-like structures of animal cells, visible by electron microscope. Each granule is a functional unit with the biosynthesis and catabolism of glycogen being catalyzed by enzymes bound to the granule surface."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1081228141"^^xsd:string, + rdfs:label "glycogen granule"^^xsd:string, + oboInOwl:hasExactSynonym "glycogen particle"^^xsd:string, + oboInOwl:id "GO:0042587"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0036026 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-PLAT complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-PLAT complex"^^xsd:string, + oboInOwl:id "GO:0036026"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10340997"^^xsd:string, + oboInOwl:hasDbXref "PR:000012825"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-tissue-type plasminogen activator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:10340997"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and tissue-type plasminogen activator (PLAT); formation of the complex inhibits the serine protease activity of tissue-type plasminogen activator."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-PLAT complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10340997"^^xsd:string, + oboInOwl:hasDbXref "PR:000012825"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-tPA complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-PLAT complex"^^xsd:string, + rdfs:label "protein C inhibitor-PLAT complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0042588 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A membrane-bounded, cytoplasmic secretory granule found in enzyme-secreting cells and visible by light microscopy. Contain zymogen, an inactive enzyme precursor, often of a digestive enzyme."^^xsd:string, + rdfs:label "zymogen granule"^^xsd:string, + oboInOwl:id "GO:0042588"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0036025 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:15328353"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and transmembrane protease serine 11E (TMPRSS11E); formation of the complex inhibits the serine protease activity of transmembrane protease serine 11E."^^xsd:string, + rdfs:label "protein C inhibitor-TMPRSS11E complex"^^xsd:string, + oboInOwl:id "GO:0036025"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000016451"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-transmembrane protease serine 11E complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-TMPRSS11E complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-TMPRSS11E complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-TMPRSS11E complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-TMPRSS11E complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0016507 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016507"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "A complex that includes the long-chain 3-hydroxyacyl-CoA dehydrogenase and long-chain enoyl-CoA hydratase activities in two subunits (alpha and beta), catalyzing two steps of the fatty acid beta-oxidation cycle within the mitochondrial matrix."^^xsd:string, + rdfs:label "fatty acid beta-oxidation multienzyme complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "trifunctional enzyme"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0043234 + + +Class: obo:GO_0036028 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PR:000007299"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-F2 complex"^^xsd:string, + rdfs:label "protein C inhibitor-thrombin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036028"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:6323392"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and thrombin (F2); formation of the complex inhibits the serine protease activity of thrombin."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-thrombin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-thrombin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-thrombin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000007299"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-coagulation factor II complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-thrombin complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0016012 + + Annotations: + oboInOwl:hasExactSynonym "sarcoglycan-sarcospan complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15117830"^^xsd:string, + oboInOwl:hasDbXref "PMID:16710609"^^xsd:string + obo:IAO_0000115 "A protein complex formed of four sarcoglycans plus sarcospan; there are six known sarcoglycans: alpha-, beta-, gamma-, delta-, epsilon- and zeta-sarcoglycan; all are N-glycosylated single-pass transmembrane proteins. The sarcoglycan-sarcospan complex is a subcomplex of the dystrophin glycoprotein complex, and is fixed to the dystrophin axis by a lateral association with the dystroglycan complex."^^xsd:string, + rdfs:label "sarcoglycan complex"^^xsd:string, + oboInOwl:id "GO:0016012"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016011, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0036027 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PR:000012826"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-urokinase-type plasminogen activator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-PLAU complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000012826"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-uPA complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-PLAU complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-PLAU complex"^^xsd:string, + oboInOwl:id "GO:0036027"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-PLAU complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000012826"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-U-plasminogen activator complex"^^xsd:string, + rdfs:label "protein C inhibitor-PLAU complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:10340997"^^xsd:string, + oboInOwl:hasDbXref "PMID:3501295"^^xsd:string, + oboInOwl:hasDbXref "PMID:8536714"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and urokinase-type plasminogen activator (PLAU); formation of the complex inhibits the serine protease activity of urokinase-type plasminogen activator."^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0008087 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9223679"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a transmembrane channel through which calcium ions may cross a cell membrane in response to changes in membrane potential generated in response to a light stimulus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "light-activated voltage-sensitive calcium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "light-activated voltage gated calcium channel complex"^^xsd:string, + rdfs:label "light-activated voltage-gated calcium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "light-activated voltage-dependent calcium channel complex"^^xsd:string, + oboInOwl:id "GO:0008087"^^xsd:string + + SubClassOf: + obo:GO_0005891 + + +Class: obo:GO_0016013 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.dmd.nl/DGC.html#syn"^^xsd:string + obo:IAO_0000115 "A protein complex that includes alpha-, beta1-, beta2-syntrophins and syntrophin-like proteins; the syntrophin complex binds to the second half of the carboxy-terminal domain of dystrophin; also associates with neuronal nitric oxide synthase."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:416"^^xsd:string + oboInOwl:hasRelatedSynonym "nitric oxide synthase-dystrophin complex, skeletal muscle"^^xsd:string, + rdfs:label "syntrophin complex"^^xsd:string, + oboInOwl:id "GO:0016013"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016010, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0034693 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "18S U11/U12 snRNP"^^xsd:string, + oboInOwl:id "GO:0034693"^^xsd:string, + rdfs:label "U11/U12 snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U11/U12"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15146077"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex formed by the association of the U11 and U12 small nuclear ribonucleoproteins."^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0016010 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "DGC"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "dystrophin-associated glycoprotein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15117830"^^xsd:string, + oboInOwl:hasDbXref "PMID:16710609"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that forms a strong mechanical link between the cytoskeleton and extracellular matrix; typical of, but not confined to, muscle cells. The complex is composed of transmembrane, cytoplasmic, and extracellular proteins, including dystrophin, sarcoglycans, dystroglycan, dystrobrevins, syntrophins, sarcospan, caveolin-3, and NO synthase."^^xsd:string, + oboInOwl:hasExactSynonym "dystrophin glycoprotein complex"^^xsd:string, + oboInOwl:id "GO:0016010"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0017146 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.bris.ac.uk/Depts/Synaptic/info/glutamate.html"^^xsd:string + obo:IAO_0000115 "An assembly of four or five subunits which form a structure with an extracellular N-terminus and a large loop that together form the ligand binding domain. The C-terminus is intracellular. The ionotropic glutamate receptor complex itself acts as a ligand gated ion channel; on binding glutamate, charged ions pass through a channel in the center of the receptor complex. NMDA receptors are composed of assemblies of NR1 subunits (Figure 3) and NR2 subunits, which can be one of four separate gene products (NR2A-D). Expression of both subunits are required to form functional channels. The glutamate binding domain is formed at the junction of NR1 and NR2 subunits. NMDA receptors are permeable to calcium ions as well as being permeable to other ions. Thus NMDA receptor activation leads to a calcium influx into the post-synaptic cells, a signal thought to be crucial for the induction of NMDA-receptor dependent LTP and LTD."^^xsd:string, + rdfs:label "N-methyl-D-aspartate selective glutamate receptor complex"^^xsd:string, + oboInOwl:id "GO:0017146"^^xsd:string, + oboInOwl:hasExactSynonym "NMDA-selective glutamate receptor"^^xsd:string + + SubClassOf: + obo:GO_0008328 + + +Class: obo:GO_0036029 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein C inhibitor-KLK3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000003015"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-prostate-specific antigen complex"^^xsd:string, + oboInOwl:id "GO:0036029"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-KLK3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000003015"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-kallikrein-3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-KLK3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-KLK3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:1725227"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and prostate-specific antigen (KLK3); formation of the complex inhibits the serine protease activity of prostate-specific antigen."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-KLK3 complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0034692 + + Annotations: + rdfs:label "E.F.G complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8641291"^^xsd:string + obo:IAO_0000115 "A protein complex that comprises three core spliceosomal proteins, designated E, F, and G. Formation of the E.F.G complex is essential but not sufficient for the formation of a stable U1 snRNP complex."^^xsd:string, + oboInOwl:id "GO:0034692"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0016011 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "dystroglycan complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15117830"^^xsd:string, + oboInOwl:hasDbXref "PMID:16710609"^^xsd:string + obo:IAO_0000115 "A protein complex that includes alpha- and beta-dystroglycan, which are alternative products of the same gene; the laminin-binding component of the dystrophin-associated glycoprotein complex, providing a link between the subsarcolemmal cytoskeleton (in muscle cells) and the extracellular matrix. Alpha-dystroglycan is an extracellular protein binding to alpha-laminin and to beta-dystroglycan; beta-dystroglycan is a transmembrane protein which binds alpha-dystroglycan and dystrophin."^^xsd:string, + oboInOwl:id "GO:0016011"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016010, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0035749 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035749"^^xsd:string, + rdfs:label "myelin sheath adaxonal region"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20237282"^^xsd:string + obo:IAO_0000115 "The region of the myelin sheath nearest to the axon."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0043209 + + +Class: obo:GO_0034691 + + Annotations: + oboInOwl:id "GO:0034691"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphaE subunit and one beta7 subunit."^^xsd:string, + rdfs:label "alphaE-beta7 integrin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Itgae-Itgb7 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0034690 + + Annotations: + oboInOwl:hasNarrowSynonym "Itgad-Itgb2 complex"^^xsd:string, + oboInOwl:id "GO:0034690"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaD-beta2 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphaD subunit and one beta2 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0000306 + + Annotations: + rdfs:label "extrinsic to vacuolar membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000306"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one or the other surface of the vacuolar membrane, but not integrated into the hydrophobic region."^^xsd:string + + SubClassOf: + obo:GO_0031312, + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0005774 + + +Class: obo:GO_0016014 + + Annotations: + rdfs:label "dystrobrevin complex"^^xsd:string, + oboInOwl:id "GO:0016014"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15117830"^^xsd:string, + oboInOwl:hasDbXref "PMID:16710609"^^xsd:string + obo:IAO_0000115 "A protein complex comprising alpha- and beta-dystrobrevin; forms part of the dystrophin glycoprotein complex."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016010, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0036020 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "endolysosome membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pde"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an endolysosome. An endolysosome is a transient hybrid organelle formed by fusion of a late endosome with a lysosome."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "endolysosomal membrane"^^xsd:string, + oboInOwl:id "GO:0036020"^^xsd:string + + SubClassOf: + obo:GO_0005765, + obo:BFO_0000050 some obo:GO_0036019, + obo:GO_0010008 + + +Class: obo:GO_0000308 + + Annotations: + rdfs:label "cytoplasmic cyclin-dependent protein kinase holoenzyme complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000308"^^xsd:string, + oboInOwl:hasBroadSynonym "CDK holoenzyme"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "Cyclin-dependent protein kinase (CDK) complex found in the cytoplasm."^^xsd:string + + EquivalentTo: + obo:GO_0000307 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000307, + obo:GO_0044444 + + +Class: obo:GO_0000307 + + Annotations: + oboInOwl:id "GO:0000307"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "CDK holoenzyme"^^xsd:string, + rdfs:label "cyclin-dependent protein kinase holoenzyme complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:11602261"^^xsd:string + obo:IAO_0000115 "Cyclin-dependent protein kinases (CDKs) are heterodimeric enzymes that contain a kinase catalytic subunit associated with a regulatory cyclin partner."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0043541 + + Annotations: + oboInOwl:id "GO:0043541"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rn"^^xsd:string, + oboInOwl:hasDbXref "PMID:19129246"^^xsd:string + obo:IAO_0000115 "A multienzyme, heterooligomeric complex involved in dolichyl-linked oligosaccharide synthesis. In yeast the complex is composed of Alg7p, which catalyzes the first step (GlcNAc1-PP-Dol from dolichol-phosphate and UDP-GlcNAc), and Alg13p plus Alg14p, the catalytic and anchoring subunits respectively, which together catalyze the second step (GlcNAc2-PP-dolichol from GlcNAc1-PP-Dol and UDP-GlcNAc) of dolichyl-linked oligosaccharide synthesis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "UDP-N-acetylglucosamine transferase complex"^^xsd:string, + rdfs:comment "See also the molecular function term 'N-acetylglucosaminyldiphosphodolichol N-acetylglucosaminyltransferase activity ; GO:0004577'."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0043540 + + Annotations: + rdfs:label "6-phosphofructo-2-kinase/fructose-2,6-biphosphatase 1 complex"^^xsd:string, + oboInOwl:id "GO:0043540"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:so"^^xsd:string + obo:IAO_0000115 "A homodimeric, bifunctional enzyme complex which catalyzes the synthesis and degradation of fructose 2,6-bisphosphate, and is required for both glycolysis and gluconeogenesis."^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0036021 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "endolysosomal lumen"^^xsd:string, + rdfs:label "endolysosome lumen"^^xsd:string, + oboInOwl:id "GO:0036021"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pde"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an endolysosome. An endolysosome is a transient hybrid organelle formed by fusion of a late endosome with a lysosome."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0036019, + obo:GO_0043202, + obo:GO_0031904 + + +Class: obo:GO_0035748 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035748"^^xsd:string, + rdfs:label "myelin sheath abaxonal region"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20237282"^^xsd:string + obo:IAO_0000115 "The region of the myelin sheath furthest from the axon."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0043209 + + +Class: obo:GO_0042995 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "http://www.cogsci.princeton.edu/~wn/"^^xsd:string + obo:IAO_0000115 "A prolongation or process extending from a cell, e.g. a flagellum or axon."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0042995"^^xsd:string, + oboInOwl:hasBroadSynonym "cellular process"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasBroadSynonym "cell process"^^xsd:string, + oboInOwl:hasExactSynonym "cellular projection"^^xsd:string, + rdfs:label "cell projection"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0016914 + + Annotations: + oboInOwl:hasExactSynonym "follicle stimulating hormone complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "follicle-stimulating hormone complex"^^xsd:string, + oboInOwl:id "GO:0016914"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A gonadotrophic glycoprotein hormone secreted, in mammals, by the anterior pituitary gland; consists of alpha and beta subunits, the latter of which confers hormonal specificity."^^xsd:string, + oboInOwl:hasExactSynonym "FSH complex"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:GO_0043234 + + +Class: obo:GO_0000311 + + Annotations: + rdfs:label "plastid large ribosomal subunit"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The larger of the two subunits of a plastid ribosome. Two sites on the ribosomal large subunit are involved in translation: the aminoacyl site (A site) and peptidyl site (P site)."^^xsd:string, + oboInOwl:id "GO:0000311"^^xsd:string + + EquivalentTo: + obo:GO_0015934 + and (obo:BFO_0000050 some obo:GO_0009547) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009547, + obo:GO_0000315 + + +Class: obo:GO_0015935 + + Annotations: + rdfs:label "small ribosomal subunit"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0015935"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The smaller of the two subunits of a ribosome."^^xsd:string, + oboInOwl:hasExactSynonym "ribosomal small subunit"^^xsd:string + + SubClassOf: + obo:GO_0044391, + obo:GO_0044446 + + +Class: obo:GO_0000312 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The smaller of the two subunits of a plastid ribosome."^^xsd:string, + rdfs:label "plastid small ribosomal subunit"^^xsd:string, + oboInOwl:id "GO:0000312"^^xsd:string + + EquivalentTo: + obo:GO_0015935 + and (obo:BFO_0000050 some obo:GO_0009547) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009547, + obo:GO_0000314 + + +Class: obo:GO_0015934 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "ribosomal large subunit"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The larger of the two subunits of a ribosome. Two sites on the ribosomal large subunit are involved in translation, namely the aminoacyl site (A site) and peptidyl site (P site)."^^xsd:string, + oboInOwl:id "GO:0015934"^^xsd:string, + rdfs:label "large ribosomal subunit"^^xsd:string + + SubClassOf: + obo:GO_0044391, + obo:GO_0044446 + + +Class: obo:GO_0000313 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "A ribosome contained within a subcellular membrane-bounded organelle."^^xsd:string, + rdfs:label "organellar ribosome"^^xsd:string, + oboInOwl:id "GO:0000313"^^xsd:string + + EquivalentTo: + obo:GO_0005840 + and (obo:BFO_0000050 some obo:GO_0043226) + + SubClassOf: + obo:GO_0005840, + obo:GO_0044422 + + +Class: obo:GO_0016516 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-4 receptor complex"^^xsd:string, + oboInOwl:id "GO:0016516"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10358772"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-4 (IL-4) and consists of an alpha chain that binds IL-4 with high affinity and a gamma common chain that also forms part of the interleukin-2 receptor."^^xsd:string, + rdfs:label "interleukin-4 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0042597 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The region between the inner (cytoplasmic) and outer membrane (Gram-negative Bacteria) or inner membrane and cell wall (Fungi)."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005620"^^xsd:string, + oboInOwl:hasExactSynonym "periplasm"^^xsd:string, + rdfs:label "periplasmic space"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0042597"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0034689 + + Annotations: + oboInOwl:hasNarrowSynonym "Itgax-Itgb2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaX-beta2 integrin complex"^^xsd:string, + oboInOwl:id "GO:0034689"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphaX subunit and one beta2 subunit."^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0016514 + + Annotations: + rdfs:label "SWI/SNF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12672490"^^xsd:string + obo:IAO_0000115 "A SWI/SNF-type complex that contains nine or more proteins, including both conserved (core) and nonconserved components; the Swi2/Snf2 ATPase is one of the core components."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016514"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "SWI-SNF complex"^^xsd:string + + SubClassOf: + obo:GO_0070603 + + +Class: obo:GO_0016513 + + Annotations: + oboInOwl:hasNarrowSynonym "AML1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15156179"^^xsd:string, + oboInOwl:hasDbXref "PMID:8497254"^^xsd:string + obo:IAO_0000115 "A heterodimeric transcription factor complex that contains an alpha subunit (Runx1, Runx2 or Runx3 in human) that binds DNA and a non-DNA-binding beta subunit (CBFbeta), and binds to a consensus sequence 5'-YGYGGTY-3' found in several enhancers and promoters; the beta subunit enhances the DNA binding of the alpha subunit."^^xsd:string, + oboInOwl:hasExactSynonym "CBF complex"^^xsd:string, + oboInOwl:id "GO:0016513"^^xsd:string, + oboInOwl:hasNarrowSynonym "PEPB2 complex"^^xsd:string, + rdfs:label "core-binding factor complex"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0042598 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any of the small, heterogeneous, artifactual, vesicular particles that are formed when some cells are homogenized."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + oboInOwl:id "GO:0042598"^^xsd:string, + rdfs:label "vesicular fraction"^^xsd:string + + SubClassOf: + obo:GO_0005624 + + +Class: obo:GO_0042599 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cjm"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12243725"^^xsd:string, + oboInOwl:hasDbXref "http://en.wikipedia.org/wiki/Lamellar_granule"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle, specialized for the storage and secretion of various substances (surfactant phospholipids, glycoproteins and acid phosphates) which are arranged in the form of tightly packed, concentric, membrane sheets or lamellae. Has some similar properties to, but is distinct from, a lysosome."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1379604862"^^xsd:string, + oboInOwl:id "GO:0042599"^^xsd:string, + oboInOwl:hasNarrowSynonym "Odland body"^^xsd:string, + oboInOwl:hasExactSynonym "membrane-coating granule"^^xsd:string, + oboInOwl:hasNarrowSynonym "keratinosome"^^xsd:string, + rdfs:label "lamellar body"^^xsd:string, + oboInOwl:hasExactSynonym "lamellar granule"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0036014 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "cyanelle envelope lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18976493"^^xsd:string + oboInOwl:hasExactSynonym "cyanelle periplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036014"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:aa"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of the cyanelle envelope; includes the peptidoglycan layer."^^xsd:string, + rdfs:label "cyanelle intermembrane space"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033112, + obo:GO_0009529 + + +Class: obo:GO_0036013 + + Annotations: + oboInOwl:id "GO:0036013"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:aa"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the cyanelle envelope."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyanelle outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0033113, + obo:GO_0009527 + + +Class: obo:GO_0036012 + + Annotations: + oboInOwl:id "GO:0036012"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18976493"^^xsd:string + oboInOwl:hasExactSynonym "cyanelle inner envelope membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:aa"^^xsd:string, + oboInOwl:hasDbXref "PMID:18976493"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the cyanelle envelope; also faces the cyanelle stroma."^^xsd:string, + rdfs:label "cyanelle inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0033113, + obo:GO_0009528 + + +Class: obo:GO_0016020 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Biological_membrane"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0016020"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0036019 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pde"^^xsd:string, + oboInOwl:hasDbXref "PMID:21878991"^^xsd:string + obo:IAO_0000115 "An transient hybrid organelle formed by fusion of a late endosome with a lysosome, and in which active degradation takes place."^^xsd:string, + rdfs:label "endolysosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036019"^^xsd:string + + SubClassOf: + obo:GO_0005764, + obo:GO_0005768 + + +Class: obo:GO_0016021 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "transmembrane"^^xsd:string, + rdfs:label "integral to membrane"^^xsd:string, + oboInOwl:id "GO:0016021"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Transmembrane_protein"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer. When used to describe a protein, indicates that all or part of the peptide sequence is embedded in the membrane."^^xsd:string + + SubClassOf: + obo:GO_0031224 + + +Class: obo:GO_0016023 + + Annotations: + oboInOwl:hasExactSynonym "cytoplasmic membrane bounded vesicle"^^xsd:string, + rdfs:label "cytoplasmic membrane-bounded vesicle"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A membrane-bounded vesicle found in the cytoplasm of the cell."^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic membrane-enclosed vesicle"^^xsd:string, + oboInOwl:id "GO:0016023"^^xsd:string, + oboInOwl:inSubset + + EquivalentTo: + obo:GO_0031988 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0043231, + obo:GO_0031988, + obo:GO_0031410 + + +Class: obo:GO_0008076 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a transmembrane channel through which potassium ions may cross a cell membrane in response to changes in membrane potential."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao371494298"^^xsd:string, + rdfs:label "voltage-gated potassium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "voltage gated potassium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "voltage-dependent potassium channel complex"^^xsd:string, + oboInOwl:id "GO:0008076"^^xsd:string, + oboInOwl:hasExactSynonym "voltage-sensitive potassium channel complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0034705, + obo:GO_0044459 + + +Class: obo:GO_0000315 + + Annotations: + oboInOwl:id "GO:0000315"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The larger of the two subunits of an organellar ribosome. Two sites on the ribosomal large subunit are involved in translation: the aminoacyl site (A site) and peptidyl site (P site)."^^xsd:string, + rdfs:label "organellar large ribosomal subunit"^^xsd:string + + EquivalentTo: + obo:GO_0015934 + and (obo:BFO_0000050 some obo:GO_0000313) + + SubClassOf: + obo:GO_0015934, + obo:BFO_0000050 some obo:GO_0000313 + + +Class: obo:GO_0016027 + + Annotations: + oboInOwl:id "GO:0016027"^^xsd:string, + oboInOwl:hasExactSynonym "inaD signalling complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inaD signaling complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string, + oboInOwl:hasDbXref "PMID:9010208"^^xsd:string, + oboInOwl:hasDbXref "PMID:9796815"^^xsd:string + obo:IAO_0000115 "A complex of proteins that are involved in phototransduction and attached to the transient receptor potential (TRP) channel. The protein connections are mediated through inaD."^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:GO_0019897, + obo:BFO_0000050 some obo:GO_0016028, + obo:GO_0043234 + + +Class: obo:GO_0033607 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15233914"^^xsd:string, + oboInOwl:hasDbXref "PMID:16790527"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex formed of superoxide dismutase 1 and Bcl-2. Complex formation is thought to link superoxide dismutase to an apoptotic pathway."^^xsd:string, + rdfs:label "SOD1-Bcl-2 complex"^^xsd:string, + oboInOwl:id "GO:0033607"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0000314 + + Annotations: + oboInOwl:id "GO:0000314"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "organellar small ribosomal subunit"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The smaller of the two subunits of an organellar ribosome."^^xsd:string + + EquivalentTo: + obo:GO_0015935 + and (obo:BFO_0000050 some obo:GO_0000313) + + SubClassOf: + obo:GO_0015935, + obo:BFO_0000050 some obo:GO_0000313 + + +Class: obo:GO_0016028 + + Annotations: + rdfs:label "rhabdomere"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016028"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string, + oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:8646774"^^xsd:string + obo:IAO_0000115 "The specialized microvilli-containing organelle on the apical surfaces of a photoreceptor cell containing the visual pigment rhodopsin and most of the proteins involved in phototransduction."^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0016029 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016029"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11707492"^^xsd:string, + oboInOwl:hasDbXref "PMID:8646774"^^xsd:string + obo:IAO_0000115 "A membrane-bounded compartment that is found at the base of the rhabdomere and contains stored calcium, InsP3 receptors and smooth endoplasmic reticulum Ca2+-ATPase."^^xsd:string, + oboInOwl:hasRelatedSynonym "SMC"^^xsd:string, + rdfs:label "subrhabdomeral cisterna"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11707492"^^xsd:string + oboInOwl:hasExactSynonym "submicrovillar cisterna"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0016028, + obo:BFO_0000050 some obo:GO_0005790, + obo:GO_0044432, + obo:GO_0031984 + + +Class: obo:GO_0000323 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "A vacuole that is maintained at an acidic pH and which contains degradative enzymes, including a wide variety of acid hydrolases."^^xsd:string, + oboInOwl:id "GO:0000323"^^xsd:string, + rdfs:label "lytic vacuole"^^xsd:string + + SubClassOf: + obo:GO_0005773 + + +Class: obo:GO_0000324 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "vacuole, cell cycle-correlated morphology"^^xsd:string, + rdfs:label "fungal-type vacuole"^^xsd:string, + oboInOwl:id "GO:0000324"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879693649"^^xsd:string + obo:IAO_0000115 "A vacuole that has both lytic and storage functions. The fungal vacuole is a large, membrane-bounded organelle that functions as a reservoir for the storage of small molecules (including polyphosphate, amino acids, several divalent cations (e.g. calcium), other ions, and other small molecules) as well as being the primary compartment for degradation. It is an acidic compartment, containing an ensemble of acid hydrolases. At least in S. cerevisiae, there are indications that the morphology of the vacuole is variable and correlated with the cell cycle, with logarithmically growing cells having a multilobed, reticulated vacuole, while stationary phase cells contain a single large structure."^^xsd:string + + SubClassOf: + obo:GO_0000323, + obo:GO_0000322 + + +Class: obo:GO_0000322 + + Annotations: + rdfs:label "storage vacuole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "A vacuole that functions primarily in the storage of materials, including nutrients, pigments, waste products, and small molecules."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000322"^^xsd:string + + SubClassOf: + obo:GO_0005773 + + +Class: obo:GO_0008074 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008074"^^xsd:string, + rdfs:comment "See also the molecular function term 'guanylate cyclase activity ; GO:0004383'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Complex that possesses guanylate cyclase activity and is not bound to a membrane."^^xsd:string, + rdfs:label "guanylate cyclase complex, soluble"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0009289 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Pilus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A proteinaceous hair-like appendage on the surface of bacteria ranging from 2-8 nm in diameter."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "fimbria"^^xsd:string, + oboInOwl:hasExactSynonym "pili"^^xsd:string, + oboInOwl:hasExactSynonym "fimbriae"^^xsd:string, + oboInOwl:hasExactSynonym "fimbrium"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0009289"^^xsd:string, + rdfs:label "pilus"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0016465 + + Annotations: + rdfs:label "chaperonin ATPase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016465"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.6.4.9"^^xsd:string + obo:IAO_0000115 "Multisubunit protein complex with 2x7 (Type I, in most cells) or 2x8 (Type II, in Archaea) ATP-binding sites involved in maintaining an unfolded polypeptide structure before folding or to entry into mitochondria and chloroplasts."^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0020038 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "subpellicular network"^^xsd:string, + oboInOwl:id "GO:0020038"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11420112"^^xsd:string + obo:IAO_0000115 "A mechanically stable cytoskeletal structure associated with the cytoplasmic face of the pellicle and surrounding the microtubule-based cytoskeleton."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020039, + obo:GO_0044430 + + +Class: obo:GO_0009288 + + Annotations: + oboInOwl:inSubset , + rdfs:label "bacterial-type flagellum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh2"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:7787060"^^xsd:string + obo:IAO_0000115 "A motor complex composed of an extracellular helical protein filament coupled to a rotary motor embedded in the cell envelope."^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum"^^xsd:string, + oboInOwl:id "GO:0009288"^^xsd:string + + SubClassOf: + obo:GO_0043232, + obo:GO_0019861 + + +Class: obo:GO_0016469 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string, + oboInOwl:hasDbXref "PMID:16691483"^^xsd:string + obo:IAO_0000115 "A large protein complex that catalyzes the synthesis or hydrolysis of ATP by a rotational mechanism, coupled to the transport of protons across a membrane. The complex comprises a membrane sector (F0, V0, or A0) that carries out proton transport and a cytoplasmic compartment sector (F1, V1, or A1) that catalyzes ATP synthesis or hydrolysis. Two major types have been characterized: V-type ATPases couple ATP hydrolysis to the transport of protons across a concentration gradient, whereas F-type ATPases, also known as ATP synthases, normally run in the reverse direction to utilize energy from a proton concentration or electrochemical gradient to synthesize ATP. A third type, A-type ATPases have been found in archaea, and are closely related to eukaryotic V-type ATPases but are reversible."^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting two-sector ATPase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "proton-transporting two-sector ATPase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "vacuolar hydrogen-transporting ATPase"^^xsd:string, + oboInOwl:id "GO:0016469"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0020039 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "The structure enclosing an apicomplexan parasite cell; consists of the cell membrane with its associated infrastructure of microtubules, microfilaments and other organelles."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0020039"^^xsd:string, + rdfs:label "pellicle"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0016460 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:96235764"^^xsd:string, + oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing two class II myosin heavy chains, two myosin essential light chains and two myosin regulatory light chains. Also known as classical myosin or conventional myosin, the myosin II class includes the major muscle myosin of vertebrate and invertebrate muscle, and is characterized by alpha-helical coiled coil tails that self assemble to form a variety of filament structures."^^xsd:string, + oboInOwl:id "GO:0016460"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "conventional myosin"^^xsd:string, + rdfs:label "myosin II complex"^^xsd:string + + SubClassOf: + obo:GO_0016459 + + +Class: obo:GO_0016461 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005860"^^xsd:string, + rdfs:label "unconventional myosin complex"^^xsd:string, + oboInOwl:id "GO:0016461"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "A portmanteau term for myosins other than myosin II."^^xsd:string, + oboInOwl:hasRelatedSynonym "non-muscle myosin"^^xsd:string, + rdfs:comment "Note that this term is retained because it is widely used by biologists."^^xsd:string + + SubClassOf: + obo:GO_0016459 + + +Class: obo:GO_0035301 + + Annotations: + oboInOwl:id "GO:0035301"^^xsd:string, + oboInOwl:hasExactSynonym "Hedgehog signalling complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10825151"^^xsd:string, + oboInOwl:hasDbXref "PMID:15057936"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that binds microtubules in a Hedgehog-dependent manner, and is required for signal transduction by members of the Hedgehog family of proteins. The core components of the complex are the serine/threonine protein kinase Fused, the kinesin motor protein Costal2 (Cos2), and a zinc finger transcription factor (Gli family members in humans, and Cubitus interruptus (Ci) in Drosophila)."^^xsd:string, + oboInOwl:hasExactSynonym "HSC"^^xsd:string, + rdfs:label "Hedgehog signaling complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031596 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A proteasome found in the endoplasmic reticulum of a cell."^^xsd:string, + oboInOwl:id "GO:0031596"^^xsd:string, + rdfs:label "ER proteasome complex"^^xsd:string + + EquivalentTo: + obo:GO_0000502 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0000502, + obo:GO_0044432 + + +Class: obo:GO_0031597 + + Annotations: + rdfs:label "cytosolic proteasome complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A proteasome complex found in the cytosol of a cell."^^xsd:string, + oboInOwl:id "GO:0031597"^^xsd:string + + SubClassOf: + obo:GO_0000502, + obo:GO_0044445 + + +Class: obo:GO_0016456 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "An RNA-protein complex localized to the X chromosome of males where it is required for the hyper-transcriptional activation of the X chromosome. An example of this is found in Drosophila melanogaster."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "dosage compensation complex"^^xsd:string, + oboInOwl:id "GO:0016456"^^xsd:string, + rdfs:label "X chromosome located dosage compensation complex, transcription activating"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000805, + obo:GO_0030529, + obo:GO_0046536 + + +Class: obo:GO_0031594 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1124888485"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Neuromuscular_junction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "The junction between the axon of a motor neuron and a muscle fiber. In response to the arrival of action potentials, the presynaptic button releases molecules of neurotransmitters into the synaptic cleft. These diffuse across the cleft and transmit the signal to the postsynaptic membrane of the muscle fiber, leading to a post-synaptic potential responsible of the muscle contraction."^^xsd:string, + rdfs:label "neuromuscular junction"^^xsd:string, + oboInOwl:id "GO:0031594"^^xsd:string + + SubClassOf: + obo:GO_0045202 + + +Class: obo:GO_0031595 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear proteasome complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A proteasome found in the nucleus of a cell."^^xsd:string, + oboInOwl:id "GO:0031595"^^xsd:string + + EquivalentTo: + obo:GO_0000502 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:GO_0000502, + obo:BFO_0000050 some obo:GO_0031981 + + +Class: obo:GO_0031592 + + Annotations: + rdfs:comment "Note that the centrosomal corona has been observed in Dictyostelium, and is the functional equivalent of pericentriolar material."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031592"^^xsd:string, + rdfs:label "centrosomal corona"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kp"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An amorphous structure surrounding the core of the centrosome, from which microtubules are nucleated; contains gamma-tubulin."^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005813 + + +Class: obo:GO_0016459 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016459"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:96235764"^^xsd:string, + oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A protein complex, formed of one or more myosin heavy chains plus associated light chains and other proteins, that functions as a molecular motor; uses the energy of ATP hydrolysis to move actin filaments or to move vesicles or other cargo on fixed actin filaments; has magnesium-ATPase activity and binds actin. Myosin classes are distinguished based on sequence features of the motor, or head, domain, but also have distinct tail regions that are believed to bind specific cargoes."^^xsd:string, + rdfs:label "myosin complex"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0043234 + + +Class: obo:GO_0020026 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Electron-dense organelle with a granular internal matrix found throughout the merozoite life cycle stage of apicomplexan parasites; contains proteins destined to be secreted into the parasitophorous vacuole following parasite invasion of a host cell."^^xsd:string, + oboInOwl:hasExactSynonym "dense body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0020026"^^xsd:string, + rdfs:label "merozoite dense granule"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0033098 + + Annotations: + rdfs:label "amyloplast inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033098"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the amyloplast envelope; also faces the amyloplast stroma."^^xsd:string + + SubClassOf: + obo:GO_0033097, + obo:GO_0009528 + + +Class: obo:GO_0033097 + + Annotations: + oboInOwl:id "GO:0033097"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround an amyloplast and form the amyloplast envelope."^^xsd:string, + rdfs:label "amyloplast membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033096, + obo:GO_0042170 + + +Class: obo:GO_0033099 + + Annotations: + oboInOwl:id "GO:0033099"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "attachment organelle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11325545"^^xsd:string, + oboInOwl:hasDbXref "PMID:12003948"^^xsd:string, + oboInOwl:hasDbXref "http://authors.library.caltech.edu/3529/"^^xsd:string + obo:IAO_0000115 "A membrane-bounded extension of the cell, originally characterized in Mycoplasma species, that contains an electron-dense core that is part of the cytoskeleton and is oriented lengthwise and ends distally in a bulbous knob (terminal button). Required for adherence to host cells and involved in gliding motility and cell division."^^xsd:string + + SubClassOf: + obo:GO_0043231 + + +Class: obo:GO_0020036 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Maurers cleft"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16705161"^^xsd:string + obo:IAO_0000115 "A disk-like structure that appears at the periphery of a red blood cell infected by an apicomplexan parasite, characterized by a translucent lumen and an electron-dense coat of variable thickness; often appears to be tethered to the host cell membrane by fibrous connections with the erythrocyte cytoskeleton."^^xsd:string, + oboInOwl:id "GO:0020036"^^xsd:string, + rdfs:label "Maurer's cleft"^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0033093 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Weibel-Palade_body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Weibel-Palade body"^^xsd:string, + oboInOwl:id "GO:0033093"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11935287"^^xsd:string, + oboInOwl:hasDbXref "PMID:16087708"^^xsd:string + obo:IAO_0000115 "A large, elongated, rod-shaped secretory granule characteristic of vascular endothelial cells that contain a number of structurally and functionally distinct proteins, of which the best characterized are von Willebrand factor (VWF) and P-selectin. Weibel-Palade bodies are formed from the trans-Golgi network in a process that depends on VWF, which is densely packed in a highly organized manner, and on coat proteins that remain associated with the granules. Upon cell stimulation, regulated exocytosis releases the contained proteins to the cell surface, where they act in the recruitment of platelets and leukocytes and in inflammatory and vasoactive responses."^^xsd:string + + SubClassOf: + obo:GO_0030141, + obo:GO_0030136 + + +Class: obo:GO_0009295 + + Annotations: + rdfs:label "nucleoid"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009295"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string, + oboInOwl:hasDbXref "ISBN:3540076689"^^xsd:string + obo:IAO_0000115 "The region of a bacterial cell, mitochondrion or chloroplast to which the DNA is confined."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nucleoid"^^xsd:string + + SubClassOf: + obo:GO_0043232 + + +Class: obo:GO_0033096 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the amyloplast and separating its contents from the rest of the cytoplasm; includes the intermembrane space."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033096"^^xsd:string, + rdfs:label "amyloplast envelope"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009501, + obo:GO_0009526 + + +Class: obo:GO_0033095 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "aleurone grain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://ejournal.sinica.edu.tw/bbas/content/2004/1/bot451-08.pdf"^^xsd:string, + oboInOwl:hasDbXref "http://www.springerlink.com/content/q7183h5vr7358278/"^^xsd:string + obo:IAO_0000115 "A membrane-bounded storage granule found in cells of the aleurone layer in plants; contains either a protein matrix, protein-carbohydrate bodies and/or globoids. Aleurone grains are formed by the vacuole, rough endoplasmic reticulum and dictyosomes."^^xsd:string, + oboInOwl:hasExactSynonym "aleurone body"^^xsd:string, + oboInOwl:id "GO:0033095"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0020032 + + Annotations: + oboInOwl:hasExactSynonym "lower polar ring of apical complex"^^xsd:string, + oboInOwl:id "GO:0020032"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "basal ring of apical complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16518471"^^xsd:string + obo:IAO_0000115 "An electron dense ring at the most posterior position of the apical complex, from which the subpellicular microtubules originate; formed during an invasive life cycle stage of an apicomplexan parasite."^^xsd:string, + oboInOwl:hasExactSynonym "preconoidal ring of apical complex"^^xsd:string, + oboInOwl:hasExactSynonym "posterior polar ring of apical complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0044464 + + +Class: obo:GO_0020031 + + Annotations: + oboInOwl:id "GO:0020031"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "upper polar ring of apical complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string, + oboInOwl:hasDbXref "PMID:16518471"^^xsd:string + obo:IAO_0000115 "An electron dense ring at the most anterior position of the apical complex, from which the conoid fibers originate; formed during an invasive life cycle stage of an apicomplexan parasite."^^xsd:string, + rdfs:label "polar ring of apical complex"^^xsd:string, + oboInOwl:hasExactSynonym "anterior polar ring of apical complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0044464 + + +Class: obo:GO_0020030 + + Annotations: + oboInOwl:id "GO:0020030"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "infected host cell surface knob"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "Protrusion that develops in the plasma membrane of a parasitized erythrocyte. An example of this component is found in Plasmodium species."^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0031588 + + Annotations: + oboInOwl:id "GO:0031588"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "Snf1 kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses AMP-dependent protein kinase activity."^^xsd:string, + rdfs:label "AMP-activated protein kinase complex"^^xsd:string, + oboInOwl:hasExactSynonym "5'-AMP-activated protein kinase complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Snf1 serine/threonine protein kinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0020015 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Glycosome"^^xsd:string, + oboInOwl:id "GO:0020015"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle found in organisms from the order Kinetoplastida that houses the enzymes of glycolysis."^^xsd:string, + rdfs:label "glycosome"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0046540 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11867543"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex formed by the association of the U4/U6 and U5 small nuclear ribonucleoproteins."^^xsd:string, + oboInOwl:id "GO:0046540"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U4/U6 x U5 tri-snRNP complex"^^xsd:string, + oboInOwl:hasExactSynonym "U4/U6.U5 snRNP complex"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0071001, + obo:BFO_0000051 some obo:GO_0005682, + obo:GO_0030532 + + +Class: obo:GO_0020016 + + Annotations: + rdfs:label "flagellar pocket"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "Invagination of the plasma membrane from which a flagellum protrudes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0020016"^^xsd:string + + SubClassOf: + obo:GO_0044442 + + +Class: obo:GO_0020017 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "flagellar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding the flagellum."^^xsd:string, + oboInOwl:id "GO:0020017"^^xsd:string + + SubClassOf: + obo:GO_0031090, + obo:GO_0044442, + obo:GO_0031253 + + +Class: obo:GO_0020018 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "flagellar pocket membrane"^^xsd:string, + oboInOwl:id "GO:0020018"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "That part of the plasma membrane found in the flagellar pocket."^^xsd:string + + SubClassOf: + obo:GO_0020017, + obo:BFO_0000050 some obo:GO_0020016 + + +Class: obo:GO_0016442 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10749213"^^xsd:string, + oboInOwl:hasDbXref "PMID:15145345"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains members of the Argonaute family of proteins, small interfering RNAs (siRNAs) or microRNAs (miRNAs), and miRNA or siRNA-complementary mRNAs, in addition to a number of accessory factors. The RISC complex is involved in posttranscriptional repression of gene expression through downregulation of translation or induction of mRNA degradation."^^xsd:string, + oboInOwl:id "GO:0016442"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:RNA-induced_silencing_complex"^^xsd:string, + oboInOwl:hasExactSynonym "RISC complex"^^xsd:string, + rdfs:label "RNA-induced silencing complex"^^xsd:string + + SubClassOf: + obo:GO_0031332 + + +Class: obo:GO_0042101 + + Annotations: + oboInOwl:id "GO:0042101"^^xsd:string, + oboInOwl:hasExactSynonym "T-cell receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A protein complex that contains a disulfide-linked heterodimer of T cell receptor (TCR) chains, which are members of the immunoglobulin superfamily, and mediates antigen recognition, ultimately resulting in T cell activation. The TCR heterodimer is associated with the CD3 complex, which consists of the nonpolymorphic polypeptides gamma, delta, epsilon, zeta, and, in some cases, eta (an RNA splice variant of zeta) or Fc epsilon chains."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "T cell receptor complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:T_cell_receptor"^^xsd:string, + oboInOwl:hasExactSynonym "T-lymphocyte receptor complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "TCR"^^xsd:string, + oboInOwl:hasExactSynonym "T lymphocyte receptor complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0031599 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The regulatory subcomplex of a proteasome located in the endoplasmic reticulum of a cell."^^xsd:string, + oboInOwl:id "GO:0031599"^^xsd:string, + rdfs:label "ER proteasome regulatory particle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + EquivalentTo: + obo:GO_0005838 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0005838, + obo:BFO_0000050 some obo:GO_0031596, + obo:GO_0044432 + + +Class: obo:GO_0046536 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0046536"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein or protein-RNA complex that localizes to one or more of the sex chromosome(s), where it acts to normalize transcription between different sexes."^^xsd:string, + rdfs:label "dosage compensation complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000803, + obo:GO_0044427, + obo:GO_0044428, + obo:GO_0032991 + + +Class: obo:GO_0031598 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The regulatory subcomplex of a proteasome located in the nucleus of a cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031598"^^xsd:string, + rdfs:label "nuclear proteasome regulatory particle"^^xsd:string + + EquivalentTo: + obo:GO_0005838 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031595, + obo:GO_0005838 + + +Class: obo:GO_0020020 + + Annotations: + rdfs:label "food vacuole"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "Vacuole within a parasite used for digestion of the host cell cytoplasm. An example of this component is found in the Apicomplexa."^^xsd:string, + oboInOwl:id "GO:0020020"^^xsd:string, + oboInOwl:hasExactSynonym "digestive vacuole"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005772"^^xsd:string + + SubClassOf: + obo:GO_0032010 + + +Class: obo:GO_0035324 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9635420"^^xsd:string + obo:IAO_0000115 "An intercellular bridge that connects the germline cells of a female cyst."^^xsd:string, + oboInOwl:id "GO:0035324"^^xsd:string, + oboInOwl:hasNarrowSynonym "ovarian ring canal"^^xsd:string, + rdfs:label "female germline ring canal"^^xsd:string, + oboInOwl:hasNarrowSynonym "nurse cell ring canal"^^xsd:string + + SubClassOf: + obo:GO_0045172 + + +Class: obo:GO_0020023 + + Annotations: + oboInOwl:id "GO:0020023"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "A sub-structure within the large single mitochondrion of kinetoplastid parasites and which is closely associated with the flagellar pocket and basal body of the flagellum."^^xsd:string, + rdfs:label "kinetoplast"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Kinetoplast"^^xsd:string + + SubClassOf: + obo:GO_0044429 + + +Class: obo:GO_0035323 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035323"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9635420"^^xsd:string + obo:IAO_0000115 "An intercellular bridge that connects the germline cells of a male cyst."^^xsd:string, + oboInOwl:hasNarrowSynonym "spermatocyte ring canal"^^xsd:string, + rdfs:label "male germline ring canal"^^xsd:string, + oboInOwl:hasNarrowSynonym "testicular ring canal"^^xsd:string + + SubClassOf: + obo:GO_0045172 + + +Class: obo:GO_0020022 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0020022"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "An electron-dense acidic membrane-bounded organelle which contains a matrix of pyrophosphate and polyphosphates with bound calcium and other cations."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15738951"^^xsd:string + oboInOwl:hasExactSynonym "metachromatic granule"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:15738951"^^xsd:string + oboInOwl:hasExactSynonym "volutin granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15738951"^^xsd:string + oboInOwl:hasRelatedSynonym "polyphosphate vacuole"^^xsd:string, + rdfs:label "acidocalcisome"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0020025 + + Annotations: + oboInOwl:id "GO:0020025"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "Singlet microtubules that lie underneath the inner membrane complex and emanate from the basal ring of the conoid."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "subpellicular microtubule"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0005874 + + +Class: obo:GO_0009277 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:3540601864"^^xsd:string, + oboInOwl:hasDbXref "PMID:11283274"^^xsd:string, + oboInOwl:hasDbXref "PMID:16927300"^^xsd:string, + oboInOwl:hasDbXref "PMID:3319422"^^xsd:string + obo:IAO_0000115 "A rigid yet dynamic structure surrounding the plasma membrane that affords protection from stresses and contributes to cell morphogenesis, consisting of extensively cross-linked glycoproteins and carbohydrates. The glycoproteins may be modified with N- or O-linked carbohydrates, or glycosylphosphatidylinositol (GPI) anchors; the polysaccharides are primarily branched glucans, including beta-linked and alpha-linked glucans, and may also include chitin and other carbohydrate polymers, but not cellulose or pectin. Enzymes involved in cell wall biosynthesis are also found in the cell wall. Note that some forms of fungi develop a capsule outside of the cell wall under certain circumstances; this is considered a separate structure."^^xsd:string, + rdfs:label "fungal-type cell wall"^^xsd:string, + oboInOwl:hasRelatedSynonym "chitin-containing cell wall"^^xsd:string, + oboInOwl:hasRelatedSynonym "beta-glucan-containing cell wall"^^xsd:string, + oboInOwl:id "GO:0009277"^^xsd:string, + oboInOwl:hasNarrowSynonym "chitin- and beta-glucan-containing cell wall"^^xsd:string + + SubClassOf: + obo:GO_0005618 + + +Class: obo:GO_0020006 + + Annotations: + oboInOwl:id "GO:0020006"^^xsd:string, + oboInOwl:hasExactSynonym "parasitophorous vacuolar membrane network"^^xsd:string, + oboInOwl:hasNarrowSynonym "tubulovesicular network"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "symbiont-containing vacuole membrane network"^^xsd:string, + rdfs:label "symbiont-containing vacuolar membrane network"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:3528173"^^xsd:string + obo:IAO_0000115 "Tubular network of extensions from the symbiont-containing vacuole membrane that protrude into the host cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0020005, + obo:GO_0044425, + obo:GO_0033643 + + +Class: obo:GO_0009276 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815108893"^^xsd:string + obo:IAO_0000115 "The peptidoglycan layer of the Gram-negative cell envelope. In Gram-negative cells the peptidoglycan is relatively thin (1-2nm) and is linked to the outer membrane by lipoproteins. In Gram-negative cells the peptidoglycan is too thin to retain the primary stain in the Gram staining procedure and therefore cells appear red after Gram stain."^^xsd:string, + rdfs:label "Gram-negative-bacterium-type cell wall"^^xsd:string, + oboInOwl:hasExactSynonym "cell wall inner membrane"^^xsd:string, + oboInOwl:id "GO:0009276"^^xsd:string, + oboInOwl:hasExactSynonym "1-2nm peptidoglycan-based cell wall"^^xsd:string + + SubClassOf: + obo:GO_0009274, + obo:BFO_0000050 some obo:GO_0030313 + + +Class: obo:GO_0020007 + + Annotations: + oboInOwl:id "GO:0020007"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mb"^^xsd:string, + oboInOwl:hasDbXref "PMID:16518471"^^xsd:string + obo:IAO_0000115 "A group of cytoskeletal structures and associated membrane-bounded organelles found at the anterior end of adult obligate intracellular protozoan parasites in the phylum Apicomplexa. The apical complex is involved in attachment to and penetration of the host cell, and in parasite proliferation."^^xsd:string, + rdfs:label "apical complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045177, + obo:GO_0044464 + + +Class: obo:GO_0035327 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035327"^^xsd:string, + rdfs:label "transcriptionally active chromatin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:17965872"^^xsd:string + obo:IAO_0000115 "The ordered and organized complex of DNA and protein that forms regions of the chromosome that are being actively transcribed."^^xsd:string + + SubClassOf: + obo:GO_0000785 + + +Class: obo:GO_0009275 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0051406910"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815108893"^^xsd:string + obo:IAO_0000115 "A layer of peptidoglycan found outside of the cytoplasmic membrane. The peptidoglycan is relatively thick (20-80nm) and retains the primary stain of the Gram procedure, thus cells appear blue after Gram stain. The cell walls often contain teichoic acids (acidic anionic polysaccharides) bound to the peptidoglycan. Examples of this component are found in Gram-positive bacteria."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "20-80nm peptidoglycan-based cell wall"^^xsd:string, + rdfs:label "Gram-positive-bacterium-type cell wall"^^xsd:string, + oboInOwl:hasExactSynonym "cell wall of Gram-positive Bacteria"^^xsd:string, + oboInOwl:id "GO:0009275"^^xsd:string + + SubClassOf: + obo:GO_0009274 + + +Class: obo:GO_0020004 + + Annotations: + oboInOwl:hasRelatedSynonym "symbiont-containing vacuole space"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0020004"^^xsd:string, + oboInOwl:hasExactSynonym "parasitophorous vacuolar space"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "The space between a symbiont plasma membrane and the symbiont-containing vacuole membrane."^^xsd:string, + rdfs:label "symbiont-containing vacuolar space"^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:GO_0044422, + obo:BFO_0000050 some obo:GO_0020003 + + +Class: obo:GO_0035328 + + Annotations: + rdfs:label "transcriptionally silent chromatin"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "transcriptionally inactive chromatin"^^xsd:string, + oboInOwl:id "GO:0035328"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:17965872"^^xsd:string + obo:IAO_0000115 "The ordered and organized complex of DNA and protein that forms regions of the chromosome that are not being actively transcribed."^^xsd:string + + SubClassOf: + obo:GO_0000785 + + +Class: obo:GO_0009274 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815108893"^^xsd:string + obo:IAO_0000115 "A protective structure outside the cytoplasmic membrane composed of peptidoglycan (also known as murein), a molecule made up of a glycan (sugar) backbone of repetitively alternating N-acetylglucosamine and N-acetylmuramic acid with short, attached, cross-linked peptide chains containing unusual amino acids. An example of this component is found in Escherichia coli."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "envelope"^^xsd:string, + oboInOwl:hasNarrowSynonym "peptidoglycan"^^xsd:string, + oboInOwl:hasRelatedSynonym "murein sacculus"^^xsd:string, + oboInOwl:id "GO:0009274"^^xsd:string, + rdfs:label "peptidoglycan-based cell wall"^^xsd:string + + SubClassOf: + obo:GO_0005618 + + +Class: obo:GO_0020005 + + Annotations: + rdfs:label "symbiont-containing vacuole membrane"^^xsd:string, + oboInOwl:id "GO:0020005"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "parasitophorous vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mb"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a symbiont-containing vacuole, derived from both the host and symbiont."^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0020003 + + +Class: obo:GO_0009279 + + Annotations: + rdfs:label "cell outer membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "outer membrane of cell"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0135712254"^^xsd:string + obo:IAO_0000115 "A lipid bilayer that forms the outermost layer of the cell envelope; enriched in polysaccharide and protein; the outer leaflet of the membrane contains specific lipopolysaccharide structures."^^xsd:string, + oboInOwl:id "GO:0009279"^^xsd:string + + EquivalentTo: + obo:GO_0019867 + and (obo:BFO_0000050 some obo:GO_0030313) + + SubClassOf: + obo:GO_0019867, + obo:GO_0044462, + obo:BFO_0000050 some obo:GO_0030313 + + +Class: obo:GO_0010369 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12384572"^^xsd:string, + oboInOwl:hasDbXref "PMID:15053486"^^xsd:string, + oboInOwl:hasDbXref "PMID:16831888"^^xsd:string + obo:IAO_0000115 "A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure."^^xsd:string, + oboInOwl:id "GO:0010369"^^xsd:string, + rdfs:label "chromocenter"^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0020008 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "rhoptry"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Rhoptry"^^xsd:string, + oboInOwl:id "GO:0020008"^^xsd:string, + oboInOwl:hasRelatedSynonym "toxoneme"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0521664470"^^xsd:string, + oboInOwl:hasDbXref "PMID:11801218"^^xsd:string, + oboInOwl:hasDbXref "PMID:16002398"^^xsd:string + obo:IAO_0000115 "A large, club-shaped secretory organelle that forms part of the apical complex of an apicomplexan parasite, and consists of a bulbous body and a narrow electron-dense neck that extends through the conoid at the apical tip of the parasite. The rhoptry necks serve as ducts through which the contents of the rhoptries are secreted after attachment to the host has been completed and at the commencement of invasion. Rhoptry proteins function in the biogenesis and host organellar association of the parasitophorous vacuole."^^xsd:string, + oboInOwl:hasRelatedSynonym "paired organelles"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0044464 + + +Class: obo:GO_0010368 + + Annotations: + rdfs:label "chloroplast isoamylase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010368"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tair_curators"^^xsd:string + obo:IAO_0000115 "A protein complex whose composition varies amongst species; in rice it probably exists in a homo-tetramer to homo-hexamer form and in Gram negative bacteria as a dimer. Functions in the hydrolysis of alpha-(1,6)-D-glucosidic branch linkages. Isoamylases in plants are intracellular and probably chloroplast localized."^^xsd:string + + EquivalentTo: + obo:GO_0043033 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0043033, + obo:GO_0044434 + + +Class: obo:GO_0020009 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0521664470"^^xsd:string, + oboInOwl:hasDbXref "PMID:11801218"^^xsd:string + obo:IAO_0000115 "A small, elongated secretory organelle that forms part of the apical complex, located along the main axis of an apicomplexan parasite cell within the extreme apical region and at the periphery under the inner membrane complex. Of the specialized secretory compartments identified in apicomplexans, micronemes discharge their contents first, during initial contact of the parasite's apical pole with the host cell surface. Micronemal proteins function during parasite attachment and penetration into the target cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Microneme"^^xsd:string, + oboInOwl:id "GO:0020009"^^xsd:string, + oboInOwl:hasRelatedSynonym "sarconeme"^^xsd:string, + rdfs:label "microneme"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0043231 + + +Class: obo:GO_0010370 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "perinucleolar chromocenter"^^xsd:string, + oboInOwl:id "GO:0010370"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15805479"^^xsd:string + obo:IAO_0000115 "A chromocenter adjacent to the nucleolus."^^xsd:string + + SubClassOf: + obo:GO_0010369 + + +Class: obo:GO_0020010 + + Annotations: + rdfs:label "conoid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0020010"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_dr"^^xsd:string, + oboInOwl:hasDbXref "PMID:11901169"^^xsd:string, + oboInOwl:hasDbXref "PMID:16518471"^^xsd:string + obo:IAO_0000115 "A spiral cytoskeletal structure located at the apical end of the apical complex in some apicomplexan parasites. Fibers form a left-handed spiral, and are comprised of tubulin protofilaments organized in a ribbon-like structure that differs from the conventional tubular structure characteristic of microtubules."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0044430 + + +Class: obo:GO_0020011 + + Annotations: + oboInOwl:id "GO:0020011"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0521664470"^^xsd:string + obo:IAO_0000115 "The plastid organelle found in apicomplexans."^^xsd:string, + rdfs:label "apicoplast"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Apicoplast"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0000798 + + Annotations: + rdfs:label "nuclear cohesin complex"^^xsd:string, + oboInOwl:id "GO:0000798"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term and its children should be used to annotate gene products found in cohesin complexes in organisms that undergo closed mitosis (i.e. where the nuclear envelope does not break down, as in fungi). For organisms in which the nuclear envelope breaks down during mitosis, the parent should be used."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A cohesin complex required for cohesion between sister chromatids that remain in the nucleus."^^xsd:string + + EquivalentTo: + obo:GO_0008278 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:GO_0008278, + obo:BFO_0000050 some obo:GO_0000794 + + +Class: obo:GO_0000799 + + Annotations: + oboInOwl:id "GO:0000799"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear condensin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex that plays a central role in the condensation of chromosomes that remain in the nucleus."^^xsd:string + + EquivalentTo: + obo:GO_0000796 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:GO_0000796, + obo:BFO_0000050 some obo:GO_0000794 + + +Class: obo:GO_0005971 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005971"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "ribonucleotide reductase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "RNR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:1.17.4.1"^^xsd:string + obo:IAO_0000115 "An enzyme complex composed of 2-4 or more subunits, which usually contains nonheme iron and requires ATP for catalysis. Catalyzes the formation of 2'-deoxyribonucleoside diphosphate and thioredoxin disulfide from ribonucleoside diphosphate and thioredoxin."^^xsd:string, + rdfs:label "ribonucleoside-diphosphate reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0005969 + + Annotations: + oboInOwl:hasNarrowSynonym "serine-pyruvate aminotransferase, type 2B complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.6.1.51"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the formation of hydroxypyruvate and alanine from serine and pyruvate."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005969"^^xsd:string, + rdfs:label "serine-pyruvate aminotransferase complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005970"^^xsd:string, + oboInOwl:hasNarrowSynonym "serine-pyruvate aminotransferase, type 1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0005968 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Rab-protein geranylgeranyltransferase complex"^^xsd:string, + oboInOwl:id "GO:0005968"^^xsd:string, + oboInOwl:hasExactSynonym "RAB-protein geranylgeranyltransferase complex"^^xsd:string, + oboInOwl:hasExactSynonym "RabGGTase complex"^^xsd:string, + oboInOwl:hasExactSynonym "GGTase-II complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11886217"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme complex, which in mammals is composed of an alpha and a beta subunit, and which associates with an accessory protein Rep (Rab escort protein). Catalyzes of the transfer of a geranyl-geranyl group from geranylgeranyl pyrophosphate to a Rab protein."^^xsd:string, + oboInOwl:hasExactSynonym "Rab geranylgeranyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0071665 + + Annotations: + rdfs:label "gamma-catenin-TCF7L2 complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "gamma-catenin-TCF4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14661054"^^xsd:string + oboInOwl:hasExactSynonym "plakoglobin-TCF4 complex"^^xsd:string, + oboInOwl:id "GO:0071665"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:vk"^^xsd:string, + oboInOwl:hasDbXref "PMID:14661054"^^xsd:string + obo:IAO_0000115 "A protein complex that contains gamma-catenin and TCF7L2 (TCF4), binds to the TCF DNA motif within a promoter element, and is involved in the regulation of WNT target gene transcription."^^xsd:string + + SubClassOf: + obo:GO_0071664 + + +Class: obo:GO_0071664 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:vk"^^xsd:string, + oboInOwl:hasDbXref "PMID:14661054"^^xsd:string + obo:IAO_0000115 "A protein complex that contains a catenin and TCF7L2 (TCF4), binds to the TCF DNA motif within a promoter element, and is involved in the regulation of WNT target gene transcription."^^xsd:string, + rdfs:label "catenin-TCF7L2 complex"^^xsd:string, + oboInOwl:id "GO:0071664"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "catenin-TCF4 complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0031533 + + Annotations: + oboInOwl:id "GO:0031533"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:10347220"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an RNA 5' triphosphatase and a guanyl transferase (Cet1p and Ceg1p in S. cerevisiae; Pct1 and Ceg1 in S. pombe) and is involved in mRNA capping."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "mRNA capping enzyme complex"^^xsd:string, + rdfs:label "mRNA cap methyltransferase complex"^^xsd:string, + oboInOwl:hasExactSynonym "mRNA (guanine-N7) methyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0034708, + obo:GO_0044428 + + +Class: obo:GO_0010367 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extracellular isoamylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tair_curators"^^xsd:string + obo:IAO_0000115 "A protein complex whose composition varies amongst species; in rice it probably exists in a homo-tetramer to homo-hexamer form and in Gram negative bacteria as a dimer. Functions in the hydrolysis of alpha-(1,6)-D-glucosidic branch linkages. Isoamylases in animals are localized in the extracellular space."^^xsd:string, + oboInOwl:id "GO:0010367"^^xsd:string + + EquivalentTo: + obo:GO_0043033 + and (obo:BFO_0000050 some obo:GO_0005576) + + SubClassOf: + obo:GO_0043033, + obo:GO_0044421 + + +Class: obo:GO_0071666 + + Annotations: + rdfs:label "Slit-Robo signaling complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Slit-Robo signalling complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:17062560"^^xsd:string, + oboInOwl:hasDbXref "PMID:18359766"^^xsd:string + obo:IAO_0000115 "A protein-carbohydrate complex that consists of a transmembrane roundabout (Robo) receptor, an extracellular Slit ligand and heparin/heparan sulfate."^^xsd:string, + oboInOwl:id "GO:0071666"^^xsd:string + + SubClassOf: + obo:GO_0032992 + + +Class: obo:GO_0043599 + + Annotations: + oboInOwl:id "GO:0043599"^^xsd:string, + rdfs:label "nuclear DNA replication factor C complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:14614842"^^xsd:string + obo:IAO_0000115 "A nuclear complex of five polypeptides that loads the DNA polymerase processivity factor proliferating cell nuclear antigen (PCNA) onto DNA, thereby permitting processive DNA synthesis catalyzed by DNA polymerase delta or epsilon. In Saccharomyces and several other species, the subunits are known as Rfc1p-Rfc5p, although subunit names do not necessarily correspond between different species."^^xsd:string + + EquivalentTo: + obo:GO_0005663 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:GO_0005663, + obo:BFO_0000050 some obo:GO_0043601 + + +Class: obo:GO_0042106 + + Annotations: + oboInOwl:hasExactSynonym "gamma-delta T-cell receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-delta TCR complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-delta T lymphocyte receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-delta T-lymphocyte receptor complex"^^xsd:string, + rdfs:label "gamma-delta T cell receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A T cell receptor complex in which the TCR heterodimer comprises gamma and delta chains, associated with the CD3 complex; recognizes antigen directly, without a requirement for processing and presentation by an MHC protein."^^xsd:string, + oboInOwl:id "GO:0042106"^^xsd:string + + SubClassOf: + obo:GO_0042101 + + +Class: obo:GO_0042105 + + Annotations: + oboInOwl:hasExactSynonym "alpha-beta T lymphocyte receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "alpha-beta TCR complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A T cell receptor complex in which the TCR heterodimer comprises alpha and beta chains, associated with the CD3 complex; recognizes a complex consisting of an antigen-derived peptide bound to a class I or class II MHC protein."^^xsd:string, + oboInOwl:hasExactSynonym "alpha-beta T-lymphocyte receptor complex"^^xsd:string, + oboInOwl:id "GO:0042105"^^xsd:string, + rdfs:label "alpha-beta T cell receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "alpha-beta T-cell receptor complex"^^xsd:string + + SubClassOf: + obo:GO_0042101 + + +Class: obo:GO_0005960 + + Annotations: + oboInOwl:id "GO:0005960"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "glycine cleavage complex"^^xsd:string, + oboInOwl:hasExactSynonym "glycine decarboxylase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "glycine dehydrogenase complex (decarboxylating)"^^xsd:string, + oboInOwl:hasExactSynonym "glycine dehydrogenase (decarboxylating) complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0070015"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:GCVMULTI-CPLX"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the reversible oxidation of glycine. In E. coli, it has four components: dihydrolipoamide dehydrogenase, glycine dehydrogenase (decarboxylating), lipoyl-GcvH-protein and aminomethyltransferase, also known as L, P, H, and T."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Glycine_decarboxylase_complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "glycine cleavage system"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005961"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "glycine synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0000789 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:20404130"^^xsd:string + obo:IAO_0000115 "The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome in the cytoplasm."^^xsd:string, + oboInOwl:id "GO:0000789"^^xsd:string, + rdfs:label "cytoplasmic chromatin"^^xsd:string + + EquivalentTo: + obo:GO_0000785 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000785, + obo:GO_0044444, + obo:BFO_0000050 some obo:GO_0000229 + + +Class: obo:GO_0005962 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Mitochondrial complex that possesses isocitrate dehydrogenase (NAD+) activity."^^xsd:string, + oboInOwl:id "GO:0005962"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial isocitrate dehydrogenase complex (NAD+)"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function of this complex is represented by the molecular function term 'isocitrate dehydrogenase (NAD+) activity ; GO:0004449'."^^xsd:string + + EquivalentTo: + obo:GO_0045242 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0030062, + obo:GO_0045242 + + +Class: obo:GO_0000787 + + Annotations: + rdfs:label "cytoplasmic nucleosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A complex comprised of DNA wound around a multisubunit core and associated proteins, which forms the primary packing unit of DNA in the cytoplasm into higher order structures."^^xsd:string, + oboInOwl:id "GO:0000787"^^xsd:string + + EquivalentTo: + obo:GO_0000786 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000786, + obo:BFO_0000050 some obo:GO_0000789, + obo:GO_0044444 + + +Class: obo:GO_0005963 + + Annotations: + oboInOwl:id "GO:0005963"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "magnesium-dependent protein serine/threonine phosphatase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.1.3.16"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the removal of serine- or threonine-bound phosphate groups from a wide range of phosphoproteins, including a number of enzymes that have been phosphorylated under the action of a kinase."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0008287 + + +Class: obo:GO_0000788 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear nucleosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A complex comprised of DNA wound around a multisubunit core and associated proteins, which forms the primary packing unit of DNA in the nucleus into higher order structures."^^xsd:string, + oboInOwl:id "GO:0000788"^^xsd:string + + EquivalentTo: + obo:GO_0000786 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0000786, + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454 + + +Class: obo:GO_0005964 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005964"^^xsd:string, + rdfs:label "phosphorylase kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.7.11.19"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the phosphorylation of phosphorylase b to form phosphorylase a."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005965 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005965"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses protein farnesyltransferase activity."^^xsd:string, + rdfs:label "protein farnesyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005966 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyclic-nucleotide phosphodiesterase complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "photoreceptor cyclic-nucleotide phosphodiesterase complex"^^xsd:string, + oboInOwl:id "GO:0005966"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.1.4.-"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the hydrolysis of bonds in a cyclic nucleotide."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0005967 + + Annotations: + oboInOwl:hasBroadSynonym "pyruvate dehydrogenase complex (lipoamide)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471331309"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716720094"^^xsd:string + obo:IAO_0000115 "Complex that carries out the oxidative decarboxylation of pyruvate to form acetyl-CoA in eukaryotes; includes subunits possessing three catalytic activities: pyruvate dehydrogenase (E1), dihydrolipoamide S-acetyltransferase (E2), and dihydrolipoamide dehydrogenase (E3). The This Eukaryotic form usually contains more subunits than its bacterial counterpart; for example, one known complex contains 30 E1 dimers, 60 E2 monomers, and 6 E3 dimers as well as a few copies of pyruvate dehydrogenase kinase and pyruvate dehydrogenase phosphatase."^^xsd:string, + rdfs:label "mitochondrial pyruvate dehydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0005967"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The functions of this complex are represented by the molecular function terms 'pyruvate dehydrogenase (lipoamide) activity ; GO:0004739', 'dihydrolipoamide S-acetyltransferase activity ; GO:0004742', and 'dihydrolipoamide dehydrogenase activity ; GO:0004148'."^^xsd:string + + EquivalentTo: + obo:GO_0045254 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045254, + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0005958 + + Annotations: + oboInOwl:hasAlternativeId "GO:0005959"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DNA-dependent protein kinase-DNA ligase 4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10854421"^^xsd:string, + oboInOwl:hasDbXref "PMID:12235392"^^xsd:string, + oboInOwl:hasDbXref "PMID:17072889"^^xsd:string + obo:IAO_0000115 "A large protein complex which is involved in the repair of DNA double-strand breaks and, in mammals, V(D)J recombination events. It consists of the DNA-dependent protein kinase catalytic subunit (DNA-PKcs), the DNA end-binding heterodimer Ku, the nuclear phosphoprotein XRCC4 or a homolog thereof, and DNA ligase IV."^^xsd:string, + oboInOwl:id "GO:0005958"^^xsd:string + + SubClassOf: + obo:GO_0070419, + obo:GO_0044428 + + +Class: obo:GO_0000793 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "metaphase chromosome"^^xsd:string, + oboInOwl:hasRelatedSynonym "mitotic chromosome"^^xsd:string, + rdfs:label "condensed chromosome"^^xsd:string, + rdfs:comment "Note that this term can be used to annotate gene products that localize to a mitotic chromosome in an organism that undergoes an 'open mitosis' in which the nuclear envelope breaks down during mitosis."^^xsd:string, + oboInOwl:hasRelatedSynonym "cytoplasmic mitotic chromosome"^^xsd:string, + oboInOwl:id "GO:0000793"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A highly compacted molecule of DNA and associated proteins resulting in a cytologically distinct structure."^^xsd:string + + SubClassOf: + obo:GO_0005694 + + +Class: obo:GO_0000792 + + Annotations: + rdfs:label "heterochromatin"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao581845896"^^xsd:string, + oboInOwl:id "GO:0000792"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A compact and highly condensed form of chromatin."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Heterochromatin"^^xsd:string + + SubClassOf: + obo:GO_0000785 + + +Class: obo:GO_0000791 + + Annotations: + rdfs:label "euchromatin"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Euchromatin"^^xsd:string, + oboInOwl:id "GO:0000791"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao445485807"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A dispersed and relatively uncompacted form of chromatin."^^xsd:string + + SubClassOf: + obo:GO_0000785 + + +Class: obo:GO_0000790 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:20404130"^^xsd:string + obo:IAO_0000115 "The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome in the nucleus."^^xsd:string, + oboInOwl:id "GO:0000790"^^xsd:string, + rdfs:label "nuclear chromatin"^^xsd:string + + EquivalentTo: + obo:GO_0000785 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0000785, + obo:GO_0044454 + + +Class: obo:GO_0000797 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "The core heterodimer of a condensin complex, a multisubunit protein complex that plays a central role in chromosome condensation."^^xsd:string, + oboInOwl:hasNarrowSynonym "Smc2-Smc4 complex"^^xsd:string, + rdfs:label "condensin core heterodimer"^^xsd:string, + oboInOwl:hasNarrowSynonym "8S condensin complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008621"^^xsd:string, + oboInOwl:id "GO:0000797"^^xsd:string + + EquivalentTo: + obo:GO_0043234 + and (obo:BFO_0000050 some obo:GO_0000796) + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000796, + obo:GO_0043234 + + +Class: obo:GO_0000796 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "condensin complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex that plays a central role in chromosome condensation."^^xsd:string, + oboInOwl:hasRelatedSynonym "SMC complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005676"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008620"^^xsd:string, + oboInOwl:hasNarrowSynonym "13S condensin complex"^^xsd:string, + oboInOwl:id "GO:0000796"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0000793 + + +Class: obo:GO_0000795 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Synaptonemal_complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A proteinaceous scaffold found between homologous chromosomes during meiosis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000795"^^xsd:string, + rdfs:label "synaptonemal complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005716"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794 + + +Class: obo:GO_0000794 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A highly compacted molecule of DNA and associated proteins resulting in a cytologically distinct structure that remains in the nucleus."^^xsd:string, + rdfs:comment "Note that this term and its children can be used to annotate gene products that localize to a mitotic chromosome in an organism that undergoes a 'closed mitosis' in which the nuclear envelope does not break down during mitosis and for gene products that localize to a meiotic chromosome."^^xsd:string, + oboInOwl:id "GO:0000794"^^xsd:string, + oboInOwl:hasRelatedSynonym "nuclear mitotic chromosome"^^xsd:string, + oboInOwl:hasRelatedSynonym "meiotic chromosome"^^xsd:string, + rdfs:label "condensed nuclear chromosome"^^xsd:string + + EquivalentTo: + obo:GO_0000793 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0000793, + obo:GO_0000228 + + +Class: obo:GO_0008623 + + Annotations: + oboInOwl:hasAlternativeId "GO:0016588"^^xsd:string, + oboInOwl:hasExactSynonym "CHRAC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008623"^^xsd:string, + rdfs:label "chromatin accessibility complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "ISW2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:9252192"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that uses ATP to increase the general accessibility of DNA in chromatin. Unlike other known chromatin remodeling complexes, CHRAC can also function during chromatin assembly; it uses ATP to convert irregular chromatin into a regular array of nucleosomes with even spacing."^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0008622 + + Annotations: + rdfs:label "epsilon DNA polymerase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008622"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:420"^^xsd:string + oboInOwl:hasExactSynonym "DNA polymerase epsilon complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15814431"^^xsd:string, + oboInOwl:hasDbXref "PMID:9745046"^^xsd:string + obo:IAO_0000115 "A heterotetrameric DNA polymerase complex that catalyzes processive DNA synthesis in the absence of PCNA, but is further stimulated in the presence of PCNA. The complex contains a large catalytic subunit and three small subunits, and is best characterized in Saccharomyces, in which the subunits are named Pol2p, Dpb2p, Dpb3p, and Dpb4p. Some evidence suggests that DNA polymerase epsilon is the leading strand polymerase; it is also involved in nucleotide-excision repair and mismatch repair."^^xsd:string + + SubClassOf: + obo:GO_0042575, + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000109, + obo:BFO_0000050 some obo:GO_0043601 + + +Class: obo:GO_0033698 + + Annotations: + rdfs:label "Rpd3L complex"^^xsd:string, + oboInOwl:id "GO:0033698"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Clr6 histone deacetylase complex I/I'"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Rpd3C(L)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17450151"^^xsd:string + obo:IAO_0000115 "A histone deacetylase complex which deacetylates histones across gene coding regions. Composed of a catalytic histone deacetylase subunit, an Sds-3 family protein, a SIN3 family co-repressor, a WD repeat protein, and a zf- PHD finger (Clr6, Sds3, Pst1, Prw1, Png2 in Schizosaccharomyces pombe; Rpd3p, Sin3p, Ume1p, Pho23p, Sap30p, Sds3p, Cti6p, Rxt2p, Rxt3p, Dep1p, Ume6p and Ash1p in Saccharomyces cerevisiae)."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000508"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19040720"^^xsd:string + oboInOwl:hasExactSynonym "Clr6L complex"^^xsd:string + + SubClassOf: + obo:GO_0070822 + + +Class: obo:GO_0046581 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0046581"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721662544"^^xsd:string + obo:IAO_0000115 "An extremely narrow tubular channel located between adjacent cells. An instance of this is the secretory canaliculi occurring between adjacent parietal cells in the gastric mucosa of vertebrates."^^xsd:string, + rdfs:label "intercellular canaliculus"^^xsd:string + + SubClassOf: + obo:GO_0005911 + + +Class: obo:GO_0005955 + + Annotations: + oboInOwl:id "GO:0005955"^^xsd:string, + oboInOwl:hasNarrowSynonym "calcium-dependent protein serine/threonine phosphatase complex"^^xsd:string, + oboInOwl:hasExactSynonym "protein phosphatase type 2B complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:019859951"^^xsd:string + obo:IAO_0000115 "A heterodimeric calcium ion and calmodulin dependent protein phosphatase composed of catalytic and regulatory subunits; the regulatory subunit is very similar in sequence to calmodulin."^^xsd:string, + rdfs:label "calcineurin complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0008287 + + +Class: obo:GO_0010339 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The side of the cell wall that is opposite to the side that faces the cell and its contents."^^xsd:string, + oboInOwl:id "GO:0010339"^^xsd:string, + rdfs:label "external side of cell wall"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009986 + + +Class: obo:GO_0034615 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034615"^^xsd:string, + oboInOwl:hasExactSynonym "GTP cyclohydrolase I complex"^^xsd:string, + rdfs:label "GCH1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16696853"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses GTP cyclohydrolase I activity. In E. coli and human, the complex is a homodecamer, and monomers are catalytically inactive."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005956 + + Annotations: + oboInOwl:id "GO:0005956"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein kinase CK2 complex"^^xsd:string, + oboInOwl:hasExactSynonym "casein kinase II complex"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10994779"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses protein serine/threonine kinase activity, and contains two catalytic alpha subunits and two regulatory beta subunits. Protein kinase CK2 complexes are found in nearly every subcellular compartment, and can phosphorylate many protein substrates in addition to casein."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005953 + + Annotations: + rdfs:label "CAAX-protein geranylgeranyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9781874"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme, composed of an alpha and a beta subunit. Participates in the post-translational C-terminal modification of several small GTPases, allowing their targeting to the membrane."^^xsd:string, + oboInOwl:id "GO:0005953"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031560 + + Annotations: + oboInOwl:id "GO:0031560"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cellular bud neck polarisome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9632790"^^xsd:string + obo:IAO_0000115 "Protein complex that has a role in determining cell polarity, found at the neck of a fungal bud before and during cytokinesis."^^xsd:string + + EquivalentTo: + obo:GO_0000133 + and (obo:BFO_0000050 some obo:GO_0005935) + + SubClassOf: + obo:GO_0000133, + obo:BFO_0000050 some obo:GO_0005935 + + +Class: obo:GO_0005954 + + Annotations: + oboInOwl:hasExactSynonym "calcium/calmodulin-dependent protein kinase complex"^^xsd:string, + oboInOwl:id "GO:0005954"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "CaMKII"^^xsd:string, + oboInOwl:hasExactSynonym "CAMK2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.7.11.17"^^xsd:string + obo:IAO_0000115 "An enzyme complex which in eukaryotes is composed of four different chains: alpha, beta, gamma, and delta. The different isoforms assemble into homo- or heteromultimeric holoenzymes composed of 8 to 12 subunits. Catalyzes the phosphorylation of proteins to O-phosphoproteins."^^xsd:string, + rdfs:label "calcium- and calmodulin-dependent protein kinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005951 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "arginine-specific carbamoyl phosphate synthetase complex"^^xsd:string, + rdfs:label "carbamoyl-phosphate synthase complex"^^xsd:string, + oboInOwl:id "GO:0005951"^^xsd:string, + oboInOwl:hasExactSynonym "carbamoyl phosphate synthase complex"^^xsd:string, + rdfs:comment "Note that in higher eukaryotes, carbamoyl-phosphate synthase is usually a single polypeptide, not a complex, and should therefore not be annotated to this component term."^^xsd:string, + oboInOwl:hasNarrowSynonym "carbamoyl-phosphate synthase arginine-specific complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8626695"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the formation of carbamoyl phosphate; comprises a small subunit that binds and cleaves glutamine, and a large subunit that accepts the ammonia group cleaved from glutamine, binds all of the remaining substrates and effectors, and carries out all of the other catalytic events."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0000776 + + Annotations: + oboInOwl:hasAlternativeId "GO:0005699"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000776"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Kinetochore"^^xsd:string, + rdfs:label "kinetochore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that is located at the centromeric region of DNA and provides an attachment point for the spindle microtubules."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043232, + obo:BFO_0000050 some obo:GO_0000775, + obo:GO_0043234 + + +Class: obo:GO_0031562 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15976451"^^xsd:string + obo:IAO_0000115 "Protein complex that has a role in determining cell polarity, found at the tip of a growing fungal hypha."^^xsd:string, + oboInOwl:id "GO:0031562"^^xsd:string, + rdfs:label "hyphal tip polarisome"^^xsd:string + + EquivalentTo: + obo:GO_0000133 + and (obo:BFO_0000050 some obo:GO_0001411) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0001411, + obo:GO_0000133 + + +Class: obo:GO_0005952 + + Annotations: + oboInOwl:hasExactSynonym "3',5'-cAMP-dependent protein kinase complex"^^xsd:string, + oboInOwl:hasExactSynonym "cyclic AMP-dependent protein kinase complex"^^xsd:string, + oboInOwl:hasExactSynonym "adenosine 3',5'-cyclophosphate-dependent protein kinase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005952"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.7.11.11"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "An enzyme complex, composed of regulatory and catalytic subunits, that catalyzes protein phosphorylation. Inactive forms of the enzyme have two regulatory chains and two catalytic chains; activation by cAMP produces two active catalytic monomers and a regulatory dimer."^^xsd:string, + oboInOwl:hasExactSynonym "3',5' cAMP-dependent protein kinase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "PKA"^^xsd:string, + rdfs:label "cAMP-dependent protein kinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0000777 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000777"^^xsd:string, + rdfs:label "condensed chromosome kinetochore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that is located at the centromeric region of a condensed chromosome and provides an attachment point for the spindle microtubules."^^xsd:string + + EquivalentTo: + obo:GO_0000776 + and (obo:BFO_0000050 some obo:GO_0000793) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000779, + obo:GO_0000776 + + +Class: obo:GO_0031561 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cellular bud tip polarisome"^^xsd:string, + oboInOwl:id "GO:0031561"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9632790"^^xsd:string + obo:IAO_0000115 "Protein complex that has a role in determining cell polarity, found at the tip of a growing fungal bud."^^xsd:string + + EquivalentTo: + obo:GO_0000133 + and (obo:BFO_0000050 some obo:GO_0005934) + + SubClassOf: + obo:GO_0000133, + obo:BFO_0000050 some obo:GO_0005934 + + +Class: obo:GO_0000778 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that is located at the centromeric region of a condensed chromosome in the nucleus and provides an attachment point for the spindle microtubules."^^xsd:string, + oboInOwl:id "GO:0000778"^^xsd:string, + rdfs:label "condensed nuclear chromosome kinetochore"^^xsd:string + + EquivalentTo: + obo:GO_0000776 + and (obo:BFO_0000050 some obo:GO_0000794) + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000780, + obo:GO_0000777 + + +Class: obo:GO_0005950 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:4.1.3.27"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:ANTHRANSYN-CPLX"^^xsd:string, + oboInOwl:hasDbXref "PMID:4886290"^^xsd:string + obo:IAO_0000115 "A heterotetrameric enzyme complex made up of two components I and two components II. Catalyzes the formation of anthranilate, pyruvate and L-glutamate from chorismate and L-glutamine."^^xsd:string, + oboInOwl:id "GO:0005950"^^xsd:string, + rdfs:label "anthranilate synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0000779 + + Annotations: + rdfs:label "condensed chromosome, centromeric region"^^xsd:string, + oboInOwl:hasRelatedSynonym "condensed chromosome, pericentric region"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000779"^^xsd:string, + oboInOwl:hasRelatedSynonym "condensed chromosome, centromere"^^xsd:string, + oboInOwl:hasExactSynonym "condensed chromosome, centric region"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string + obo:IAO_0000115 "The region of a condensed chromosome that includes the centromere and associated proteins, including the kinetochore. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome."^^xsd:string, + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex."^^xsd:string + + EquivalentTo: + obo:GO_0000775 + and (obo:BFO_0000050 some obo:GO_0000793) + + SubClassOf: + obo:GO_0000775, + obo:BFO_0000050 some obo:GO_0000793 + + +Class: obo:GO_0031563 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031563"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14734532"^^xsd:string + obo:IAO_0000115 "Protein complex that has a role in determining cell polarity, found at the tip of the mating projection in unicellular fungi exposed to mating pheromone."^^xsd:string, + rdfs:label "mating projection tip polarisome"^^xsd:string + + EquivalentTo: + obo:GO_0000133 + and (obo:BFO_0000050 some obo:GO_0043332) + + SubClassOf: + obo:GO_0044463, + obo:GO_0000133, + obo:BFO_0000050 some obo:GO_0043332 + + +Class: obo:GO_0071687 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:15030757"^^xsd:string + obo:IAO_0000115 "The part of the horsetail nucleus where telomeres cluster under the SPB and that leads horsetail movement. The horsetail nucleus is the elongated nucleus which forms during the rapid oscillatory movement at meiotic prophase; characterized in Schizosaccharomyces pombe."^^xsd:string, + oboInOwl:id "GO:0071687"^^xsd:string, + rdfs:label "horsetail nucleus leading edge"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0071686 + + +Class: obo:GO_0000784 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "The terminal region of a linear chromosome in the nucleus that includes the telomeric DNA repeats and associated proteins."^^xsd:string, + oboInOwl:hasExactSynonym "nuclear chromosome, telomere"^^xsd:string, + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear chromosome, telomeric region"^^xsd:string, + oboInOwl:id "GO:0000784"^^xsd:string + + EquivalentTo: + obo:GO_0000781 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:GO_0000781 + + +Class: obo:GO_0071686 + + Annotations: + rdfs:label "horsetail nucleus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071686"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:15030757"^^xsd:string + obo:IAO_0000115 "The elongated nucleus which forms during the rapid oscillatory movement at meiotic prophase; characterized in Schizosaccharomyces pombe."^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0000783 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A complex of DNA and protein located at the end of a linear chromosome in the nucleus that protects and stabilizes a linear chromosome."^^xsd:string, + rdfs:label "nuclear telomere cap complex"^^xsd:string, + oboInOwl:id "GO:0000783"^^xsd:string, + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific protein complex and not a region of the chromosome."^^xsd:string + + EquivalentTo: + obo:GO_0000782 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:GO_0000782, + obo:BFO_0000050 some obo:GO_0000784 + + +Class: obo:GO_0000786 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nucleosome"^^xsd:string, + rdfs:label "nucleosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0000786"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005718"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A complex comprised of DNA wound around a multisubunit core and associated proteins, which forms the primary packing unit of DNA into higher order structures."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0032993, + obo:BFO_0000050 some obo:GO_0000785 + + +Class: obo:GO_0000785 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:20404130"^^xsd:string + obo:IAO_0000115 "The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome."^^xsd:string, + rdfs:label "chromatin"^^xsd:string, + oboInOwl:id "GO:0000785"^^xsd:string, + oboInOwl:hasRelatedSynonym "chromosome scaffold"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1615953555"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005717"^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0071683 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dos"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A dendrite that is found on a sensory neuron, and directly transduces a sensory signal from the sensory neuron to another neuron."^^xsd:string, + rdfs:label "sensory dendrite"^^xsd:string, + oboInOwl:id "GO:0071683"^^xsd:string + + SubClassOf: + obo:GO_0030425 + + +Class: obo:GO_0033062 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "A conserved heterodimeric DNA recombinase mediator complex that contains the RecA family proteins Rhp55p and Rph57 in Schizosaccharomyces, or orthologs thereof (e.g. Rad55p and Rad57p in Saccharomyces)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Rad55-Rad57 complex"^^xsd:string, + oboInOwl:id "GO:0033062"^^xsd:string, + rdfs:label "Rhp55-Rhp57 complex"^^xsd:string + + SubClassOf: + obo:GO_0033061 + + +Class: obo:GO_0000780 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "condensed nuclear chromosome, centric region"^^xsd:string, + oboInOwl:hasRelatedSynonym "condensed nuclear chromosome, centromere"^^xsd:string, + rdfs:label "condensed nuclear chromosome, centromeric region"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string + obo:IAO_0000115 "The region of a condensed chromosome in the nucleus that includes the centromere and associated proteins, including the kinetochore. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome."^^xsd:string, + oboInOwl:hasRelatedSynonym "condensed nuclear chromosome, pericentric region"^^xsd:string, + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex."^^xsd:string, + oboInOwl:id "GO:0000780"^^xsd:string + + EquivalentTo: + obo:GO_0000779 + and (obo:BFO_0000050 some obo:GO_0000794) + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794, + obo:GO_0000779 + + +Class: obo:GO_0071682 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pde"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an endocytic vesicle."^^xsd:string, + rdfs:label "endocytic vesicle lumen"^^xsd:string, + oboInOwl:id "GO:0071682"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030139, + obo:GO_0060205 + + +Class: obo:GO_0033063 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "BCDX2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16093548"^^xsd:string, + oboInOwl:hasDbXref "PMID:17114795"^^xsd:string + obo:IAO_0000115 "A DNA recombinase mediator complex that contains the Rad51 paralogs RAD51B, RAD51C, RAD51D, and XRCC2, or orthologs thereof."^^xsd:string, + oboInOwl:id "GO:0033063"^^xsd:string, + rdfs:label "Rad51B-Rad51C-Rad51D-XRCC2 complex"^^xsd:string + + SubClassOf: + obo:GO_0033061 + + +Class: obo:GO_0005948 + + Annotations: + oboInOwl:hasExactSynonym "acetohydroxyacid synthase complex"^^xsd:string, + rdfs:comment "See also the molecular function term 'acetolactate synthase activity ; GO:0003984'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:2.2.1.6"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:16458324"^^xsd:string, + oboInOwl:hasDbXref "PMID:8756689"^^xsd:string + obo:IAO_0000115 "A dimeric (a large and a small chain) or tetrameric (two large and two small chains) enzyme complex. Catalyzes the formation of acetolactate from pyruvate."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "acetolactate synthase complex"^^xsd:string, + oboInOwl:id "GO:0005948"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0071685 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "NADH dehydrogenase complex (plastoquinone)"^^xsd:string, + oboInOwl:id "GO:0071685"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "DOI:10.1078/0176-1617-00593"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An NADH dehydrogenase complex that catalyzes the transfer of electrons to plastoquinone. The complex is involved in the non-photochemical reduction of plastoquinones and the cyclic electron transport around photosystem I, and is found in plastid thylakoids."^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0030964, + obo:BFO_0000050 some obo:GO_0031976 + + +Class: obo:GO_0005947 + + Annotations: + rdfs:label "mitochondrial alpha-ketoglutarate dehydrogenase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "2-oxoglutarate dehydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0005947"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Mitochondrial complex that possesses alpha-ketoglutarate dehydrogenase activity."^^xsd:string + + EquivalentTo: + obo:GO_0045240 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0030062, + obo:GO_0045240 + + +Class: obo:GO_0000782 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A complex of DNA and protein located at the end of a linear chromosome that protects and stabilizes a linear chromosome."^^xsd:string, + rdfs:label "telomere cap complex"^^xsd:string, + oboInOwl:inSubset , + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific protein complex and not a region of the chromosome."^^xsd:string, + oboInOwl:id "GO:0000782"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000781, + obo:GO_0032993 + + +Class: obo:GO_0033061 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "A protein complex that promotes nucleoprotein filament formation during homologous recombination; most known examples contain two or more RecA family proteins (often Rad51 paralogs)."^^xsd:string, + rdfs:label "DNA recombinase mediator complex"^^xsd:string, + oboInOwl:id "GO:0033061"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0005946 + + Annotations: + rdfs:label "alpha,alpha-trehalose-phosphate synthase complex (UDP-forming)"^^xsd:string, + oboInOwl:hasExactSynonym "UDP-glucose-glucosephosphate glucosyltransferase complex"^^xsd:string, + rdfs:comment "See also the molecular function term 'alpha,alpha-trehalose-phosphate synthase (UDP-forming) activity ; GO:0003825'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "trehalose-6-phosphate synthase complex"^^xsd:string, + oboInOwl:hasExactSynonym "trehalose-6-phosphate synthase/phosphatase"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9837904"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses alpha,alpha-trehalose-phosphate synthase (UDP-forming) and trehalose-phosphatase activities, and thus catalyzes two reactions in trehalose biosynthesis. In the complex identified in Saccharomyces, Tps1p has alpha,alpha-trehalose-phosphate synthase (UDP-forming) activity, Tps2p has trehalose 6-phosphate phosphatase activity; Tps3p is a regulatory subunit, and an additional subunit, Tsl1p, may be present."^^xsd:string, + oboInOwl:id "GO:0005946"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0000781 + + Annotations: + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins."^^xsd:string, + oboInOwl:hasRelatedSynonym "telomere"^^xsd:string, + oboInOwl:id "GO:0000781"^^xsd:string, + rdfs:label "chromosome, telomeric region"^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0033066 + + Annotations: + oboInOwl:id "GO:0033066"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16093548"^^xsd:string, + oboInOwl:hasDbXref "PMID:17114795"^^xsd:string + obo:IAO_0000115 "A DNA recombinase mediator complex that contains the Rad51 paralogs RAD51B and RAD51C, or orthologs thereof."^^xsd:string, + oboInOwl:hasExactSynonym "BC complex"^^xsd:string, + rdfs:label "Rad51B-Rad51C complex"^^xsd:string + + SubClassOf: + obo:GO_0033061 + + +Class: obo:GO_0033064 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033064"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:16093548"^^xsd:string + obo:IAO_0000115 "A heterodimeric DNA recombinase mediator complex that contains the Rad51 paralogs RAD51D and XRCC2, or orthologs thereof; conserved from fission yeast to human but absent from budding yeast."^^xsd:string, + rdfs:label "XRCC2-RAD51D complex"^^xsd:string, + oboInOwl:hasExactSynonym "DX2 complex"^^xsd:string + + SubClassOf: + obo:GO_0033061 + + +Class: obo:GO_0033065 + + Annotations: + rdfs:label "Rad51C-XRCC3 complex"^^xsd:string, + oboInOwl:id "GO:0033065"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16093548"^^xsd:string, + oboInOwl:hasDbXref "PMID:17114795"^^xsd:string + obo:IAO_0000115 "A DNA recombinase mediator complex that contains the Rad51 paralogs RAD51C and XRCC3, or orthologs thereof."^^xsd:string, + oboInOwl:hasExactSynonym "CX3 complex"^^xsd:string + + SubClassOf: + obo:GO_0033061 + + +Class: obo:GO_0016473 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "sodium ion-transporting F-type ATPase complex"^^xsd:string, + oboInOwl:id "GO:0016473"^^xsd:string, + oboInOwl:hasExactSynonym "sodium-translocating F-type ATPase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14656431"^^xsd:string + obo:IAO_0000115 "A sodium ion-transporting two-sector ATPase complex that catalyzes the phosphorylation of ADP to ATP. The complex comprises a membrane sector (F0) that carries out proton transport and a cytoplasmic compartment sector (F1) that catalyzes ATP synthesis by a rotational mechanism."^^xsd:string + + SubClassOf: + obo:GO_0016472 + + +Class: obo:GO_0016472 + + Annotations: + oboInOwl:hasExactSynonym "sodium-transporting two-sector ATPase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14656431"^^xsd:string + obo:IAO_0000115 "A large protein complex that catalyzes the synthesis or hydrolysis of ATP by a rotational mechanism, coupled to the transport of sodium ions across a membrane. The complex comprises a membrane sector (F0 or V0) that carries out ion transport and a cytoplasmic compartment sector (F1 or V1) that catalyzes ATP synthesis or hydrolysis."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0016472"^^xsd:string, + rdfs:label "sodium ion-transporting two-sector ATPase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016021, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0016474 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "sodium-translocating V-type ATPase complex"^^xsd:string, + oboInOwl:id "GO:0016474"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15802565"^^xsd:string + obo:IAO_0000115 "A sodium ion-transporting two-sector ATPase complex that couples ATP hydrolysis to the transport of sodium ions across a concentration gradient. The complex comprises a membrane sector (V0) that carries out proton transport and a cytoplasmic compartment sector (V1) that catalyzes ATP hydrolysis."^^xsd:string, + rdfs:label "sodium ion-transporting V-type ATPase complex"^^xsd:string + + SubClassOf: + obo:GO_0016472 + + +Class: obo:GO_0016471 + + Annotations: + rdfs:comment "See also the cellular component terms 'vacuolar proton-transporting V-type ATPase, V1 domain ; GO:0000221' and 'vacuolar proton-transporting V-type ATPase, V0 domain ; GO:0000220' and the molecular function term 'hydrogen ion transporting ATPase activity, rotational mechanism ; GO:0046961'."^^xsd:string, + oboInOwl:hasExactSynonym "vacuolar hydrogen-translocating V-type ATPase complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "A proton-transporting two-sector ATPase complex found in the vacuolar membrane, where it acts as a proton pump to mediate acidification of the vacuolar lumen."^^xsd:string, + rdfs:label "vacuolar proton-transporting V-type ATPase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016471"^^xsd:string + + EquivalentTo: + obo:GO_0033176 + and (obo:BFO_0000050 some obo:GO_0005773) + + SubClassOf: + obo:GO_0044437, + obo:GO_0033176, + obo:BFO_0000050 some obo:GO_0005774 + + +Class: obo:GO_0005942 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "phosphoinositide 3-kinase complex"^^xsd:string, + oboInOwl:id "GO:0005942"^^xsd:string, + oboInOwl:hasExactSynonym "PI3K complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "1-phosphatidylinositol 3-kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:439"^^xsd:string + oboInOwl:hasNarrowSynonym "PIK3CA-PIK3R1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "A complex containing a heterodimer of a catalytic subunit and a regulatory (adaptor) subunit of any phosphatidylinositol 3-kinase (PI3K)."^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "CORUM:429"^^xsd:string + oboInOwl:hasNarrowSynonym "PIK3C3-PIK3R4 complex"^^xsd:string, + rdfs:label "phosphatidylinositol 3-kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2575"^^xsd:string + oboInOwl:hasNarrowSynonym "PI3-kinase p85-subunit alpha- PI3-kinase p110 complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0005943 + + Annotations: + oboInOwl:id "GO:0005943"^^xsd:string, + oboInOwl:hasExactSynonym "class IA PI3K complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "phosphoinositide 3-kinase complex, class IA"^^xsd:string, + rdfs:label "1-phosphatidylinositol-4-phosphate 3-kinase, class IA complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9255069"^^xsd:string, + oboInOwl:hasDbXref "PMID:9759495"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that possesses 1-phosphatidylinositol-4-phosphate 3-kinase activity; comprises a catalytic Class IA phosphoinositide 3-kinase (PI3K) subunit of 110-120 kDa and an associated SH2 domain-containing regulatory subunit that is a member of a family of related proteins often called p85 proteins. Class I PI3Ks phosphorylate phosphatidylinositol [PI], phosphatidylinositol-4-phosphate [PI(4)P] and phosphatidylinositol-4,5-bisphosphate [PI(4,5)P2], and are divided into subclasses A and B according to the type of adaptor subunit with which they associate. Through the interaction with the SH2-containing adaptor subunits, Class IA PI3K catalytic subunits are linked to tyrosine kinase signaling pathways."^^xsd:string, + oboInOwl:hasExactSynonym "1-phosphatidylinositol-4-phosphate kinase, class IA complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0035030"^^xsd:string + + SubClassOf: + obo:GO_0005942 + + +Class: obo:GO_0005944 + + Annotations: + rdfs:label "1-phosphatidylinositol-4-phosphate 3-kinase, class IB complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9255069"^^xsd:string, + oboInOwl:hasDbXref "PMID:9759495"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that possesses 1-phosphatidylinositol-4-phosphate 3-kinase activity; comprises a catalytic Class IB phosphoinositide 3-kinase (PI3K) subunit of 110-120 kDa and an associated regulatory subunit that is larger than, and unrelated to, the p85 proteins present in class IA complexes. Class I PI3Ks phosphorylate phosphatidylinositol [PI], phosphatidylinositol-4-phosphate [PI(4)P] and phosphatidylinositol-4,5-bisphosphate [PI(4,5)P2] and are divided into subclasses A and B according to the type of adaptor subunit with which they associate. Class IB PI3Ks are stimulated by G-proteins and do not interact with the SH2-domain containing adaptors that bind to Class IA PI3Ks."^^xsd:string, + oboInOwl:hasExactSynonym "class IB PI3K complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005944"^^xsd:string, + oboInOwl:hasExactSynonym "phosphoinositide 3-kinase complex, class IB"^^xsd:string, + oboInOwl:hasRelatedSynonym "1-phosphatidylinositol-4-phosphate kinase, class IB complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0035031"^^xsd:string + + SubClassOf: + obo:GO_0005942 + + +Class: obo:GO_0005945 + + Annotations: + oboInOwl:id "GO:0005945"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses 6-phosphofructokinase activity; homodimeric, homooctameric, and allosteric homotetrameric forms are known."^^xsd:string, + rdfs:label "6-phosphofructokinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0005940 + + Annotations: + oboInOwl:hasAlternativeId "GO:0030481"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005940"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Septin_ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A tight ring-shaped structure that forms in the division plane at the site of cytokinesis; composed of members of the conserved family of filament-forming proteins called septins as well as septin-associated proteins. This type of septin structure is observed at the bud neck of budding fungal cells, at the site of cell division in animal cells, at the junction between the mother cell and a pseudohyphal projection, and also within hyphae of filamentous fungi at sites where a septum will form."^^xsd:string, + rdfs:label "septin ring"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0032156, + obo:GO_0044448 + + +Class: obo:GO_0000775 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "centromere"^^xsd:string, + oboInOwl:hasRelatedSynonym "chromosome, pericentric region"^^xsd:string, + oboInOwl:id "GO:0000775"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string + obo:IAO_0000115 "The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome."^^xsd:string, + oboInOwl:hasExactSynonym "chromosome, centric region"^^xsd:string, + rdfs:label "chromosome, centromeric region"^^xsd:string, + rdfs:comment "Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex."^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0051285 + + Annotations: + oboInOwl:hasExactSynonym "cell cortex of cell end"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell cortex of cell tip"^^xsd:string, + oboInOwl:id "GO:0051285"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The region directly beneath the plasma membrane at the cell tip. The cell tip is the region at either end of the longest axis of a cylindrical or elongated cell."^^xsd:string + + EquivalentTo: + obo:GO_0044448 + and (obo:BFO_0000050 some obo:GO_0051286) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0051286, + obo:GO_0044448 + + +Class: obo:GO_0051286 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region at either end of the longest axis of a cylindrical or elongated cell."^^xsd:string, + oboInOwl:id "GO:0051286"^^xsd:string, + rdfs:comment "Note that this term differs from 'cell pole ; GO:0060187' in that it is applicable to a narrower range of cell shapes."^^xsd:string, + rdfs:label "cell tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "cell end"^^xsd:string + + SubClassOf: + obo:GO_0060187 + + +Class: obo:GO_0008004 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008004"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A layer of the basal lamina that contains collagen fibrils and connects the basal lamina to the underlying connective tissue."^^xsd:string, + rdfs:label "lamina reticularis"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0005605 + + +Class: obo:GO_0010330 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12514238"^^xsd:string + obo:IAO_0000115 "The multimeric protein complex, organized in a rosette, which catalyzes the biosynthesis of cellulose for the plant cell wall."^^xsd:string, + rdfs:label "cellulose synthase complex"^^xsd:string, + oboInOwl:id "GO:0010330"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0005935 + + Annotations: + oboInOwl:id "GO:0005935"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The constriction between the mother cell and daughter cell (bud) in an organism that reproduces by budding."^^xsd:string, + rdfs:label "cellular bud neck"^^xsd:string + + SubClassOf: + obo:GO_0030427, + obo:BFO_0000050 some obo:GO_0005933 + + +Class: obo:GO_0008002 + + Annotations: + rdfs:label "lamina lucida"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Lamina_lucida"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The electron-lucent layer of the basal lamina adjacent to the basal plasma membrane of the cells that rest on the lamina."^^xsd:string, + oboInOwl:id "GO:0008002"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0005605 + + +Class: obo:GO_0005938 + + Annotations: + oboInOwl:id "GO:0005938"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cell_cortex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "peripheral cytoplasm"^^xsd:string, + rdfs:label "cell cortex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasRelatedSynonym "cell periphery"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The region of a cell that lies just beneath the plasma membrane and often, but not always, contains a network of actin filaments and associated proteins."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0071944, + obo:GO_0044444 + + +Class: obo:GO_0008003 + + Annotations: + rdfs:label "lamina densa"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The electron-dense layer of the basal lamina; lies just below the lamina lucida."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Lamina_densa"^^xsd:string, + oboInOwl:id "GO:0008003"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0005605 + + +Class: obo:GO_0005937 + + Annotations: + oboInOwl:id "GO:0005937"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The projection formed by unicellular fungi in response to mating pheromone."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "mating projection"^^xsd:string, + oboInOwl:hasNarrowSynonym "conjugation tube"^^xsd:string, + oboInOwl:hasNarrowSynonym "shmoo"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0071627 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the fungal-type vacuolar membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + rdfs:label "integral to fungal-type vacuolar membrane"^^xsd:string, + oboInOwl:id "GO:0071627"^^xsd:string + + SubClassOf: + obo:GO_0071628, + obo:GO_0031166 + + +Class: obo:GO_0097059 + + Annotations: + oboInOwl:id "GO:0097059"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "sCNTFR-CLC complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:11285233"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of two soluble ciliary neurotrophic factor receptor alpha subunits (product of the CNTFR gene) and two molecules of cardiotrophin-like cytokine factor 1 (product of the CLCF1 gene). The complex is secreted into the extracellular space."^^xsd:string, + rdfs:label "CNTFR-CLCF1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0071628 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071628"^^xsd:string, + rdfs:label "intrinsic to fungal-type vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the fungal-type vacuolar membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000329, + obo:GO_0031310 + + +Class: obo:GO_0033001 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "IgG receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:11244038"^^xsd:string, + oboInOwl:hasDbXref "PMID:12413532"^^xsd:string + obo:IAO_0000115 "A protein complex composed of an Fc-gamma RIII alpha chain and an Fc-epsilon RI gamma chain dimer with or without an Fc-epsilon RI beta chain and additional signaling components. The complex functions primarily as an activating receptor for IgG."^^xsd:string, + oboInOwl:hasBroadSynonym "immunoglobulin G receptor complex"^^xsd:string, + oboInOwl:id "GO:0033001"^^xsd:string, + oboInOwl:hasExactSynonym "FcgRIII complex"^^xsd:string, + rdfs:label "Fc-gamma receptor III complex"^^xsd:string + + SubClassOf: + obo:GO_0032997 + + +Class: obo:GO_0033000 + + Annotations: + rdfs:label "Fc-gamma receptor I complex"^^xsd:string, + oboInOwl:hasBroadSynonym "IgG receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "immunoglobulin G receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:11244038"^^xsd:string, + oboInOwl:hasDbXref "PMID:12413532"^^xsd:string + obo:IAO_0000115 "A protein complex composed of an Fc-gamma RI alpha chain and an Fc-epsilon RI gamma chain dimer with or without additional signaling components. The complex functions primarily as an activating receptor for IgG."^^xsd:string, + oboInOwl:id "GO:0033000"^^xsd:string, + oboInOwl:hasExactSynonym "FcgRI complex"^^xsd:string + + SubClassOf: + obo:GO_0032997 + + +Class: obo:GO_0043159 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:8949900"^^xsd:string, + oboInOwl:hasDbXref "PMID:9139729"^^xsd:string + obo:IAO_0000115 "A structural framework, or 'dense core' at the interior of an acrosome. May regulate the distribution of hydrolases within the acrosome and their release during the acrosome reaction."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043159"^^xsd:string, + rdfs:label "acrosomal matrix"^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0044433, + obo:BFO_0000050 some obo:GO_0001669 + + +Class: obo:GO_0005924 + + Annotations: + oboInOwl:id "GO:0005924"^^xsd:string, + oboInOwl:hasRelatedSynonym "hemi-adherens junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string + obo:IAO_0000115 "An adherens junction which connects a cell to the extracellular matrix."^^xsd:string, + rdfs:label "cell-substrate adherens junction"^^xsd:string + + SubClassOf: + obo:GO_0005912, + obo:GO_0030055 + + +Class: obo:GO_0030874 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030874"^^xsd:string, + rdfs:label "nucleolar chromatin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of nuclear chromatin associated with the nucleolus; includes the DNA encoding the ribosomal RNA."^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454 + + +Class: obo:GO_0005925 + + Annotations: + oboInOwl:id "GO:0005925"^^xsd:string, + oboInOwl:hasRelatedSynonym "hemi-adherens junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008357"^^xsd:string, + oboInOwl:hasExactSynonym "focal contact"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Focal_adhesion"^^xsd:string, + rdfs:label "focal adhesion"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316208"^^xsd:string + obo:IAO_0000115 "Small region on the surface of a cell that anchors the cell to the extracellular matrix and that forms a point of termination of actin filaments."^^xsd:string + + SubClassOf: + obo:GO_0005924 + + +Class: obo:GO_0002169 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:15868465"^^xsd:string + obo:IAO_0000115 "A heterodimeric complex having 3-methylcrotonyl-CoA carboxylase activity. The alpha subunit has a covalently bound biotin essential for the ATP-dependent carboxylation. The beta subunit possess carboxyltransferase activity which presumably is essential for binding to 3-methylcrotonyl-CoA."^^xsd:string, + oboInOwl:id "GO:0002169"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "3-methylcrotonyl-CoA carboxylase complex, mitochondrial"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:GO_0043234 + + +Class: obo:GO_0030875 + + Annotations: + oboInOwl:hasExactSynonym "ribosomal DNA protrusion"^^xsd:string, + oboInOwl:id "GO:0030875"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "rDNA protrusion"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1629244"^^xsd:string + obo:IAO_0000115 "Any of the tandem arrays of rDNA localized at the periphery of the nucleus and protruding into the nucleolus, and associated proteins. May be visible as a single or double spot by DAPI staining."^^xsd:string, + rdfs:comment "Note that this component is characterized in Schizosaccharomyces, particularly with respect to the DAPI staining pattern."^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0030874 + + +Class: obo:GO_0005926 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://flybase.bio.indiana.edu/allied-data/lk/interactive-fly/aignfam/junction.htm"^^xsd:string + obo:IAO_0000115 "A cell-substrate adherens junction, also known as a hemiadherens junction (HAJ) that forms one of a pair of junctions in opposing cells that are separated by only 30-40nm, with a thin line of extracellular electron-dense material in between; found where muscles attach to epidermal cells directly (in insects)."^^xsd:string, + oboInOwl:id "GO:0005926"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "connecting hemi-adherens junction"^^xsd:string + + SubClassOf: + obo:GO_0005924 + + +Class: obo:GO_0005927 + + Annotations: + oboInOwl:id "GO:0005927"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "myotendinous junction"^^xsd:string, + rdfs:label "muscle tendon junction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "PMID:12842007"^^xsd:string + obo:IAO_0000115 "A cell-substrate junction found at the terminal anchorage site of skeletal muscle cells to tendons."^^xsd:string + + SubClassOf: + obo:GO_0005924 + + +Class: obo:GO_0070057 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14702385"^^xsd:string + obo:IAO_0000115 "The region of the prospore membrane to which the spindle pole body (SPB) is anchored; the prospore membrane extends from the SPB attachment site to surround the spore nucleus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "prospore membrane spindle pole body attachment site"^^xsd:string, + oboInOwl:id "GO:0070057"^^xsd:string, + oboInOwl:hasExactSynonym "forespore membrane SPB attachment site"^^xsd:string, + oboInOwl:hasExactSynonym "prospore membrane SPB attachment site"^^xsd:string, + oboInOwl:hasExactSynonym "forespore membrane spindle pole body attachment site"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005628 + + +Class: obo:GO_0005928 + + Annotations: + rdfs:label "apical hemi-adherens junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "apical dense plaque"^^xsd:string, + oboInOwl:id "GO:0005928"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11700298"^^xsd:string + obo:IAO_0000115 "A cell-substrate adherens junction found in the apical region of a cell, such as those found in cuticle-secreting epithelia, which connect the apical membrane to the cuticle."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "apical cell-substrate adherens junction"^^xsd:string + + SubClassOf: + obo:GO_0005924 + + +Class: obo:GO_0070056 + + Annotations: + rdfs:label "prospore membrane leading edge"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "forespore membrane leading edge"^^xsd:string, + oboInOwl:id "GO:0070056"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14702385"^^xsd:string + obo:IAO_0000115 "The region of the prospore membrane that extends to surround the spore nucleus; coated with specific proteins that are thought to play a role in prospore membrane organization."^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005628 + + +Class: obo:GO_0005929 + + Annotations: + rdfs:label "cilium"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cilium"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao787716553"^^xsd:string, + oboInOwl:id "GO:0005929"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A specialized eukaryotic organelle that consists of a filiform extrusion of the cell surface. Each cilium is bounded by an extrusion of the cytoplasmic membrane, and contains a regular longitudinal array of microtubules, anchored basally in a centriole."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0030876 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-20 receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030876"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-20; comprises an alpha and a beta subunit."^^xsd:string, + rdfs:label "interleukin-20 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0002167 + + Annotations: + rdfs:label "VRK3/VHR/ERK complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:16845380"^^xsd:string + obo:IAO_0000115 "A ternary complex consisting of VRK3, VHR (Dusp3), and ERK1 (Mapk3) existing in neuronal cells, and is involved in regulation of the ERK signaling pathway."^^xsd:string, + oboInOwl:id "GO:0002167"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0030877 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14600025"^^xsd:string + obo:IAO_0000115 "A cytoplasmic protein complex containing glycogen synthase kinase-3-beta (GSK-3-beta), the adenomatous polyposis coli protein (APC), and the scaffolding protein axin, among others; phosphorylates beta-catenin, targets it for degradation by the proteasome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030877"^^xsd:string, + oboInOwl:hasExactSynonym "beta-catenin degradation complex"^^xsd:string, + rdfs:label "beta-catenin destruction complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005930 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "axoneme"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The bundle of microtubules and associated proteins that forms the core of cilia and flagella in eukaryotic cells and is responsible for their movements."^^xsd:string, + oboInOwl:id "GO:0005930"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Axoneme"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0043231, + obo:GO_0044424, + obo:GO_0044422 + + +Class: obo:GO_0070062 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extracellular vesicular exosome"^^xsd:string, + oboInOwl:id "GO:0070062"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15908444"^^xsd:string, + oboInOwl:hasDbXref "PMID:17641064"^^xsd:string + obo:IAO_0000115 "A membrane-bounded vesicle that is released into the extracellular region by fusion of the limiting endosomal membrane of a multivesicular body with the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0031988, + obo:GO_0065010 + + +Class: obo:GO_0005932 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "microtubule basal body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "A short cylindrical array of microtubules and associated proteins found at the base of a eukaryotic cilium or flagellum that is similar in structure to a centriole. The basal body serves as a nucleation site for axoneme growth."^^xsd:string, + oboInOwl:id "GO:0005932"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao11978067"^^xsd:string + + EquivalentTo: + obo:GO_0005815 + and (obo:BFO_0000050 some obo:GO_0042995) + + SubClassOf: + obo:GO_0044463, + obo:GO_0005815 + + +Class: obo:GO_0030057 + + Annotations: + oboInOwl:hasExactSynonym "spot desmosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Desmosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "macula adherens"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815332181"^^xsd:string + obo:IAO_0000115 "A cell-cell junction in which: on the cytoplasmic surface of each interacting plasma membrane is a dense plaque composed of a mixture of intracellular anchor proteins; a bundle of keratin intermediate filaments is attached to the surface of each plaque; transmembrane adhesion proteins of the cadherin family bind to the plaques and interact through their extracellular domains to hold the adjacent membranes together by a Ca2+-dependent mechanism."^^xsd:string, + rdfs:label "desmosome"^^xsd:string, + oboInOwl:id "GO:0030057"^^xsd:string + + SubClassOf: + obo:GO_0005911, + obo:GO_0070161 + + +Class: obo:GO_0097060 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20410104"^^xsd:string + obo:IAO_0000115 "A specialized area of membrane on either the presynaptic or the postsynaptic side of a synapse, the junction between a nerve fiber of one neuron and another neuron or muscle fiber or glial cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097060"^^xsd:string, + rdfs:label "synaptic membrane"^^xsd:string + + SubClassOf: + obo:GO_0016020, + obo:GO_0044456 + + +Class: obo:GO_0005931 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A protein complex found in the axoneme of eukaryotic cilia and flagella. It forms interconnections between the microtubule outer doublets that surround the inner central pair of microtubules."^^xsd:string, + rdfs:label "nexin complex"^^xsd:string, + oboInOwl:id "GO:0005931"^^xsd:string + + SubClassOf: + obo:GO_0044447, + obo:GO_0043234 + + +Class: obo:GO_0030056 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.wormatlas.org/glossaries/hglossary.htm#hemiadherensjunction"^^xsd:string + oboInOwl:hasRelatedSynonym "hemi-adherens junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "hemidesmosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316208"^^xsd:string + obo:IAO_0000115 "A cell-substrate junction that forms a point of contact between the basal surface of epithelial cells and the basal lamina. Morphologically resembles desmosomes; attached to intermediate filaments."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Hemidesmosome"^^xsd:string, + oboInOwl:id "GO:0030056"^^xsd:string + + SubClassOf: + obo:GO_0030055, + obo:BFO_0000050 some obo:GO_0009925 + + +Class: obo:GO_0005934 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The end of a cellular bud distal to the site of attachment to the mother cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cellular bud tip"^^xsd:string, + oboInOwl:id "GO:0005934"^^xsd:string + + SubClassOf: + obo:GO_0030427, + obo:BFO_0000050 some obo:GO_0005933 + + +Class: obo:GO_0030055 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cell junction that forms a connection between a cell and the extracellular matrix."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell-substrate junction"^^xsd:string, + oboInOwl:hasExactSynonym "cell-matrix junction"^^xsd:string, + oboInOwl:id "GO:0030055"^^xsd:string + + SubClassOf: + obo:GO_0030054, + obo:BFO_0000050 some obo:GO_0016323 + + +Class: obo:GO_0030880 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "multisubunit RNA polymerase"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "RNA polymerase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex that possesses RNA polymerase activity; generally comprises a catalytic subunit and one or more additional subunits."^^xsd:string, + oboInOwl:id "GO:0030880"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005933 + + Annotations: + rdfs:label "cellular bud"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:id "GO:0005933"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sgd_curators"^^xsd:string + obo:IAO_0000115 "A protuberance from a cell of an organism that reproduces by budding, which will grow larger and become a separate daughter cell after nuclear division, cytokinesis, and cell wall formation (when appropriate). The daughter cell may completely separate from the mother cell, or the mother and daughter cells may remain associated."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0030054 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell junction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "http://www.vivo.colostate.edu/hbooks/cmb/cells/pmemb/junctions_a.html"^^xsd:string + obo:IAO_0000115 "A plasma membrane part that forms a specialized region of connection between two cells or between a cell and the extracellular matrix. At a cell junction, anchoring proteins extend through the plasma membrane to link cytoskeletal proteins in one cell to cytoskeletal proteins in neighboring cells or to proteins in the extracellular matrix."^^xsd:string, + oboInOwl:id "GO:0030054"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cell_junction"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0071212 + + Annotations: + rdfs:label "subsynaptic reticulum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1460464"^^xsd:string, + oboInOwl:hasDbXref "PMID:18171947"^^xsd:string, + oboInOwl:hasDbXref "PMID:19244343"^^xsd:string, + oboInOwl:hasDbXref "PMID:7946331"^^xsd:string + obo:IAO_0000115 "An elaborate tubulolamellar membrane system that underlies the postsynaptic cell membrane."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19244343"^^xsd:string + oboInOwl:hasExactSynonym "SSR"^^xsd:string, + oboInOwl:id "GO:0071212"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0061174, + obo:GO_0033267, + obo:GO_0044456, + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0031105 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "septin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15385632"^^xsd:string + obo:IAO_0000115 "Any of several heterooligomeric complexes containing multiple septins."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0031105"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0032156, + obo:GO_0044448, + obo:GO_0043234 + + +Class: obo:GO_0043160 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "acrosomal lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The volume enclosed within the acrosome membrane."^^xsd:string, + oboInOwl:id "GO:0043160"^^xsd:string + + SubClassOf: + obo:GO_0034774, + obo:GO_0043202, + obo:BFO_0000050 some obo:GO_0001669 + + +Class: obo:GO_0033016 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "rhoptry membrane"^^xsd:string, + oboInOwl:id "GO:0033016"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a rhoptry."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020008, + obo:GO_0031090 + + +Class: obo:GO_0030869 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "RENT complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12196389"^^xsd:string + obo:IAO_0000115 "A protein complex that mediates transcriptional silencing at the rDNA locus (the name derives from regulator of nucleolar silencing and telophase). In Saccharomyces the complex contains Net1p, Sir2p, Cdc14p, and at least one more subunit."^^xsd:string, + oboInOwl:id "GO:0030869"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:GO_0005677 + + +Class: obo:GO_0033012 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15090256"^^xsd:string, + oboInOwl:hasDbXref "PMID:16563225"^^xsd:string + obo:IAO_0000115 "A permanent cup-shaped structure at the cell plasma membrane in secretory cells. Following a secretory stimulus, secretory vesicles transiently dock and fuse at the base of porosomes and release intravesicular contents dictated by the turgor pressure generated from the swelling of secretory vesicles."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Porosome"^^xsd:string, + rdfs:label "porosome"^^xsd:string, + oboInOwl:id "GO:0033012"^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0033011 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17289678"^^xsd:string, + oboInOwl:hasDbXref "PMID:8025156"^^xsd:string + obo:IAO_0000115 "A condensed cytoplasmic structure that covers the nucleus of mammalian spermatozoa except for a narrow zone around the insertion of the tail. It shows two distinct regions, a subacrosomal layer and, continuing caudally beyond the acrosomic system, the postacrosomal sheath. The perinuclear theca has been considered a cytoskeletal scaffold responsible for maintaining the overall architecture of the mature sperm head; however, recent studies indicate that the bulk of its constituent proteins are not traditional cytoskeletal proteins but rather a variety of cytosolic proteins."^^xsd:string, + rdfs:label "perinuclear theca"^^xsd:string, + oboInOwl:id "GO:0033011"^^xsd:string + + SubClassOf: + obo:GO_0005856, + obo:BFO_0000050 some obo:GO_0048471, + obo:GO_0044444 + + +Class: obo:GO_0033010 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11395001"^^xsd:string, + oboInOwl:hasDbXref "PMID:14630217"^^xsd:string + obo:IAO_0000115 "A highly specialized cell-cell junction found in vertebrates, which forms between a neuron and a glial cell, and has structural similarity to Drosophila septate junctions. It flanks the node of Ranvier in myelinated nerve and electrically isolates the myelinated from unmyelinated nerve segments and physically separates the voltage-gated sodium channels at the node from the cluster of potassium channels underneath the myelin sheath."^^xsd:string, + oboInOwl:id "GO:0033010"^^xsd:string, + rdfs:label "paranodal junction"^^xsd:string + + SubClassOf: + obo:GO_0005911 + + +Class: obo:GO_0070048 + + Annotations: + rdfs:label "endobrevin-SNAP-25-syntaxin-1a complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10336434"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains endobrevin (VAMP8), SNAP-25, and syntaxin 1a (or orthologs thereof)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:854"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx1a-Snap25-Vamp8 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:854"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx1a, Snap25, Vamp8)"^^xsd:string, + oboInOwl:id "GO:0070048"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0005915 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "intermediate junction"^^xsd:string, + oboInOwl:id "GO:0005915"^^xsd:string, + oboInOwl:hasExactSynonym "belt desmosome"^^xsd:string, + rdfs:label "zonula adherens"^^xsd:string, + oboInOwl:hasExactSynonym "zonula adhaerens"^^xsd:string, + oboInOwl:hasExactSynonym "adhesion belt"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1400623473"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316208"^^xsd:string + obo:IAO_0000115 "A cell-cell adherens junction which forms a continuous belt near the apex of epithelial cells."^^xsd:string, + oboInOwl:hasExactSynonym "fascia adhaerens"^^xsd:string + + SubClassOf: + obo:GO_0005913, + obo:BFO_0000050 some obo:GO_0043296 + + +Class: obo:GO_0070047 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:853"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx4, Snap25, Vamp2)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10336434"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, and syntaxin 4 (or orthologs thereof)."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:853"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx4-Snap25-Vamp2 complex"^^xsd:string, + oboInOwl:id "GO:0070047"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0005916 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005916"^^xsd:string, + rdfs:label "fascia adherens"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Fascia_adherens"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "PMID:11732910"^^xsd:string + obo:IAO_0000115 "A cell-cell junction that contains the transmembrane protein N-cadherin, which interacts with identical molecules from neighboring cells to form a tight mechanical intercellular link; forms a large portion of the intercalated disc, the structure at which myofibrils terminate in cardiomyocytes."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0014704, + obo:GO_0005913 + + +Class: obo:GO_0005913 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell-cell adherens junction"^^xsd:string, + oboInOwl:id "GO:0005913"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string + obo:IAO_0000115 "An adherens junction which connects two cells to each other."^^xsd:string + + SubClassOf: + obo:GO_0005912, + obo:GO_0005911 + + +Class: obo:GO_0030863 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030863"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the cytoskeleton that lies just beneath the plasma membrane."^^xsd:string, + rdfs:label "cortical cytoskeleton"^^xsd:string + + SubClassOf: + obo:GO_0005856, + obo:GO_0044448 + + +Class: obo:GO_0070049 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:855"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx2, Snap25, Vamp8)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10336434"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains endobrevin (VAMP8), SNAP-25, and syntaxin 2 (or orthologs thereof)."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:855"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx2-Snap25-Vamp8 complex"^^xsd:string, + oboInOwl:id "GO:0070049"^^xsd:string, + rdfs:label "endobrevin-SNAP-25-syntaxin-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0005914 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11700298"^^xsd:string + obo:IAO_0000115 "A small junction assembled during the cellularization stage of insect embyrogenesis; spot adherens junctions later fuse to form the zonula adherens."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "punctum adherens"^^xsd:string, + oboInOwl:id "GO:0005914"^^xsd:string, + rdfs:label "spot adherens junction"^^xsd:string, + oboInOwl:hasBroadSynonym "dense plaque"^^xsd:string + + SubClassOf: + obo:GO_0005913 + + +Class: obo:GO_0030864 + + Annotations: + rdfs:label "cortical actin cytoskeleton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the actin cytoskeleton, comprising filamentous actin and associated proteins, that lies just beneath the plasma membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030864"^^xsd:string + + EquivalentTo: + obo:GO_0030863 + and (obo:BFO_0000050 some obo:GO_0015629) + + SubClassOf: + obo:GO_0044430, + obo:GO_0030863, + obo:BFO_0000050 some obo:GO_0015629 + + +Class: obo:GO_0070044 + + Annotations: + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-1a complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:998"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Snap25, Stx1a, Vamp2)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:841"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx1a, SNAP25, VAMP)"^^xsd:string, + oboInOwl:id "GO:0070044"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:841"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx1a-SNAP25-VAMP complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Snap25-Stx1a-Vamp2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10336434"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, and syntaxin 1a (or orthologs thereof)."^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0005919 + + Annotations: + oboInOwl:id "GO:0005919"^^xsd:string, + oboInOwl:hasRelatedSynonym "pleated desmosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11700298"^^xsd:string + obo:IAO_0000115 "A septate junction in which regular arrays of electron-dense septae span the intermembrane space."^^xsd:string, + rdfs:label "pleated septate junction"^^xsd:string + + SubClassOf: + obo:GO_0005918 + + +Class: obo:GO_0031500 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15936270"^^xsd:string + obo:IAO_0000115 "A high molecular weight complex characterized in S. pombe containing the cell-end anchoring protein Tea1. This complex is transported to the cell ends by microtubules and is involved in bipolar growth and the maintennce of normal cell polarity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Tea1 cell-end complex"^^xsd:string, + oboInOwl:id "GO:0031500"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000133, + obo:GO_0044448, + obo:GO_0005875 + + +Class: obo:GO_0070046 + + Annotations: + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10336434"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, and syntaxin 3 (or orthologs thereof)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070046"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:852"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx3, Snap25, Vamp2)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:852"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx3-Snap25-Vamp2 complex"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0005917 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:8314002"^^xsd:string + oboInOwl:hasRelatedSynonym "nephrocyte junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005917"^^xsd:string, + rdfs:label "nephrocyte diaphragm"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:18971929"^^xsd:string + obo:IAO_0000115 "A specialized cell-cell junction found between nephrocytes of the insect kidney, which is adapted for filtration of hemolymph. The insect nephrocyte is anatomically and functionally similarity to the glomerular podocyte of vertebrates."^^xsd:string + + SubClassOf: + obo:GO_0036056 + + +Class: obo:GO_0030867 + + Annotations: + oboInOwl:id "GO:0030867"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "rough ER membrane"^^xsd:string, + rdfs:label "rough endoplasmic reticulum membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the rough endoplasmic reticulum."^^xsd:string, + oboInOwl:hasExactSynonym "RER membrane"^^xsd:string + + SubClassOf: + obo:GO_0005789, + obo:BFO_0000050 some obo:GO_0005791 + + +Class: obo:GO_0031502 + + Annotations: + oboInOwl:hasExactSynonym "protein O-mannosyltransferase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "PMT family mannosyltransferase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031502"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15948957"^^xsd:string + obo:IAO_0000115 "A complex that possesses dolichyl-phosphate-mannose-protein mannosyltransferase activity; usually includes members of the PMT1 and PMT2 protein subfamilies."^^xsd:string, + rdfs:label "dolichyl-phosphate-mannose-protein mannosyltransferase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0031501 + + +Class: obo:GO_0070045 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10336434"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, and syntaxin 2 (or orthologs thereof)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:851"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx2-Snap25-Vamp2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:851"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx2, Snap25, Vamp2)"^^xsd:string, + oboInOwl:id "GO:0070045"^^xsd:string, + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0005918 + + Annotations: + oboInOwl:id "GO:0005918"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815332181"^^xsd:string, + oboInOwl:hasDbXref "PMID:11700298"^^xsd:string + obo:IAO_0000115 "A cell-cell junction that forms a continuous band around each cell in an epithelium; within the septate junction the membranes of adjacent cells maintain a constant distance of approximately 15 nm; found in invertebrates."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao427941916"^^xsd:string, + rdfs:label "septate junction"^^xsd:string, + oboInOwl:hasRelatedSynonym "septate desmosome"^^xsd:string + + SubClassOf: + obo:GO_0070160, + obo:BFO_0000050 some obo:GO_0043296 + + +Class: obo:GO_0031501 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A complex that posseses mannosyltransferase activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031501"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "mannosyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0030868 + + Annotations: + oboInOwl:id "GO:0030868"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the smooth endoplasmic reticulum."^^xsd:string, + oboInOwl:hasExactSynonym "SER membrane"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1596955044"^^xsd:string, + oboInOwl:hasExactSynonym "smooth ER membrane"^^xsd:string, + rdfs:label "smooth endoplasmic reticulum membrane"^^xsd:string + + SubClassOf: + obo:GO_0005789, + obo:BFO_0000050 some obo:GO_0005790 + + +Class: obo:GO_0030062 + + Annotations: + rdfs:label "mitochondrial tricarboxylic acid cycle enzyme complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030062"^^xsd:string, + oboInOwl:hasBroadSynonym "TCA cycle enzyme complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Any of the heteromeric enzymes, located in the mitochondrion, that act in the tricarboxylic acid (TCA) cycle."^^xsd:string + + EquivalentTo: + obo:GO_0045239 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0045239 + + +Class: obo:GO_0030061 + + Annotations: + oboInOwl:hasExactSynonym "mitochondrial cristae"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao333328131"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Any of the inward folds of the mitochondrial inner membrane. Their number, extent, and shape differ in mitochondria from different tissues and organisms. They appear to be devices for increasing the surface area of the mitochondrial inner membrane, where the enzymes of electron transport and oxidative phosphorylation are found. Their shape can vary with the respiratory state of the mitochondria."^^xsd:string, + oboInOwl:id "GO:0030061"^^xsd:string, + rdfs:label "mitochondrial crista"^^xsd:string, + rdfs:comment "See also the cellular component term 'mitochondrial inner membrane ; GO:0005743'."^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0005923 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1939999134"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "zonula occludens"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815332181"^^xsd:string + obo:IAO_0000115 "An occluding cell-cell junction that is composed of a branching network of sealing strands that completely encircles the apical end of each cell in an epithelial sheet; the outer leaflets of the two interacting plasma membranes are seen to be tightly apposed where sealing strands are present. Each sealing strand is composed of a long row of transmembrane adhesion proteins embedded in each of the two interacting plasma membranes."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Tight_junction"^^xsd:string, + rdfs:label "tight junction"^^xsd:string, + oboInOwl:id "GO:0005923"^^xsd:string + + SubClassOf: + obo:GO_0070160, + obo:BFO_0000050 some obo:GO_0043296 + + +Class: obo:GO_0005922 + + Annotations: + rdfs:label "connexon complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11146276"^^xsd:string + obo:IAO_0000115 "An assembly of six molecules of connexin, made in the Golgi apparatus and subsequently transported to the plasma membrane, where docking of two connexons on apposed plasma membranes across the extracellular space forms a gap junction."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao445019788"^^xsd:string, + oboInOwl:id "GO:0005922"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0005921, + obo:GO_0043234 + + +Class: obo:GO_0097072 + + Annotations: + oboInOwl:id "GO:0097072"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:12855817"^^xsd:string, + oboInOwl:hasDbXref "PMID:14556004"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_7146"^^xsd:string + obo:IAO_0000115 "An interferon regulatory factor complex that consists of a homodimer of interferon regulatory factor 3."^^xsd:string, + rdfs:label "interferon regulatory factor 3 complex"^^xsd:string, + oboInOwl:hasExactSynonym "IRF3:IRF3 complex"^^xsd:string + + SubClassOf: + obo:GO_0097071 + + +Class: obo:GO_0005921 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815332181"^^xsd:string, + oboInOwl:hasDbXref "http://www.vivo.colostate.edu/hbooks/cmb/cells/pmemb/junctions_g.html"^^xsd:string + obo:IAO_0000115 "A cell-cell junction that is composed of an array of small channels that permit small molecules to pass from one cell to another. At gap junctions, the membranes of two adjacent cells are separated by a uniform narrow gap of about 2-4 nm that is spanned by channel-forming proteins called connexins, which form hexagonal tubes called connexons."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao118541872"^^xsd:string, + rdfs:label "gap junction"^^xsd:string, + oboInOwl:hasExactSynonym "zonula communicans"^^xsd:string, + oboInOwl:hasExactSynonym "macula communicans"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Gap_junction"^^xsd:string, + oboInOwl:id "GO:0005921"^^xsd:string, + oboInOwl:hasExactSynonym "communicating junction"^^xsd:string + + SubClassOf: + obo:GO_0005911 + + +Class: obo:GO_0097071 + + Annotations: + oboInOwl:hasExactSynonym "IRF complex"^^xsd:string, + oboInOwl:id "GO:0097071"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "interferon regulatory factor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:20043992"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of two interferon regulatory proteins (IRFs); may be homodimeric or heterodimeric. The activation of a latent closed conformation of IRF in the cytoplasm is triggered by phosphorylation of Ser/Thr residues in a C-terminal region. Phosphorylation stimulates the C-terminal autoinhibitory domain to attain a highly extended conformation triggering dimerization through extensive contacts to a second subunit."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0005920 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "zonula continua"^^xsd:string, + rdfs:label "smooth septate junction"^^xsd:string, + oboInOwl:id "GO:0005920"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11700298"^^xsd:string + obo:IAO_0000115 "A septate junction that lacks the regular arrays of electron-dense septae found in pleated septate junctions."^^xsd:string + + SubClassOf: + obo:GO_0005918 + + +Class: obo:GO_0030870 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:11988766"^^xsd:string, + oboInOwl:hasDbXref "PMID:17674145"^^xsd:string + obo:IAO_0000115 "Trimeric protein complex that possesses endonuclease activity; involved in meiotic recombination, DNA repair and checkpoint signaling. In Saccharomyces cerevisiae, the complex comprises Mre11p, Rad50p, and Xrs2p; complexes identified in other species generally contain proteins orthologous to the Saccharomyces cerevisiae proteins."^^xsd:string, + rdfs:label "Mre11 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Rad50 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Rad50-Rad32-Nbs1 complex"^^xsd:string, + oboInOwl:hasExactSynonym "RMX complex"^^xsd:string, + oboInOwl:hasExactSynonym "MRX complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2767"^^xsd:string + oboInOwl:hasExactSynonym "RAD50-MRE11-NBN complex"^^xsd:string, + oboInOwl:id "GO:0030870"^^xsd:string, + oboInOwl:hasExactSynonym "MRN complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0097074 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:18068231"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_21965"^^xsd:string + obo:IAO_0000115 "An interferon regulatory factor complex that consists of a homodimer of interferon regulatory factor 7."^^xsd:string, + rdfs:label "interferon regulatory factor 7 complex"^^xsd:string, + oboInOwl:hasExactSynonym "IRF7:IRF7 complex"^^xsd:string, + oboInOwl:id "GO:0097074"^^xsd:string + + SubClassOf: + obo:GO_0097071 + + +Class: obo:GO_0097073 + + Annotations: + oboInOwl:hasExactSynonym "IRF5:IRF5 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "interferon regulatory factor 5 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:12138184"^^xsd:string, + oboInOwl:hasDbXref "PMID:16751392"^^xsd:string + obo:IAO_0000115 "An interferon regulatory factor complex that consists of a homodimer of interferon regulatory factor 5."^^xsd:string, + oboInOwl:id "GO:0097073"^^xsd:string + + SubClassOf: + obo:GO_0097071 + + +Class: obo:GO_0097076 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:16410796"^^xsd:string, + oboInOwl:hasDbXref "PMID:17496917"^^xsd:string, + oboInOwl:hasDbXref "PMID:18021073"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses protein kinase activity and activates the I-kappa B kinase complex (IKK) and mitogen-activated protein (MAP) kinases in response to TRAF6 signaling. It comprises the catalytic subunit TAK1 complexed to the regulatory subunits, termed TABs (TAK1-binding subunits)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transforming growth factor beta activated kinase 1 complex"^^xsd:string, + oboInOwl:hasExactSynonym "TAK1 kinase complex"^^xsd:string, + oboInOwl:id "GO:0097076"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0097075 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "IRF3:IRF7 complex"^^xsd:string, + oboInOwl:id "GO:0097075"^^xsd:string, + rdfs:label "interferon regulatory factor 3-interferon regulatory factor 7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:18068231"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_26957"^^xsd:string + obo:IAO_0000115 "An interferon regulatory factor complex that consists of a heterodimer of interferon regulatory factor 3 and interferon regulatory factor 7."^^xsd:string + + SubClassOf: + obo:GO_0097071 + + +Class: obo:GO_0097078 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:21576267"^^xsd:string + obo:IAO_0000115 "A protein complex involved in the 18S rRNA biogenesis. In S. cerevisiae this complex consists of Fal1p and Sgd1p and in humans this complex consists of NOM1 and eIF4AIII subunits."^^xsd:string, + oboInOwl:id "GO:0097078"^^xsd:string, + rdfs:label "FAl1-SGD1 complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0033009 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:16760254"^^xsd:string + obo:IAO_0000115 "A small, vestigial nucleus found in some plastids that derive from a eukaryotic endosymbiont. Observed in chlorarachniophytes and cryptomonads, which acquired their plastids from a green and red alga respectively."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033009"^^xsd:string, + rdfs:label "nucleomorph"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nucleomorph"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0043231 + + +Class: obo:GO_0002180 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:19075240"^^xsd:string + obo:IAO_0000115 "An nuclear membrane protein complex having arachidonate 5-lipoxygenase activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "5-lipoxygenase complex"^^xsd:string, + oboInOwl:id "GO:0002180"^^xsd:string + + SubClassOf: + obo:GO_0044453, + obo:GO_0043234 + + +Class: obo:GO_0031519 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "Polycomb Group protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9372908"^^xsd:string + obo:IAO_0000115 "A chromatin-associated multiprotein complex containing Polycomb Group proteins. In Drosophila, Polycomb group proteins are involved in the long-term maintenance of gene repression, and PcG protein complexes associate with Polycomb group response elements (PREs) in target genes to regulate higher-order chromatin structure."^^xsd:string, + oboInOwl:id "GO:0031519"^^xsd:string, + rdfs:label "PcG protein complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031518 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:13679521"^^xsd:string, + oboInOwl:hasDbXref "PMID:9407032"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex that binds to centromeric DNA and initiates kinetochore assembly. In yeast, this complex consists of four subunits, namely Ctf13p, Skp1p, Cep3p and Cbf2p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "CBF3 complex"^^xsd:string, + oboInOwl:id "GO:0031518"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0000775 + + +Class: obo:GO_0002186 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytosolic creatine kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:173175"^^xsd:string + obo:IAO_0000115 "A dimeric protein complex having creatine kinase activity."^^xsd:string, + oboInOwl:id "GO:0002186"^^xsd:string + + SubClassOf: + obo:GO_0002185, + obo:GO_0044445 + + +Class: obo:GO_0097038 + + Annotations: + rdfs:label "perinuclear endoplasmic reticulum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097038"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "The portion of endoplasmic reticulum, the intracellular network of tubules and cisternae, that occurs near the nucleus. The lumen of the perinuclear endoplasmic reticulum is contiguous with the nuclear envelope lumen (also called perinuclear space), the region between the inner and outer nuclear membranes."^^xsd:string, + oboInOwl:hasExactSynonym "perinuclear ER"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0048471, + obo:GO_0044432 + + +Class: obo:GO_0002185 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "creatine kinase complex"^^xsd:string, + oboInOwl:id "GO:0002185"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "A protein complex having creatine kinase activity."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0031513 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031513"^^xsd:string, + rdfs:label "nonmotile primary cilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "sensory cilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "nonmotile primary cilia"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:17009929"^^xsd:string, + oboInOwl:hasDbXref "PMID:20144998"^^xsd:string + obo:IAO_0000115 "A primary cilium which contains a variable array of axonemal microtubules but does not contain molecular motors. Nonmotile primary cilia are found on many different cell types and function as sensory organelles that concentrate and organize sensory signaling molecules."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "immotile primary cilium"^^xsd:string + + SubClassOf: + obo:GO_0072372 + + +Class: obo:GO_0002187 + + Annotations: + oboInOwl:id "GO:0002187"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16236486"^^xsd:string + obo:IAO_0000115 "An octomeric protein complex having creatine kinase activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial creatine kinase complex"^^xsd:string + + SubClassOf: + obo:GO_0002185, + obo:GO_0044429 + + +Class: obo:GO_0031512 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031512"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasRelatedSynonym "nodal cilium"^^xsd:string, + rdfs:label "motile primary cilium"^^xsd:string, + rdfs:comment "Note that this term should not be confused with 'motile cilium ; GO:0031514': Motile primary cilia are distinct from motile cilia (GO:0031514) that are typically present on epithelial cells in multiple copies and move in a whip-like, as opposed to rotational, manner."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:17009929"^^xsd:string, + oboInOwl:hasDbXref "PMID:20144998"^^xsd:string + obo:IAO_0000115 "A primary cilium which may contain a variable array of axonemal microtubules and also contains molecular motors. Motile primary cilia display a distinct twirling motion that directs fluid flow asymmetrically across the cellular surface to affect asymmetric body plan organization."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "motile primary cilia"^^xsd:string + + SubClassOf: + obo:GO_0072372 + + +Class: obo:GO_0031511 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:21445296"^^xsd:string + oboInOwl:hasExactSynonym "Mis6-Mal2-Sim4 centromere complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Mis6 centromere subcomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031511"^^xsd:string, + rdfs:label "Mis6-Sim4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:12719471"^^xsd:string, + oboInOwl:hasDbXref "PMID:15897182"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of the inner centromere, which is involved in the loading of the centromeric histone h3 variant CENP-A onto centromeres and in centromere specific heterochromatin formation. The complex contains about 12 proteins, of which two are known as Mis6 and Sim4 in S. pombe and CENP-I and CENP-H in human."^^xsd:string, + oboInOwl:hasExactSynonym "Sim4 complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000939, + obo:GO_0043234 + + +Class: obo:GO_0002189 + + Annotations: + oboInOwl:id "GO:0002189"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "In mammals, the complex consists of two non-identical catalytic subunits and two non-identical regulatory subunits."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9348095"^^xsd:string + oboInOwl:hasExactSynonym "PRPP synthetase complex"^^xsd:string, + rdfs:label "ribose phosphate diphosphokinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GO:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:9348095"^^xsd:string + obo:IAO_0000115 "A protein complex having ribose phosphate diphosphokinase activity."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9348095"^^xsd:string + oboInOwl:hasExactSynonym "phosphoribosylpyrophosphate synthetase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0031510 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031510"^^xsd:string, + rdfs:label "SUMO activating enzyme complex"^^xsd:string, + oboInOwl:hasExactSynonym "SUMO E1 activator enzyme complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15601841"^^xsd:string + obo:IAO_0000115 "A conserved heterodimeric complex with SUMO activating enzyme activity."^^xsd:string, + oboInOwl:hasExactSynonym "SAE"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0005902 + + Annotations: + rdfs:comment "Note that this term refers to a projection from a single cell, and should not be confused with 'microvillus' as used to refer to a multicellular structure such as that found in the placenta."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005902"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0813516194"^^xsd:string + obo:IAO_0000115 "Thin cylindrical membrane-covered projections on the surface of an animal cell containing a core bundle of actin filaments. Present in especially large numbers on the absorptive surface of intestinal cells."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Microvillus"^^xsd:string, + rdfs:label "microvillus"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0005903 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005903"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:sl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Dense covering of microvilli on the apical surface of epithelial cells in tissues such as the intestine, kidney, and choroid plexus; the microvilli aid absorption by increasing the surface area of the cell."^^xsd:string, + rdfs:label "brush border"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Brush_border"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0031515 + + Annotations: + oboInOwl:id "GO:0031515"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "tRNA (m1A) methyltransferase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10779558"^^xsd:string, + oboInOwl:hasDbXref "PMID:14739239"^^xsd:string + obo:IAO_0000115 "A protein complex involved in the catalysis of the formation of the modified nucleotide 1-methyladenosine (m1A) in tRNA. In yeast, it is a heterotetramer of two subunits, Gcd10p and Gcd14p, while in bacteria and archaea it is a homotetramer."^^xsd:string + + SubClassOf: + obo:GO_0043527 + + +Class: obo:GO_0005905 + + Annotations: + rdfs:label "coated pit"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005905"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "PMID:10559856"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284835"^^xsd:string + obo:IAO_0000115 "A part of the endomembrane system in the form of an invagination of a membrane upon which a clathrin coat forms, and that can be converted by vesicle budding into a clathrin-coated vesicle. Coated pits form on the plasma membrane, where they are involved in receptor-mediated selective transport of many proteins and other macromolecules across the cell membrane, in the trans-Golgi network, and on some endosomes."^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0012505 + + +Class: obo:GO_0031514 + + Annotations: + rdfs:label "motile cilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:17009929"^^xsd:string, + oboInOwl:hasDbXref "PMID:20144998"^^xsd:string + obo:IAO_0000115 "A cilium which has a variable arrangement of axonemal microtubules, contains molecular motors, and beats with a characteristic whip-like pattern that promotes cell motility or transport of fluids and other cells across a cell surface. Motile cilia are typically found in multiple copies on epithelial cells that line the lumenal ducts of various tissues. Motile cilia may also function as sensory organelles."^^xsd:string, + oboInOwl:id "GO:0031514"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasRelatedSynonym "motile secondary cilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "motile cilia"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term should not be confused with 'motile primary cilium ; GO:0031512': Motile cilia are distinct from motile primary cilia (GO:0031512) that are typically present during embryogenesis in a single copy per cell, affect asymmetric body plan organization, and move in a rotational manner, as opposed to a whip-like, manner."^^xsd:string + + SubClassOf: + obo:GO_0005929 + + +Class: obo:GO_0070081 + + Annotations: + oboInOwl:hasExactSynonym "clathrin sculpted monoamine constitutive secretory pathway transport vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "clathrin sculpted monoamine transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mg2"^^xsd:string + obo:IAO_0000115 "A clathrin sculpted lipid bilayer membrane-enclosed vesicle after clathrin release and containing monoamines."^^xsd:string, + oboInOwl:id "GO:0070081"^^xsd:string + + SubClassOf: + obo:GO_0030133, + obo:GO_0060198 + + +Class: obo:GO_0043189 + + Annotations: + oboInOwl:id "GO:0043189"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that catalyzes the acetylation of histones H4 and H2A."^^xsd:string, + oboInOwl:hasExactSynonym "H4/H2A HAT complex"^^xsd:string, + rdfs:label "H4/H2A histone acetyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0000123 + + +Class: obo:GO_0030079 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "light-harvesting complex, peripheral complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Bacteriochlorophyll a binding complex that is peripherally associated to the bacterial reaction center."^^xsd:string, + oboInOwl:id "GO:0030079"^^xsd:string + + SubClassOf: + obo:GO_0030077 + + +Class: obo:GO_0070082 + + Annotations: + rdfs:label "clathrin sculpted monoamine transport vesicle lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted monoamine constitutive secretory pathway transport vesicle lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mg2"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of the clathrin sculpted monoamine transport vesicle."^^xsd:string, + oboInOwl:id "GO:0070082"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070081, + obo:GO_0060205 + + +Class: obo:GO_0043188 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "The cell wall material that surrounds the septum in fungal cells."^^xsd:string, + oboInOwl:id "GO:0043188"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell septum edging"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009277 + + +Class: obo:GO_0030078 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "light-harvesting complex, core complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Light harvesting complex associated with the reaction complex of photosynthetic purple bacteria."^^xsd:string, + oboInOwl:id "GO:0030078"^^xsd:string + + SubClassOf: + obo:GO_0030077 + + +Class: obo:GO_0005912 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "http://www.vivo.colostate.edu/hbooks/cmb/cells/pmemb/junctions_a.html"^^xsd:string + obo:IAO_0000115 "A cell junction at which anchoring proteins (cadherins or integrins) extend through the plasma membrane and are attached to actin filaments."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005912"^^xsd:string, + rdfs:label "adherens junction"^^xsd:string + + SubClassOf: + obo:GO_0070161 + + +Class: obo:GO_0030077 + + Annotations: + oboInOwl:inSubset , + rdfs:label "plasma membrane light-harvesting complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A plasma membrane protein-pigment complex that may be closely or peripherally associated to photosynthetic reaction centers that participate in harvesting and transferring radiant energy to the reaction center. Examples of this complex are found in bacterial species."^^xsd:string, + oboInOwl:id "GO:0030077"^^xsd:string + + SubClassOf: + obo:GO_0030076, + obo:BFO_0000050 some obo:GO_0042716, + obo:GO_0044433 + + +Class: obo:GO_0005911 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "intercellular junction"^^xsd:string, + oboInOwl:id "GO:0005911"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "GOC:hb"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cell junction that forms a connection between two cells; excludes direct cytoplasmic junctions such as ring canals."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1922892319"^^xsd:string, + rdfs:label "cell-cell junction"^^xsd:string + + SubClassOf: + obo:GO_0030054 + + +Class: obo:GO_0030076 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Light-harvesting_complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "antenna complex"^^xsd:string, + rdfs:label "light-harvesting complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "A protein-pigment complex that may be closely or peripherally associated to photosynthetic reaction centers that participate in harvesting and transferring radiant energy to the reaction center."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030076"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0030075 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A thylakoid that is derived from and attached to, but not necessarily continuous with, the plasma membrane, and is not enclosed in a plastid. It bears the photosynthetic pigments in photosynthetic cyanobacteria."^^xsd:string, + rdfs:label "plasma membrane-derived thylakoid"^^xsd:string, + oboInOwl:id "GO:0030075"^^xsd:string + + SubClassOf: + obo:GO_0009579, + obo:GO_0043232 + + +Class: obo:GO_0031520 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasma membrane of cell tip"^^xsd:string, + oboInOwl:id "GO:0031520"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding the cell tip."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0051286 + + +Class: obo:GO_0070083 + + Annotations: + oboInOwl:hasExactSynonym "clathrin sculpted monoamine constitutive secretory pathway transport vesicle membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "clathrin sculpted monoamine transport vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mg2"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin sculpted monoamine transport vesicle."^^xsd:string, + oboInOwl:id "GO:0070083"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070081, + obo:GO_0030658, + obo:GO_0030665 + + +Class: obo:GO_0043187 + + Annotations: + oboInOwl:hasBroadSynonym "septum surface"^^xsd:string, + rdfs:label "cell septum surface"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043187"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The extracellular (rather than the intracellular) exterior of a dividing septum; this surface is usually composed of cell wall material, for example, lineal (1,3)-beta-D-glucan in S. pombe."^^xsd:string + + SubClassOf: + obo:GO_0044457 + + +Class: obo:GO_0043186 + + Annotations: + oboInOwl:hasExactSynonym "germline granule"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0018994"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043186"^^xsd:string, + oboInOwl:hasBroadSynonym "nuage"^^xsd:string, + rdfs:label "P granule"^^xsd:string, + oboInOwl:hasExactSynonym "polar granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:11262230"^^xsd:string + obo:IAO_0000115 "A small cytoplasmic, non-membranous RNA/protein complex aggregates in the primordial germ cells of many higher eukaryotes."^^xsd:string + + SubClassOf: + obo:GO_0035770, + obo:BFO_0000050 some obo:GO_0060293 + + +Class: obo:GO_0097047 + + Annotations: + oboInOwl:hasExactSynonym "TER"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DNA replication termination region"^^xsd:string, + oboInOwl:id "GO:0097047"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string, + oboInOwl:hasDbXref "PMID:20797631"^^xsd:string + obo:IAO_0000115 "A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks."^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0033017 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033017"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the sarcoplasmic reticulum."^^xsd:string, + rdfs:label "sarcoplasmic reticulum membrane"^^xsd:string + + SubClassOf: + obo:GO_0005789, + obo:BFO_0000050 some obo:GO_0016529 + + +Class: obo:GO_0033018 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033018"^^xsd:string, + rdfs:label "sarcoplasmic reticulum lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the sarcoplasmic reticulum."^^xsd:string + + SubClassOf: + obo:GO_0005788, + obo:BFO_0000050 some obo:GO_0016529 + + +Class: obo:GO_0097042 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extrinsic to fungal-type vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:21454883"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the fungal-type vacuolar membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0097042"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000329, + obo:GO_0000306 + + +Class: obo:GO_0030849 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Autosome"^^xsd:string, + rdfs:comment "Note that this term is mainly relevant in organisms that have both sex chromosomes and non-sex-determining chromosomes in an individual organism."^^xsd:string, + oboInOwl:id "GO:0030849"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any chromosome other than a sex chromosome."^^xsd:string, + rdfs:label "autosome"^^xsd:string + + SubClassOf: + obo:GO_0005694 + + +Class: obo:GO_0070066 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11839770"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains cellubrevin (VAMP3), VAMP4, endobrevin (VAMP8), and syntaxin 6 (or orthologs thereof)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:874"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Vamp3, Vamp4, Vam8, Stx6)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:874"^^xsd:string + oboInOwl:hasNarrowSynonym "Vamp3-Vamp4-Vam8-Stx6 complex"^^xsd:string, + oboInOwl:id "GO:0070066"^^xsd:string, + rdfs:label "cellubrevin-VAMP4-endobrevin-syntaxin-6 complex"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0002179 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "A homodimeric complex which transfers a palmitoyl group onto serine, forming 3-dehydro-D-sphinganine."^^xsd:string, + oboInOwl:id "GO:0002179"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "homodimeric serine palmitoyltransferase complex"^^xsd:string, + rdfs:comment "This complex occurs primarily in bacteria."^^xsd:string + + SubClassOf: + obo:GO_0002178 + + +Class: obo:GO_0031522 + + Annotations: + oboInOwl:id "GO:0031522"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term represents the protein complex involved in transport of proteins across the cytoplasmic membrane. For proteins involved in bacterial Type II secretion across the outer membrane, consider annotating to 'type II protein secretion complex ; GO:0015628'. For proteins involved in Sec-complex dependent translocation into the eukaryotic endoplasmic reticulum, consider annotating to 'endoplasmic reticulum Sec complex ; GO:0031205'."^^xsd:string, + oboInOwl:hasNarrowSynonym "Sec translocation complex"^^xsd:string, + oboInOwl:hasBroadSynonym "Sec complex"^^xsd:string, + rdfs:label "cell envelope Sec protein transport complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "plasma membrane Sec complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:15223057"^^xsd:string + obo:IAO_0000115 "A transmembrane protein complex involved in the translocation of proteins across the cytoplasmic membrane. In Gram-negative bacteria, Sec-translocated proteins are subsequently secreted via the type II, IV, or V secretion systems. Sec complex components include SecA, D, E, F, G, Y and YajC."^^xsd:string, + oboInOwl:hasNarrowSynonym "Sec secretion complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0070065 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:875"^^xsd:string + oboInOwl:hasNarrowSynonym "Vamp3-Vamp4-Stx16 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:875"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Vamp3, Vamp4, Stx16)"^^xsd:string, + oboInOwl:id "GO:0070065"^^xsd:string, + rdfs:label "cellubrevin-VAMP4-syntaxin-16 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11839770"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains cellubrevin (VAMP3), VAMP4, and syntaxin 16 (or orthologs thereof)."^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0002178 + + Annotations: + oboInOwl:id "GO:0002178"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "A protein complex with palmitoyltransferase activity."^^xsd:string, + rdfs:label "palmitoyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0031521 + + Annotations: + rdfs:label "spitzenkorper"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031521"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15701784"^^xsd:string, + oboInOwl:hasDbXref "PMID:15976451"^^xsd:string + obo:IAO_0000115 "Structure within the hyphal tip of filamentous fungi that acts as an organizing center for hyphal tip growth; may function to supply vesicles to the elongating tip and/or to organize cytoskeletal microfilaments."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0001411, + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0070068 + + Annotations: + rdfs:label "VAMP4-syntaxin-6-syntaxin-16-Vti1a complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:877"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Vamp4, Stx6, Stx16, Vti1a)"^^xsd:string, + oboInOwl:id "GO:0070068"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:877"^^xsd:string + oboInOwl:hasRelatedSynonym "Vamp4-Stx6-Stx16-Vti1a complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11839770"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains VAMP4, syntaxin 6, syntaxin 16, and Vti1a (or orthologs thereof)."^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0002177 + + Annotations: + oboInOwl:id "GO:0002177"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15018141"^^xsd:string + obo:IAO_0000115 "A conical shaped array of microtubules that completely covers the nucleus of a spermatid, thought to be involved in sperm head elongation."^^xsd:string, + rdfs:label "manchette"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430 + + +Class: obo:GO_0070067 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070067"^^xsd:string, + rdfs:label "syntaxin-6-syntaxin-16-Vti1a complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11839770"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains syntaxin 6, syntaxin 16, and Vti1a (or orthologs thereof)."^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0031523 + + Annotations: + oboInOwl:id "GO:0031523"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12490953"^^xsd:string, + oboInOwl:hasDbXref "PMID:15545624"^^xsd:string + obo:IAO_0000115 "A multisubunit complex consisting of Myb and other proteins that regulates site specific DNA replication, gene amplification and transcriptional repression."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Myeloblastosis proto-oncogene protein complex"^^xsd:string, + rdfs:label "Myb complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0031526 + + Annotations: + rdfs:label "brush border membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031526"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding the brush border."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005903, + obo:GO_0031253 + + +Class: obo:GO_0070069 + + Annotations: + rdfs:label "cytochrome complex"^^xsd:string, + oboInOwl:id "GO:0070069"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex in which at least one of the proteins is a cytochrome, i.e. a heme-containing protein involved in catalysis of redox reactions."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0031528 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031528"^^xsd:string, + rdfs:label "microvillus membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a microvillus."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005902, + obo:GO_0031253 + + +Class: obo:GO_0031527 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031527"^^xsd:string, + rdfs:label "filopodium membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a filopodium."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030175, + obo:GO_0031253 + + +Class: obo:GO_0005901 + + Annotations: + oboInOwl:hasExactSynonym "caveolae"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "caveolar membrane"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0016599"^^xsd:string, + oboInOwl:id "GO:0005901"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721662544"^^xsd:string, + oboInOwl:hasDbXref "PMID:16645198"^^xsd:string + obo:IAO_0000115 "A membrane raft that forms small pit, depression, or invagination that communicates with the outside of a cell and extends inward, indenting the cytoplasm and the cell membrane. Examples include any of the minute pits or incuppings of the cell membrane formed during pinocytosis. Such caveolae may be pinched off to form free vesicles within the cytoplasm."^^xsd:string, + rdfs:label "caveola"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Caveolae"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0045121 + + +Class: obo:GO_0005900 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:8999038"^^xsd:string + obo:IAO_0000115 "A heterodimeric receptor for the cytokine oncostatin-M (OSM). In humans the receptor complex is made up of the gene products gp130 and OSMR-beta."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "oncostatin-M receptor complex"^^xsd:string, + oboInOwl:id "GO:0005900"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0030089 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11734882"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Phycobilisome"^^xsd:string + obo:IAO_0000115 "Any of the granules, approximately 32 nm x 48 nm and consisting of highly aggregated phycobiliproteins, that are attached in arrays to the external face of a thylakoid membrane in algae of the phyla Cyanophyta and Rhodophyta, where they function as light-harvesting devices in photosynthesis. Excitation energy in the phycobilisome flows in the sequence: phycoerythrin, phycocyanin, allophycocyanin before passing to the antenna chlorophyll of photosystem II."^^xsd:string, + oboInOwl:id "GO:0030089"^^xsd:string, + rdfs:label "phycobilisome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Phycobilisome"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:BFO_0000050 some obo:GO_0042651, + obo:GO_0030076, + obo:GO_0044425 + + +Class: obo:GO_0043198 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "dendritic shaft"^^xsd:string, + oboInOwl:id "GO:0043198"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Cylindric portion of the dendrite, directly stemming from the perikaryon, and carrying the dendritic spines."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao2034472720"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030425 + + +Class: obo:GO_0030084 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8825475"^^xsd:string + obo:IAO_0000115 "A pigment protein complex that forms part of the photosystem I associated light-harvesting complex I; contains two proteins (usually about 20 kDa); has a fluorescence maximum of 730 nm."^^xsd:string, + rdfs:label "PSI associated light-harvesting complex I, LHCIb subcomplex"^^xsd:string, + oboInOwl:id "GO:0030084"^^xsd:string + + SubClassOf: + obo:GO_0009518 + + +Class: obo:GO_0043197 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "dendrite spine"^^xsd:string, + oboInOwl:id "GO:0043197"^^xsd:string, + rdfs:label "dendritic spine"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Protrusion from a dendrite. Spines are specialised subcellular compartments involved in the synaptic transmission. They are linked to the dendritic shaft by a restriction. Because of their bulb shape, they function as a biochemical and an electrical compartment. Spine remodeling is though to be involved in synaptic plasticity."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Dendritic_spine"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1799103720"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:GO_0044309, + obo:BFO_0000050 some obo:GO_0030425 + + +Class: obo:GO_0030083 + + Annotations: + rdfs:label "PSI associated light-harvesting complex I, LHCIa subcomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8825475"^^xsd:string + obo:IAO_0000115 "A pigment protein complex that forms part of the photosystem I associated light-harvesting complex I; contains two proteins (usually about 24 and 21.5 kDa); has a fluorescence maximum between 680 and 690 nm."^^xsd:string, + oboInOwl:id "GO:0030083"^^xsd:string + + SubClassOf: + obo:GO_0009518 + + +Class: obo:GO_0070074 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:18048320"^^xsd:string + obo:IAO_0000115 "A secretory organelle that forms part of the apical complex; a small, threadlike structure located is close proximity to the subpellicular microtubules. Its contents include a rhomboid protease (PfROM1 in Plasmodium falciparum) that moves from the lateral asymmetric localization to the merozoite apical pole and the posterior pole upon release of merozoites from schizonts."^^xsd:string, + rdfs:label "mononeme"^^xsd:string, + oboInOwl:id "GO:0070074"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0043231 + + +Class: obo:GO_0051233 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "spindle equator"^^xsd:string, + rdfs:label "spindle midzone"^^xsd:string, + oboInOwl:id "GO:0051233"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14528012"^^xsd:string + oboInOwl:hasExactSynonym "central spindle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string, + oboInOwl:hasDbXref "PMID:15296749"^^xsd:string + obo:IAO_0000115 "The area in the center of the spindle where the spindle microtubules from opposite poles overlap."^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0005819 + + +Class: obo:GO_0043196 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Non-terminal inflated portion of the axon, containing the specialized apparatus necessary to release neurotransmitters."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "varicosity"^^xsd:string, + oboInOwl:id "GO:0043196"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0043195 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043195"^^xsd:string, + oboInOwl:hasExactSynonym "terminal bouton"^^xsd:string, + oboInOwl:hasExactSynonym "synaptic bouton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Terminal inflated portion of the axon, containing the specialized apparatus necessary to release neurotransmitters. The axon terminus is considered to be the whole region of thickening and the terminal button is a specialized region of it."^^xsd:string, + oboInOwl:hasExactSynonym "presynaptic bouton"^^xsd:string, + oboInOwl:hasExactSynonym "bouton"^^xsd:string, + rdfs:label "terminal button"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043679, + obo:GO_0033267, + obo:GO_0044456 + + +Class: obo:GO_0030085 + + Annotations: + rdfs:label "PSII associated light-harvesting complex II, peripheral complex, LHCIIb subcomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030085"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8825475"^^xsd:string + obo:IAO_0000115 "A pigment protein complex that forms part of the photosystem II associated light-harvesting complex II; contains two proteins (usually about 28 and 27 kDa), and may contain a third; peripherally located relative to other LHC polypeptides."^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009656, + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0043194 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "initial segment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Portion of the axon proximal to the neuronal cell body, at the level of the axon hillock. The action potentials that propagate along the axon are generated at the level of this initial segment."^^xsd:string, + oboInOwl:id "GO:0043194"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao256000789"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0030080 + + Annotations: + oboInOwl:hasExactSynonym "LH1 complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030080"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "B875 antenna complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string + obo:IAO_0000115 "Protein complex that surrounds and transfers excitation energy directly to the bacterial reaction center; binds bacteriochlorophyll a and has a single absorption band between 870 and 890 nm."^^xsd:string, + oboInOwl:hasExactSynonym "light harvesting complex I"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030078, + obo:GO_0044433, + obo:GO_0043234 + + +Class: obo:GO_0097058 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:10966616"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that is composed of cardiotrophin-like cytokine factor 1 (product of the CLCF1 gene) and cytokine receptor-like factor 1 (product of the CRLF gene) and is secreted into the extracellular space. The CRLF-CLCF1 complex is a ligand for the ciliary neurotrophic factor (CNTF) receptor complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "CRLF-CLCF1 complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "CLF-CLC complex"^^xsd:string, + oboInOwl:id "GO:0097058"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0030082 + + Annotations: + oboInOwl:hasExactSynonym "LH2 complex"^^xsd:string, + oboInOwl:id "GO:0030082"^^xsd:string, + rdfs:label "B800-850 antenna complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Protein-pigment complex that absorbs light at 800 and 850 nm; is peripherally associated to the bacterial reaction center; transfers excitation energy to the B875 antenna complex."^^xsd:string, + oboInOwl:hasExactSynonym "light harvesting complex II"^^xsd:string + + SubClassOf: + obo:GO_0044433, + obo:BFO_0000050 some obo:GO_0030079, + obo:GO_0043234 + + +Class: obo:GO_0097057 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "TRAF2-GSTP1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:16636664"^^xsd:string + obo:IAO_0000115 "A protein complex comprising tumor necrosis factor (TNF) receptor-associated factor 2 (TRAF2) and glutathione S-transferase pi 1 (GSTP1). This complex is thought to disrupt the TNF signaling cascade, thus down-regulating inflammatory responses."^^xsd:string, + oboInOwl:id "GO:0097057"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0030081 + + Annotations: + oboInOwl:id "GO:0030081"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "light harvesting complex III"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Protein-pigment complex that absorbs light at 800 and 820 nm; is peripherally associated to the bacterial reaction center; transfers excitation energy to the B875 antenna complex."^^xsd:string, + oboInOwl:hasExactSynonym "LH3 complex"^^xsd:string, + rdfs:label "B800-820 antenna complex"^^xsd:string + + SubClassOf: + obo:GO_0044433, + obo:BFO_0000050 some obo:GO_0030079, + obo:GO_0043234 + + +Class: obo:GO_0043190 + + Annotations: + oboInOwl:inSubset , + rdfs:label "ATP-binding cassette (ABC) transporter complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:11421269"^^xsd:string, + oboInOwl:hasDbXref "PMID:15111107"^^xsd:string + obo:IAO_0000115 "A complex for the transport of metabolites into and out of the cell, typically comprised of four domains; two membrane-associated domains and two ATP-binding domains at the intracellular face of the membrane, that form a central pore through the plasma membrane. Each of the four core domains may be encoded as a separate polypeptide or the domains can be fused in any one of a number of ways into multidomain polypeptides. In Bacteria and Archaebacteria, ABC transporters also include substrate binding proteins to bind substrate external to the cytoplasm and deliver it to the transporter."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasNarrowSynonym "ABC-type uptake permease complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "ABC-type efflux permease complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "ATP-binding cassette (ABC) transporter complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "ABC-type efflux porter complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "mating pheromone exporter"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0043192"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0043191"^^xsd:string, + oboInOwl:id "GO:0043190"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0012510 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vesicle transporting substances between the trans-Golgi network and other parts of the cell."^^xsd:string, + oboInOwl:hasExactSynonym "TGN transport vesicle membrane"^^xsd:string, + rdfs:label "trans-Golgi network transport vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0012510"^^xsd:string, + oboInOwl:hasExactSynonym "trans-Golgi network constitutive secretory pathway transport vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0030658, + obo:GO_0030665, + obo:GO_0030660, + obo:BFO_0000050 some obo:GO_0030140 + + +Class: obo:GO_0060171 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a stereocilium."^^xsd:string, + rdfs:label "stereocilium membrane"^^xsd:string, + oboInOwl:id "GO:0060171"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0032420, + obo:GO_0044422, + obo:GO_0031528 + + +Class: obo:GO_0060170 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a cilium."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cilium membrane"^^xsd:string, + oboInOwl:id "GO:0060170"^^xsd:string + + SubClassOf: + obo:GO_0044441, + obo:GO_0031253 + + +Class: obo:GO_0012511 + + Annotations: + oboInOwl:hasExactSynonym "oil body"^^xsd:string, + oboInOwl:hasExactSynonym "oleosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "spherosome"^^xsd:string, + oboInOwl:hasExactSynonym "oilbody"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Oil_body"^^xsd:string, + rdfs:label "monolayer-surrounded lipid storage body"^^xsd:string, + oboInOwl:id "GO:0012511"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943088372"^^xsd:string + obo:IAO_0000115 "A subcellular organelle of plant cells surrounded by 'half-unit' or a monolayer membrane instead of the more usual bilayer. The storage body has a droplet of triglyceride surrounded by a monolayer of phospholipids, interacting with the triglycerides and the hydrophilic head groups facing the cytosol, and containing major protein components called oleosins."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009520"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0005811 + + +Class: obo:GO_0097015 + + Annotations: + rdfs:label "bacterial-type flagellar cytoplasm"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string + obo:IAO_0000115 "All of the contents of a bacterial-type flagellum, excluding the plasma membrane surrounding the flagellum."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "bacterial-type flagellum cytoplasm"^^xsd:string, + oboInOwl:id "GO:0097015"^^xsd:string + + SubClassOf: + obo:GO_0044461, + obo:GO_0032838 + + +Class: obo:GO_0097025 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097025"^^xsd:string, + rdfs:label "MPP7-DLG1-LIN7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:17237226"^^xsd:string + obo:IAO_0000115 "A heterotrimeric protein complex formed by the association of MMP7, DLG1 and either LIN7A or LIN7C; regulates the stability and localization of DLG1 to cell junctions."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0005912, + obo:GO_0043234 + + +Class: obo:GO_0030093 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast photosystem I"^^xsd:string, + oboInOwl:id "GO:0030093"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Photosystem located in the chloroplast that functions as a light-dependent plastocyanin-ferredoxin oxidoreductase, transferring electrons from plastocyanin to ferredoxin. An example of this is found in Arabidopsis thaliana."^^xsd:string + + EquivalentTo: + obo:GO_0009522 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009535, + obo:GO_0009522, + obo:GO_0044434 + + +Class: obo:GO_0012506 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any membrane-bounded vesicle in the cell."^^xsd:string, + rdfs:label "vesicle membrane"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1153182838"^^xsd:string, + oboInOwl:id "GO:0012506"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031988, + obo:BFO_0000050 some obo:GO_0012505, + obo:GO_0031090 + + +Class: obo:GO_0030096 + + Annotations: + oboInOwl:id "GO:0030096"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A protein complex, located in the membrane-derived thylakoid, containing the P680 reaction center. In the light, PSII functions as a water-plastoquinone oxidoreductase, transferring electrons from water to plastoquinone."^^xsd:string, + rdfs:label "plasma membrane-derived thylakoid photosystem II"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane photosystem II"^^xsd:string + + EquivalentTo: + obo:GO_0009523 + and (obo:BFO_0000050 some obo:GO_0030075) + + SubClassOf: + obo:GO_0009523, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0030075, + obo:GO_0044422, + obo:GO_0044444 + + +Class: obo:GO_0012507 + + Annotations: + oboInOwl:hasExactSynonym "endoplasmic reticulum-Golgi transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "COPII coated vesicle membrane"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030664"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ER to Golgi transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "ER to Golgi constitutive secretory pathway transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "endoplasmic reticulum to Golgi transport vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string, + oboInOwl:hasDbXref "GOC:ascb_2009"^^xsd:string, + oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vesicle transporting substances from the endoplasmic reticulum to the Golgi."^^xsd:string, + oboInOwl:id "GO:0012507"^^xsd:string, + oboInOwl:hasExactSynonym "ER-Golgi transport vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0030658, + obo:GO_0030662, + obo:BFO_0000050 some obo:GO_0030134 + + +Class: obo:GO_0012508 + + Annotations: + oboInOwl:hasExactSynonym "Golgi to endoplasmic reticulum transport vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vesicle transporting substances from the Golgi to the ER."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi to ER constitutive secretory pathway transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi-ER transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi-endoplasmic reticulum transport vesicle membrane"^^xsd:string, + rdfs:label "Golgi to ER transport vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0012508"^^xsd:string + + SubClassOf: + obo:GO_0030658, + obo:GO_0030663, + obo:BFO_0000050 some obo:GO_0030142 + + +Class: obo:GO_0030094 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A protein complex located in the plasma membrane-derived thylakoid. The photosystem functions as a light-dependent plastocyanin-ferredoxin oxidoreductase, transferring electrons from plastocyanin to ferredoxin. Examples of this complex are found in bacterial species."^^xsd:string, + oboInOwl:id "GO:0030094"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane photosystem I"^^xsd:string, + rdfs:label "plasma membrane-derived photosystem I"^^xsd:string + + EquivalentTo: + obo:GO_0009522 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0009522, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0030075, + obo:GO_0044422, + obo:GO_0044444 + + +Class: obo:GO_0012509 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inter-Golgi transport vesicle membrane"^^xsd:string, + oboInOwl:hasExactSynonym "inter-Golgi transport constitutive secretory pathway transport vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vesicle transporting substances within the Golgi."^^xsd:string, + oboInOwl:id "GO:0012509"^^xsd:string + + SubClassOf: + obo:GO_0030663, + obo:GO_0030658, + obo:BFO_0000050 some obo:GO_0030143 + + +Class: obo:GO_0030095 + + Annotations: + oboInOwl:id "GO:0030095"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast photosystem II"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "An integral chloroplast membrane complex containing the P680 reaction center. In the light, PSII functions as a water-plastoquinone oxidoreductase, transferring electrons from water to plastoquinone."^^xsd:string + + EquivalentTo: + obo:GO_0009523 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0009523, + obo:BFO_0000050 some obo:GO_0009535, + obo:GO_0044434 + + +Class: obo:GO_0035339 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:20182505"^^xsd:string + obo:IAO_0000115 "A multiprotein complex at least composed of serine palmitoyltransferases and ORM proteins (known as ORMDL proteins in mammals and other higher vertebrates) that plays a key role in sphingolipid homeostasis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SPOTS complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "serine palmitoyltransferase, Orm1/2, Tsc3 and Sac1 complex"^^xsd:string, + oboInOwl:id "GO:0035339"^^xsd:string + + SubClassOf: + obo:GO_0017059 + + +Class: obo:GO_0012505 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:label "endomembrane system"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lh"^^xsd:string + obo:IAO_0000115 "A collection of membranous structures involved in transport within the cell. The main components of the endomembrane system are endoplasmic reticulum, Golgi bodies, vesicles, cell membrane and nuclear envelope. Members of the endomembrane system pass materials through each other or though the use of vesicles."^^xsd:string, + oboInOwl:id "GO:0012505"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Endomembrane_system"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0070088 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070088"^^xsd:string, + oboInOwl:hasNarrowSynonym "PHB granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15762612"^^xsd:string + obo:IAO_0000115 "An inclusion body located in the cytoplasm that consists of polyhydroxyalkanoate (PHA) molecules and associated proteins, surrounded by a phospholipid monolayer; the proteins include PHA synthase, PHA depolymerase and 3HB-oligomer hydroxylase, phasins (PhaPs), which are thought to be the major structural proteins of the membrane surrounding the inclusion, and the regulator of phasin expression PhaR."^^xsd:string, + rdfs:label "PHA granule"^^xsd:string, + oboInOwl:hasExactSynonym "polyhydroxyalkanoate granule"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0016234, + obo:GO_0044444 + + +Class: obo:GO_0035354 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Toll-like receptor 1-Toll-like receptor 2 protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:17889651"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex containing Toll-like receptor 1 (TLR1) and Toll-like receptor 2 (TLR2)."^^xsd:string, + oboInOwl:id "GO:0035354"^^xsd:string, + oboInOwl:hasExactSynonym "TLR1-TLR2 protein complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0035355 + + Annotations: + oboInOwl:hasExactSynonym "TLR2-TLR6 protein complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Toll-like receptor 2-Toll-like receptor 6 protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:19931471"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex containing Toll-like receptor 2 (TLR2) and Toll-like receptor 6 (TLR6)."^^xsd:string, + oboInOwl:id "GO:0035355"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0002199 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:21880732"^^xsd:string + obo:IAO_0000115 "A multisubunit complex comprising the chaperonin-containing T-complex and several other components involved in mediating sperm-oocyte Interaction."^^xsd:string, + oboInOwl:id "GO:0002199"^^xsd:string, + rdfs:label "sperm protein complex"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005832, + obo:GO_0043234 + + +Class: obo:GO_0002197 + + Annotations: + oboInOwl:id "GO:0002197"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "xanthine dehydrogenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:8224915"^^xsd:string + obo:IAO_0000115 "A homodimeric protein complex having xanthine dehydrogenase activity."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0002193 + + Annotations: + oboInOwl:hasExactSynonym "MAML1-RBP-Jkappa-Notch1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2949"^^xsd:string, + oboInOwl:hasDbXref "PMID:16510869"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of the intracellular domain of Notch1 (ICN1), the DNA-binding transcription factor RBP-Jkappa, and the transcriptional coactivator Mastermind-like-1 (MAML1); the complex is involved in transcriptional activation in response to Notch-mediated signaling."^^xsd:string, + oboInOwl:id "GO:0002193"^^xsd:string, + rdfs:label "MAML1-RBP-Jkappa- ICN1 complex"^^xsd:string, + oboInOwl:hasExactSynonym "MAML1-CSL-Notch1 complex"^^xsd:string, + oboInOwl:hasExactSynonym "MAML1-CSL-ICN1"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0001114 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:txnOH"^^xsd:string + obo:IAO_0000115 "A macromolecular complex containing protein, DNA, and RNA molecules."^^xsd:string, + oboInOwl:id "GO:0001114"^^xsd:string, + rdfs:label "protein-DNA-RNA complex"^^xsd:string + + SubClassOf: + obo:GO_0032991 + + +Class: obo:GO_0070090 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The intracellular plane, located halfway between the poles of the spindle, where chromosomes align during metaphase of mitotic or meiotic nuclear division."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070090"^^xsd:string, + rdfs:label "metaphase plate"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0071601 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7758244"^^xsd:string, + oboInOwl:hasDbXref "PMID:8349728"^^xsd:string + obo:IAO_0000115 "A nuclear body that is found in the germinal vesicles of amphibian oocytes, and consist of three major parts: a remarkably spherical body about 5-10 pm in diameter, smaller spherical or nearly spherical granules on the surface, and inclusions of various sizes that strongly resemble the surface granules. The parts of the sphere organelle have distinct compositions, including splicing snRNAs and proteins."^^xsd:string, + oboInOwl:id "GO:0071601"^^xsd:string, + rdfs:label "sphere organelle"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0048475 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "A single or double lipid bilayer with any of several different proteinaceous coats that can associate with membranes. Membrane coats include those formed by clathrin plus an adaptor complex, the COPI and COPII complexes."^^xsd:string, + oboInOwl:id "GO:0048475"^^xsd:string, + rdfs:label "coated membrane"^^xsd:string + + SubClassOf: + obo:GO_0016020 + + +Class: obo:GO_0048476 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11207366"^^xsd:string, + oboInOwl:hasDbXref "PMID:12374758"^^xsd:string + obo:IAO_0000115 "A protein complex that mediates the conversion of a Holliday junction into two separate duplex DNA molecules; the complex includes a single- or multisubunit helicase that catalyzes the extension of heteroduplex DNA by branch migration and a nuclease that resolves the junction by nucleolytic cleavage."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "Mus81-Eme1 complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:11207366"^^xsd:string + oboInOwl:hasExactSynonym "resolvasome"^^xsd:string, + oboInOwl:id "GO:0048476"^^xsd:string, + rdfs:label "Holliday junction resolvase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0035363 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "histone locus body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16533947"^^xsd:string, + oboInOwl:hasDbXref "PMID:18927579"^^xsd:string, + oboInOwl:hasDbXref "PMID:19620235"^^xsd:string + oboInOwl:hasExactSynonym "HLB"^^xsd:string, + oboInOwl:id "GO:0035363"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:16533947"^^xsd:string, + oboInOwl:hasDbXref "PMID:18927579"^^xsd:string, + oboInOwl:hasDbXref "PMID:19620235"^^xsd:string + obo:IAO_0000115 "A nuclear body associated with the histone gene locus that is thought to contain all of the factors necessary for histone mRNA transcription and pre-mRNA processing. In Drosophila, U7 snRNP is located in the histone locus body rather than the distinct Cajal body."^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0035369 + + Annotations: + rdfs:comment "Despite its name, the pre-BCR is not a receptor complex, as it appears to provide a low level of signal not dependent on a ligand, but rather simply on correct assembly of the complex as a measure for correct Ig heavy chain recombination and folding. A significant proportion of pre-BCR complexes fail to reach the cell surface, and in some cases may provide their signaling function from the trans-Golgi network or lysosome."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16464608"^^xsd:string, + oboInOwl:hasDbXref "PMID:17306522"^^xsd:string + obo:IAO_0000115 "An immunoglobulin-like complex that is present in at least the plasma membrane of pre-B cells, and that is composed of two identical immunoglobulin heavy chains and two surrogate light chains, each composed of the lambda-5 and VpreB proteins, and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "pre-BCR"^^xsd:string, + rdfs:label "pre-B cell receptor complex"^^xsd:string, + oboInOwl:id "GO:0035369"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0030897 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10944212"^^xsd:string + obo:IAO_0000115 "A multimeric protein complex that associates with the vacuolar membrane and is involved in homotypic vacuole fusion and vacuole protein sorting. For example, the Saccharomyces complex contains Vps41p, Vam6p, Pep5p, Vps16p, Pep3p, and Vps33p."^^xsd:string, + rdfs:label "HOPS complex"^^xsd:string, + oboInOwl:id "GO:0030897"^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005774, + obo:GO_0043234 + + +Class: obo:GO_0030896 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "checkpoint clamp complex"^^xsd:string, + oboInOwl:hasExactSynonym "Rad9-Hus1-Rad1 (9-1-1) clamp complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12531008"^^xsd:string + obo:IAO_0000115 "Conserved heterotrimeric complex of PCNA-like proteins that is loaded onto DNA at sites of DNA damage."^^xsd:string, + oboInOwl:id "GO:0030896"^^xsd:string, + oboInOwl:hasExactSynonym "CCC"^^xsd:string, + rdfs:comment "Note that the following subunit names have been used: human RAD9/RAD1/HUS1; S. pombe Rad9/Rad1/Hus1; S. cerevisiae Ddc1p/Rad17p/Mec3p."^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794, + obo:GO_0043234 + + +Class: obo:GO_0030895 + + Annotations: + rdfs:label "apolipoprotein B mRNA editing enzyme complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10781591"^^xsd:string + obo:IAO_0000115 "Protein complex that mediates editing of the mRNA encoding apolipoprotein B; catalyzes the deamination of C to U (residue 6666 in the human mRNA). Contains a catalytic subunit, APOBEC-1, and other proteins (e.g. human ASP; rat ASP and KSRP)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "apoB mRNA editing enzyme complex"^^xsd:string, + oboInOwl:hasExactSynonym "APOBEC"^^xsd:string, + oboInOwl:id "GO:0030895"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0030894 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:309"^^xsd:string, + oboInOwl:hasDbXref "PMID:12006500"^^xsd:string + oboInOwl:hasRelatedSynonym "RC complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:309"^^xsd:string, + oboInOwl:hasDbXref "PMID:12006500"^^xsd:string + oboInOwl:hasRelatedSynonym "replication-competent complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Replisome"^^xsd:string, + rdfs:label "replisome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "A multi-component enzymatic machine at the replication fork which mediates DNA replication. Includes DNA primase, one or more DNA polymerases, DNA helicases, and other proteins."^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "CORUM:1001"^^xsd:string + oboInOwl:hasRelatedSynonym "DNA synthesome complex"^^xsd:string, + oboInOwl:id "GO:0030894"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005657, + obo:GO_0032993 + + +Class: obo:GO_0022626 + + Annotations: + oboInOwl:hasAlternativeId "GO:0005830"^^xsd:string, + rdfs:label "cytosolic ribosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030871"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009281"^^xsd:string, + oboInOwl:id "GO:0022626"^^xsd:string, + oboInOwl:hasNarrowSynonym "80S ribosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A ribosome located in the cytosol."^^xsd:string, + oboInOwl:hasNarrowSynonym "70S ribosome"^^xsd:string + + EquivalentTo: + obo:GO_0005840 + and (obo:BFO_0000050 some obo:GO_0005829) + + SubClassOf: + obo:GO_0005840, + obo:GO_0044445 + + +Class: obo:GO_0022627 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "40S ribosomal subunit"^^xsd:string, + rdfs:label "cytosolic small ribosomal subunit"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030873"^^xsd:string, + oboInOwl:id "GO:0022627"^^xsd:string, + oboInOwl:hasNarrowSynonym "prokaryotic small ribosomal subunit"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005843"^^xsd:string, + oboInOwl:hasNarrowSynonym "30S ribosomal subunit"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009283"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030499"^^xsd:string, + oboInOwl:hasNarrowSynonym "eukaryotic ribosomal SSU"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The small subunit of a ribosome located in the cytosol."^^xsd:string + + EquivalentTo: + obo:GO_0015935 + and (obo:BFO_0000050 some obo:GO_0022626) + + SubClassOf: + obo:GO_0015935, + obo:BFO_0000050 some obo:GO_0022626 + + +Class: obo:GO_0022628 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast ribosomal large subunit complex"^^xsd:string, + oboInOwl:id "GO:0022628"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast ribosomal LSU complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The large subunit of a ribosome contained within a chloroplast."^^xsd:string, + rdfs:label "chloroplast large ribosomal subunit"^^xsd:string + + EquivalentTo: + obo:GO_0015934 + and (obo:BFO_0000050 some obo:GO_0043253) + + SubClassOf: + obo:GO_0000311, + obo:GO_0044434, + obo:BFO_0000050 some obo:GO_0043253 + + +Class: obo:GO_0022629 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The small subunit of a ribosome contained within a chloroplast."^^xsd:string, + rdfs:label "chloroplast small ribosomal subunit"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast ribosomal SSU complex"^^xsd:string, + oboInOwl:id "GO:0022629"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast ribosomal small subunit complex"^^xsd:string + + EquivalentTo: + obo:GO_0015935 + and (obo:BFO_0000050 some obo:GO_0043253) + + SubClassOf: + obo:GO_0000312, + obo:GO_0044434, + obo:BFO_0000050 some obo:GO_0043253 + + +Class: obo:GO_0048471 + + Annotations: + oboInOwl:id "GO:0048471"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "Cytoplasm situated near, or occurring around, the nucleus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term should not be confused with the cellular component term 'nuclear membrane lumen ; GO:0005641', which has the synonym 'perinuclear space'."^^xsd:string, + rdfs:label "perinuclear region of cytoplasm"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0035361 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Cul8-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:id "GO:0035361"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:20139071"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul8 subfamily and a RING domain protein form the catalytic core. In S. cerevisiae, Mms1p acts as the adaptor protein and substrate specificity is conferred by any of a number of different proteins."^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0022623 + + Annotations: + rdfs:label "proteasome-activating nucleotidase complex"^^xsd:string, + oboInOwl:hasExactSynonym "PAN"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that recognizes and unfolds core proteasome substrate proteins, and translocates them to the core complex in an ATP dependent manner."^^xsd:string, + oboInOwl:id "GO:0022623"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0022624, + obo:GO_0043234 + + +Class: obo:GO_0022624 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "proteasome accessory complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A protein complex, that caps one or both ends of the proteasome core complex and regulates entry into, or exit from, the proteasome core complex."^^xsd:string, + oboInOwl:id "GO:0022624"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0000502, + obo:GO_0043234 + + +Class: obo:GO_0022625 + + Annotations: + oboInOwl:hasAlternativeId "GO:0030498"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030872"^^xsd:string, + oboInOwl:hasNarrowSynonym "prokaryotic large ribosomal subunit"^^xsd:string, + oboInOwl:hasNarrowSynonym "60S ribosomal subunit"^^xsd:string, + oboInOwl:hasNarrowSynonym "50S ribosomal subunit"^^xsd:string, + oboInOwl:hasNarrowSynonym "eukaryotic ribosomal LSU"^^xsd:string, + oboInOwl:id "GO:0022625"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005842"^^xsd:string, + rdfs:label "cytosolic large ribosomal subunit"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The large subunit of a ribosome located in the cytosol."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009282"^^xsd:string + + EquivalentTo: + obo:GO_0015934 + and (obo:BFO_0000050 some obo:GO_0022626) + + SubClassOf: + obo:GO_0015934, + obo:BFO_0000050 some obo:GO_0022626 + + +Class: obo:GO_0097002 + + Annotations: + oboInOwl:id "GO:0097002"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial inner boundary membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16054341"^^xsd:string, + oboInOwl:hasDbXref "PMID:19019989"^^xsd:string + obo:IAO_0000115 "The portion of the mitochondrial inner membrane that is not invaginated to form cristae. The inner boundary membrane lies parallel to the outer membrane."^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0060187 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Either of two different areas at opposite ends of an axis of a cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term differs from 'cell tip ; GO:0051286' in that it is applicable to a broader range of cell shapes."^^xsd:string, + oboInOwl:id "GO:0060187"^^xsd:string, + rdfs:label "cell pole"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0043913 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chromosome segregation-directing complex"^^xsd:string, + oboInOwl:id "GO:0043913"^^xsd:string, + oboInOwl:hasExactSynonym "longitudinal peptidoglycan synthesis-directing complex"^^xsd:string, + oboInOwl:hasDbXref "IMG:02994"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:15612918"^^xsd:string + obo:IAO_0000115 "A trimeric protein complex which in E. coli is composed of the subunits MreB, MreC and MreD. The complex directs longitudinal cell wall synthesis, maintaining cell morphology."^^xsd:string, + oboInOwl:hasExactSynonym "chromosome segregation directing complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "MreBCD complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0035370 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035370"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:amm"^^xsd:string, + oboInOwl:hasDbXref "PMID:16129784"^^xsd:string + obo:IAO_0000115 "A heterodimeric ubiquitin conjugating enzyme complex that catalyzes assembly of K63-linked polyubiquitin chains and is involved in NF-kappaB activation. In humans at least, the complex comprises the ubiquitin-conjugating enzyme UBC13 and ubiquitin-conjugating enzyme variant 1A (UEV1A)."^^xsd:string, + rdfs:label "UBC13-UEV1A complex"^^xsd:string + + SubClassOf: + obo:GO_0031371 + + +Class: obo:GO_0035371 + + Annotations: + oboInOwl:hasExactSynonym "microtubule plus-end"^^xsd:string, + oboInOwl:hasExactSynonym "growing microtubule plus end"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:lb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12700769"^^xsd:string, + oboInOwl:hasDbXref "PMID:16643273"^^xsd:string + obo:IAO_0000115 "The growing (plus) end of a microtubule. In vitro, microtubules polymerize more quickly at the plus end than at the minus end. In vivo, microtubule growth occurs only at the plus end, and the plus end switches between periods of growth and shortening, a behavior known as dynamic instability."^^xsd:string, + oboInOwl:id "GO:0035371"^^xsd:string, + rdfs:label "microtubule plus end"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005874, + obo:GO_0044430 + + +Class: obo:GO_0071202 + + Annotations: + rdfs:label "Kv4.3-DPP10 channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the peptidase-related protein DPP10 associated with the channel via interaction with the Kv alpha subunit 4.3."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + oboInOwl:hasExactSynonym "Kv4.3-DPPY channel complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071202"^^xsd:string, + oboInOwl:hasDbXref "CORUM:598"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0071203 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:19922875"^^xsd:string + obo:IAO_0000115 "A protein complex that localizes at the surface of endosomes, where it recruits and activates the Arp2/3 complex to induce actin polymerization. In human, the WASH complex is composed of F-actin-capping protein subunits alpha and beta, WASH1, FAM21, KIAA1033, KIAA0196 and CCDC53."^^xsd:string, + rdfs:label "WASH complex"^^xsd:string, + oboInOwl:id "GO:0071203"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0097013 + + Annotations: + rdfs:label "phagocytic vesicle lumen"^^xsd:string, + oboInOwl:id "GO:0097013"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rs"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a phagocytic vesicle."^^xsd:string + + EquivalentTo: + obo:GO_0031974 + and (obo:BFO_0000050 some obo:GO_0045335) + + SubClassOf: + obo:GO_0071682, + obo:BFO_0000050 some obo:GO_0045335 + + +Class: obo:GO_0071204 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19470752"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein that binds to specific sites in, and is required for cleavage of, the 3'-end of histone pre-mRNAs. The complex contains the U7 snRNP and additional proteins, including the stem-loop binding protein (SLBP) and the exonuclease 3'hExo/Eri-1."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "histone 3'end pre-mRNA complex"^^xsd:string, + oboInOwl:id "GO:0071204"^^xsd:string, + rdfs:label "histone pre-mRNA 3'end processing complex"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044428 + + +Class: obo:GO_0097014 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097014"^^xsd:string, + rdfs:label "microtubule-based flagellar cytoplasm"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:17895364"^^xsd:string + obo:IAO_0000115 "All of the contents of a microtubule-based flagellum, excluding the plasma membrane surrounding the flagellum."^^xsd:string, + oboInOwl:hasNarrowSynonym "microtubule-based flagellum matrix"^^xsd:string, + oboInOwl:hasNarrowSynonym "microtubule-based flagellar matrix"^^xsd:string, + oboInOwl:hasExactSynonym "microtubule-based flagellum cytoplasm"^^xsd:string + + SubClassOf: + obo:GO_0032838, + obo:GO_0044442 + + +Class: obo:GO_0071200 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12575952"^^xsd:string, + oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the peptidase-related protein DPP6 associated with the channel via interaction with the Kv alpha subunit 4.2."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + oboInOwl:hasExactSynonym "Kv4.2-DPPX channel complex"^^xsd:string, + oboInOwl:hasDbXref "CORUM:603"^^xsd:string, + oboInOwl:id "GO:0071200"^^xsd:string, + rdfs:label "Kv4.2-DPP6 channel complex"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0071201 + + Annotations: + rdfs:label "Kv4.3-DPP6 channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12575952"^^xsd:string, + oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + obo:IAO_0000115 "A voltage-gated potassium channel complex that contains the peptidase-related protein DPP6 associated with the channel via interaction with the Kv alpha subunit 4.3."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071201"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15911355"^^xsd:string + oboInOwl:hasExactSynonym "Kv4.3-DPPX channel complex"^^xsd:string, + oboInOwl:hasDbXref "CORUM:599"^^xsd:string + + SubClassOf: + obo:GO_0008076 + + +Class: obo:GO_0030891 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11865071"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses ubiquitin ligase activity; the complex is usually pentameric; for example, in mammals the subunits are pVHL, elongin B, elongin C, cullin-2 (Cul2), and Rbx1."^^xsd:string, + oboInOwl:id "GO:0030891"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "VHL complex"^^xsd:string, + rdfs:label "VCB complex"^^xsd:string, + oboInOwl:hasExactSynonym "von Hippel-Lindau tumor suppressor complex"^^xsd:string, + oboInOwl:hasExactSynonym "pVHL-elongin C-elongin B complex"^^xsd:string + + SubClassOf: + obo:GO_0000153 + + +Class: obo:GO_0030892 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12750522"^^xsd:string + obo:IAO_0000115 "A cohesin complex that mediates sister chromatid cohesion during mitosis; has a subunit composition distinct from that of the meiotic cohesin complex."^^xsd:string, + oboInOwl:id "GO:0030892"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitotic cohesin complex"^^xsd:string + + SubClassOf: + obo:GO_0008278 + + +Class: obo:GO_0030893 + + Annotations: + oboInOwl:id "GO:0030893"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12750522"^^xsd:string + obo:IAO_0000115 "A cohesin complex that mediates sister chromatid cohesion during meiosis; has a subunit composition distinct from that of the mitotic cohesin complex."^^xsd:string, + rdfs:label "meiotic cohesin complex"^^xsd:string + + SubClassOf: + obo:GO_0008278 + + +Class: obo:GO_0060198 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "A clathrin sculpted lipid bilayer membrane-enclosed vesicle after clathrin release."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060198"^^xsd:string, + rdfs:label "clathrin sculpted vesicle"^^xsd:string + + SubClassOf: + obo:GO_0030136 + + +Class: obo:GO_0060199 + + Annotations: + oboInOwl:id "GO:0060199"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin sculpted glutamate constitutive secretory pathway transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "A clathrin sculpted lipid bilayer membrane-enclosed vesicle after clathrin release and containing glutamate."^^xsd:string, + rdfs:label "clathrin sculpted glutamate transport vesicle"^^xsd:string + + SubClassOf: + obo:GO_0030133, + obo:GO_0060198 + + +Class: obo:GO_0048787 + + Annotations: + oboInOwl:hasExactSynonym "pre-synaptic active zone membrane"^^xsd:string, + oboInOwl:id "GO:0048787"^^xsd:string, + oboInOwl:hasExactSynonym "active zone pre-synaptic plasma membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "presynaptic active zone membrane"^^xsd:string, + oboInOwl:hasExactSynonym "active zone presynaptic plasma membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12812759"^^xsd:string, + oboInOwl:hasDbXref "PMID:12923177"^^xsd:string, + oboInOwl:hasDbXref "PMID:3152289"^^xsd:string + obo:IAO_0000115 "The membrane portion of the presynaptic active zone; it is the site where docking and fusion of synaptic vesicles occurs for the release of neurotransmitters."^^xsd:string, + oboInOwl:hasExactSynonym "active zone plasma membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0048786, + obo:GO_0042734 + + +Class: obo:GO_0048788 + + Annotations: + oboInOwl:id "GO:0048788"^^xsd:string, + oboInOwl:hasNarrowSynonym "CAZ"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "pre-synaptic cytoskeletal matrix assembled at active zones"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16384719"^^xsd:string + oboInOwl:hasNarrowSynonym "T-bar ribbon"^^xsd:string, + oboInOwl:hasExactSynonym "presynaptic cytomatrix assembled at active zones"^^xsd:string, + rdfs:label "presynaptic cytoskeletal matrix assembled at active zones"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20127822"^^xsd:string + oboInOwl:hasNarrowSynonym "T-bar"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19264728"^^xsd:string + oboInOwl:hasNarrowSynonym "synaptic ribbon"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16709774"^^xsd:string + oboInOwl:hasNarrowSynonym "presynaptic dense body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dh"^^xsd:string, + oboInOwl:hasDbXref "GOC:dl"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string, + oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "PMID:10944438"^^xsd:string + obo:IAO_0000115 "The specialized cytoskeletal matrix assembled at the active zones of the presynaptic nerve terminal. The cytoskeletal matrix is a proteinaceous structure involved in organizing synaptic events such as immobilisation or translocation of synaptic vesicles, and assembling active zone components. The cytomatrix protein exclusively assembled at active zones, is thought to form a molecular scaffold that organizes neurotransmitter release sites."^^xsd:string + + EquivalentTo: + obo:GO_0030863 + and (obo:BFO_0000050 some obo:GO_0048786) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0048786, + obo:GO_0044456, + obo:GO_0030863 + + +Class: obo:GO_0071089 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:3095"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-TGM2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to tissue transglutaminase."^^xsd:string, + oboInOwl:id "GO:0071089"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-tissue transglutaminase complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071088 + + Annotations: + rdfs:label "alpha5-beta1 integrin-tissue transglutaminase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta1 integrin complex bound to tissue transglutaminase."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2433"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1-TGM2 complex"^^xsd:string, + oboInOwl:id "GO:0071088"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070743 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IL23A"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "p19"^^xsd:string, + rdfs:label "interleukin-23 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-23 complex"^^xsd:string, + oboInOwl:id "GO:0070743"^^xsd:string, + rdfs:comment "Note that this heterodimeric cytokine utilizes the same beta subunit as IL-12."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IL12B"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:11114383"^^xsd:string, + oboInOwl:hasDbXref "PMID:15999093"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of an interleukin-23 alpha (p19, product of the IL23A gene) and an interleukin-12 beta (p40, product of the IL12B gene) subunit and is secreted into the extracellular space."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "p40"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0048786 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "pre-synaptic active zone"^^xsd:string, + rdfs:label "presynaptic active zone"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao792027222"^^xsd:string, + oboInOwl:id "GO:0048786"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dh"^^xsd:string, + oboInOwl:hasDbXref "GOC:dl"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string, + oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "PMID:3152289"^^xsd:string + obo:IAO_0000115 "A specialized region of the plasma membrane and cell cortex of a presynaptic neuron; encompasses a region of the plasma membrane where synaptic vesicles dock and fuse, synaptic vesicles, and a specialized cortical cytoskeletal matrix."^^xsd:string + + SubClassOf: + obo:GO_0044456 + + +Class: obo:GO_0070744 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-27 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070744"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:15999093"^^xsd:string, + oboInOwl:hasDbXref "PMID:19161428"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of an interleukin-27p28 subunit (product of the IL27 gene) and an EBI3 subunit and is secreted into the extracellular space."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IL27"^^xsd:string, + rdfs:comment "Note that this heterodimeric cytokine utilizes the same EBI3 subunit (product of EBI3, Epstein-Barr virus induced gene 3) as its beta chain as IL-35 uses for its beta chain. Also note that the product of the IL27 gene is the alpha subunit of IL-27. The functional IL-27 protein complex requires both subunits."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "EBI3"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "p28"^^xsd:string, + rdfs:label "interleukin-27 complex"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0045121 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Lipid_raft"^^xsd:string, + rdfs:label "membrane raft"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "lipid raft"^^xsd:string, + oboInOwl:hasRelatedSynonym "glycolipid-enriched membrane domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16645198"^^xsd:string + obo:IAO_0000115 "Any of the small (10-200 nm), heterogeneous, highly dynamic, sterol- and sphingolipid-enriched membrane domains that compartmentalize cellular processes. Small rafts can sometimes be stabilized to form larger platforms through protein-protein and protein-lipid interactions."^^xsd:string, + oboInOwl:id "GO:0045121"^^xsd:string, + oboInOwl:hasRelatedSynonym "GEM domain"^^xsd:string + + SubClassOf: + obo:GO_0044425 + + +Class: obo:GO_0070745 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-35 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "p35"^^xsd:string, + rdfs:comment "Note that this heterodimeric cytokine utilizes the same IL-12p35 subunit as its alpha chain as IL-12 uses and the same EBI3 subunit (product of EBI3, Epstein-Barr virus induced gene 3) as its beta chain as IL-27 uses. IL-35 requires both subunits -- there is no separate IL35 gene."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "interleukin-35 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:19161428"^^xsd:string, + oboInOwl:hasDbXref "PMID:19161429"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of an interleukin-12 alpha subunit (p35, product of the IL12A gene) and an EBI3 subunit and is secreted into the extracellular space."^^xsd:string, + oboInOwl:id "GO:0070745"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IL12A"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "EBI3"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0045120 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Pronucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The nucleus of either the ovum or the spermatozoon following fertilization. Thus, in the fertilized ovum, there are two pronuclei, one originating from the ovum, the other from the spermatozoon that brought about fertilization; they approach each other, but do not fuse until just before the first cleavage, when each pronucleus loses its membrane to release its contents."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045120"^^xsd:string, + rdfs:label "pronucleus"^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0031083 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BLOC-1 complex"^^xsd:string, + oboInOwl:id "GO:0031083"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15102850"^^xsd:string + obo:IAO_0000115 "A protein complex required for the biogenesis of specialized organelles of the endosomal-lysosomal system, such as melanosomes and platelet dense granules. Many of the protein subunits are conserved between mouse and human; the mouse complex contains the Pallidin, Muted, Cappuccino, Dysbindin, Snapin, BLOS1, BLOS2, AND BLOS3 proteins."^^xsd:string + + SubClassOf: + obo:GO_0031082 + + +Class: obo:GO_0031082 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15102850"^^xsd:string, + oboInOwl:hasDbXref "PMID:15261680"^^xsd:string + obo:IAO_0000115 "Any of several protein complexes required for the biogenesis of specialized organelles of the endosomal-lysosomal system, such as melanosomes, platelet dense granules, and other related organelles; acronym for biogenesis of lysosomal-related organelles complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BLOC complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0031082"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0031080 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031080"^^xsd:string, + oboInOwl:hasExactSynonym "Nup84 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Nup107-120 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10747086"^^xsd:string, + oboInOwl:hasDbXref "PMID:11823431"^^xsd:string, + oboInOwl:hasDbXref "PMID:15226438"^^xsd:string + obo:IAO_0000115 "A subcomplex of the nuclear pore complex (NPC) involved in mRNA export and NPC assembly. Contains conserved nucleoporins and other proteins; for example, the Saccharomyces complex contains Nup84p, Nup85p, Nup120p, Nup145p-C, Seh1p, Sec13p, and Nup133p."^^xsd:string, + rdfs:label "Nup107-160 complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005643, + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0009548 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a plasmodesma."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009548"^^xsd:string, + rdfs:label "plasmodesmatal plasma membrane"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0009506 + + +Class: obo:GO_0071090 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-fibronectin-tissue transglutaminase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to fibronectin and tissue transglutaminase."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2376"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2b-ITGB3-FN1-TGM2 complex"^^xsd:string, + oboInOwl:id "GO:0071090"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009549 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cellulose microfibril"^^xsd:string, + oboInOwl:id "GO:0009549"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943088399"^^xsd:string + obo:IAO_0000115 "A microfibril composed of cellulose arranged in orthogonal layers. Cellulose is a straight chain polysaccharide composed of B(14) linked glucose subunits. It is a major component of plant cell walls. Higher plant microfibrils are about 10nm in diameter and extremely long in relation to their width. The cellulose molecules are oriented parallel to the long axis of the microfibril in a paracrystalline array, which provides great tensile strength. The microfibrils are held in place by the wall matrix and their orientation is closely controlled by the cell."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009505 + + +Class: obo:GO_0009546 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://biology.kenyon.edu/edwards/project/greg/pd.htm"^^xsd:string + obo:IAO_0000115 "The space between the plasma membrane and the desmotubule of a plasmodesma."^^xsd:string, + rdfs:label "plasmodesmatal cytoplasmic sleeve"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009546"^^xsd:string, + oboInOwl:hasExactSynonym "plasmodesmatal cytoplasmic annulus"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0009506 + + +Class: obo:GO_0009547 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tair_curators"^^xsd:string + obo:IAO_0000115 "A ribosome contained within a plastid."^^xsd:string, + oboInOwl:id "GO:0009547"^^xsd:string, + rdfs:label "plastid ribosome"^^xsd:string + + EquivalentTo: + obo:GO_0005840 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009532, + obo:GO_0000313 + + +Class: obo:GO_0071093 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta1 integrin complex bound to fibronectin and tissue transglutaminase."^^xsd:string, + oboInOwl:id "GO:0071093"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha5-beta1 integrin-fibronectin-tissue transglutaminase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2383"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1-FN1-TGM2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009544 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009544"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:019854768"^^xsd:string + obo:IAO_0000115 "The protein complex that catalyzes the phosphorylation of ADP to ATP in chloroplasts."^^xsd:string, + rdfs:label "chloroplast ATP synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009535, + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0071094 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071094"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2770"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB4-CD9 complex"^^xsd:string, + rdfs:label "alpha6-beta4 integrin-CD9 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10711425"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta4 integrin complex bound to the cell surface protein CD9."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009545 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0140514031"^^xsd:string + obo:IAO_0000115 "A leucoplast in which oil is stored."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Elaioplast"^^xsd:string, + oboInOwl:id "GO:0009545"^^xsd:string, + rdfs:label "elaioplast"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0071091 + + Annotations: + oboInOwl:id "GO:0071091"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2894"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA1-ITGB1-TGM2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha1-beta1 integrin complex bound to tissue transglutaminase."^^xsd:string, + rdfs:label "alpha1-beta1 integrin-tissue transglutaminase complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009542 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "granum"^^xsd:string, + oboInOwl:id "GO:0009542"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:014051403"^^xsd:string + obo:IAO_0000115 "Distinct stack of lamellae seen within chloroplasts. Grana contain the pigments, electron transfer compounds, and enzymes essential to the light-dependent reactions of photosynthesis."^^xsd:string + + SubClassOf: + obo:GO_0044434 + + +Class: obo:GO_0014731 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0014731"^^xsd:string, + rdfs:label "spectrin-associated cytoskeleton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "PMID:15970557"^^xsd:string + obo:IAO_0000115 "The part of the cytoskeleton composed of spectrin, protein 4.1 and ankyrin. Spectrin-associated cytoskeleton is associated with the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0005856 + + +Class: obo:GO_0031089 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of the platelet dense granule."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "platelet dense granule lumen"^^xsd:string, + oboInOwl:id "GO:0031089"^^xsd:string + + SubClassOf: + obo:GO_0034774, + obo:BFO_0000050 some obo:GO_0042827 + + +Class: obo:GO_0071092 + + Annotations: + oboInOwl:id "GO:0071092"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2402"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA3-ITGB1-TGM2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha3-beta1 integrin complex bound to tissue transglutaminase."^^xsd:string, + rdfs:label "alpha3-beta1 integrin-tissue transglutaminase complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009543 + + Annotations: + rdfs:label "chloroplast thylakoid lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009543"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:006501037"^^xsd:string + obo:IAO_0000115 "The cavity enclosed within the chloroplast thylakoid membrane. An example of this component is found in Arabidopsis thaliana."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009534, + obo:GO_0031978, + obo:GO_0044434 + + +Class: obo:GO_0031088 + + Annotations: + rdfs:label "platelet dense granule membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the platelet dense granule."^^xsd:string, + oboInOwl:id "GO:0031088"^^xsd:string + + SubClassOf: + obo:GO_0030667, + obo:BFO_0000050 some obo:GO_0042827 + + +Class: obo:GO_0071097 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2363"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-PXN-PTK2b complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-paxillin-Pyk2 complex"^^xsd:string, + oboInOwl:id "GO:0071097"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11683411"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to paxillin and the FAK-related kinase Pyk2."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071098 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2321"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB4-FYN complex"^^xsd:string, + oboInOwl:id "GO:0071098"^^xsd:string, + rdfs:label "alpha6-beta4 integrin-Fyn complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11684709"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta4 integrin complex bound to the Src family tyrosine kinase Fyn."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009541 + + Annotations: + oboInOwl:id "GO:0009541"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "etioplast prolamellar body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0140514031"^^xsd:string + obo:IAO_0000115 "A three dimensional regular lattice found in etioplasts. It is composed of a continuous system of tubules but when exposed to light the symmetrical arrangement is rapidly lost as tubules become pinched off into two dimensional sections of lattice. These for perforated sheets of membrane that move apart, extend and increase, finally establishing the typical granal and intergranal lamellae of the mature chloroplast."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009513, + obo:GO_0044435 + + +Class: obo:GO_0071095 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071095"^^xsd:string, + rdfs:label "alpha3-beta1 integrin-thrombospondin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11358957"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha3-beta1 integrin complex bound to thrombospondin."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2401"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA3-ITGB1-THBS1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031085 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031085"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12756248"^^xsd:string + obo:IAO_0000115 "A protein complex required for the biogenesis of specialized organelles of the endosomal-lysosomal system, such as melanosomes and platelet dense granules. The human complex contains the Hps1 and Hps4 proteins."^^xsd:string, + rdfs:label "BLOC-3 complex"^^xsd:string + + SubClassOf: + obo:GO_0031082 + + +Class: obo:GO_0071096 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11577104"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to gelsolin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-gelsolin complex"^^xsd:string, + oboInOwl:id "GO:0071096"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2360"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-Gsn complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031084 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BLOC-2 complex"^^xsd:string, + oboInOwl:id "GO:0031084"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12548288"^^xsd:string, + oboInOwl:hasDbXref "PMID:14718540"^^xsd:string, + oboInOwl:hasDbXref "PMID:15031569"^^xsd:string + obo:IAO_0000115 "A protein complex required for the biogenesis of specialized organelles of the endosomal-lysosomal system, such as melanosomes and platelet dense granules. The human complex contains the Hps3, Hps5, and Hps6 proteins; the mouse complex contains ru2 and ru."^^xsd:string + + SubClassOf: + obo:GO_0031082 + + +Class: obo:GO_0071078 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2375"^^xsd:string + oboInOwl:hasNarrowSynonym "FN-TGM2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10684262"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of fibronectin bound to tissue transglutaminase, and is involved in cell adhesion."^^xsd:string, + oboInOwl:id "GO:0071078"^^xsd:string, + rdfs:label "fibronectin-tissue transglutaminase complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071079 + + Annotations: + rdfs:label "alpha2-beta1 integrin-chondroadherin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2430"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2-ITGB1-CHAD complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9281592"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha2-beta1 integrin complex bound to the cartilage matrix protein chondroadherin."^^xsd:string, + oboInOwl:id "GO:0071079"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0048770 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0048770"^^xsd:string, + rdfs:label "pigment granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "A small, subcellular membrane-bounded vesicle containing pigment and/or pigment precursor molecules. Pigment granule biogenesis is poorly understood, as pigment granules are derived from multiple sources including the endoplasmic reticulum, coated vesicles, lysosomes, and endosomes."^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0031092 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031092"^^xsd:string, + oboInOwl:hasExactSynonym "platelet alpha-granule membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8467233"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the platelet alpha granule."^^xsd:string, + rdfs:label "platelet alpha granule membrane"^^xsd:string + + SubClassOf: + obo:GO_0030667, + obo:BFO_0000050 some obo:GO_0031091 + + +Class: obo:GO_0031091 + + Annotations: + rdfs:label "platelet alpha granule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031091"^^xsd:string, + oboInOwl:hasExactSynonym "platelet alpha-granule"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Platelet_alpha-granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8467233"^^xsd:string + obo:IAO_0000115 "A secretory organelle found in blood platelets, which is unique in that it exhibits further compartmentalization and acquires its protein content via two distinct mechanisms: (1) biosynthesis predominantly at the megakaryocyte (MK) level (with some vestigial platelet synthesis) (e.g. platelet factor 4) and (2) endocytosis and pinocytosis at both the MK and circulating platelet levels (e.g. fibrinogen (Fg) and IgG)."^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0031094 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031094"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "platelet dense tubular network"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1322202"^^xsd:string + obo:IAO_0000115 "A network of membrane-bounded compartments found in blood platelets, where they regulate platelet activation by sequestering or releasing calcium. The dense tubular network exists as thin elongated membranes in resting platelets, and undergoes a major ultrastructural change, to a rounded vesicular form, upon addition of thrombin."^^xsd:string + + SubClassOf: + obo:GO_0043231 + + +Class: obo:GO_0031093 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "platelet alpha granule lumen"^^xsd:string, + oboInOwl:id "GO:0031093"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8467233"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of the platelet alpha granule."^^xsd:string, + oboInOwl:hasExactSynonym "platelet alpha-granule lumen"^^xsd:string + + SubClassOf: + obo:GO_0034774, + obo:BFO_0000050 some obo:GO_0031091 + + +Class: obo:GO_0002102 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12837608"^^xsd:string, + oboInOwl:hasDbXref "PMID:15890982"^^xsd:string + obo:IAO_0000115 "An actin-rich adhesion structure characterized by formation upon cell substrate contact and localization at the substrate-attached part of the cell, contain an F-actin-rich core surrounded by a ring structure containing proteins such as vinculin and talin, and have a diameter of 0.5 mm."^^xsd:string, + rdfs:label "podosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Podosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that podosomes can be distinguished from other F-actin-rich structures or from other matrix contacts. For example, focal adhesions and focal contacts do not display a core structure of F-actin. Unlike focal adhesions, podosome assembly does not require de novo protein synthesis. However, most of the podosome ring components are found in focal adhesions and other cell-matrix contacts. Podosomes are typically found in cells that cross tissue boundaries, recruited to the leading edge of migrating cells, and are often sites of extracellular matrix degradation."^^xsd:string, + oboInOwl:id "GO:0002102"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0043232, + obo:GO_0043234 + + +Class: obo:GO_0031090 + + Annotations: + oboInOwl:id "GO:0031090"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "organelle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an organelle."^^xsd:string + + SubClassOf: + obo:GO_0016020, + obo:BFO_0000050 some obo:GO_0043227, + obo:GO_0044422 + + +Class: obo:GO_0071080 + + Annotations: + oboInOwl:id "GO:0071080"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2398"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA3-ITGB1-BSG complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9360995"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha3-beta1 integrin complex bound to the cell surface protein basigin."^^xsd:string, + rdfs:label "alpha3-beta1 integrin-basigin complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071081 + + Annotations: + rdfs:label "alpha3-beta1 integrin-CD63 complex"^^xsd:string, + oboInOwl:id "GO:0071081"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7629079"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha3-beta1 integrin complex bound to the tetraspanin CD63."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2399"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA3-ITGB1-CD63 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071082 + + Annotations: + oboInOwl:id "GO:0071082"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9565552"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the extracellular matrix protein tenascin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2443"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-TNC complex"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-tenascin complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071083 + + Annotations: + rdfs:label "alphaV-beta3 integrin-CD47-FCER2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10037797"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to the cell surface protein CD47 and the low-affinity immunoglobulin epsilon Fc receptor (FCER2)."^^xsd:string, + oboInOwl:id "GO:0071083"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2355"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-CD447-FCER2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071084 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10397731"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha2-beta1 integrin complex bound to the cell surface protein CD47."^^xsd:string, + oboInOwl:id "GO:0071084"^^xsd:string, + rdfs:label "alpha2-beta1 integrin-CD47 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2429"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2-ITGB1-CD47 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031096 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:1322202"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the platelet dense tubular network."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "platelet dense tubular network lumen"^^xsd:string, + oboInOwl:id "GO:0031096"^^xsd:string + + SubClassOf: + obo:GO_0070013, + obo:BFO_0000050 some obo:GO_0031094 + + +Class: obo:GO_0071085 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-CD9 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2370"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2b-ITGB3-CD9 complex"^^xsd:string, + oboInOwl:id "GO:0071085"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10429193"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to the cell surface protein CD9."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009550 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009550"^^xsd:string, + oboInOwl:hasExactSynonym "simple plasmodesma"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15012255"^^xsd:string + obo:IAO_0000115 "A plasmodesma that consists of a simple, single channel; found predominantly in young tissue and formed as a function of cell plate formation during cytokinesis."^^xsd:string, + rdfs:label "primary plasmodesma"^^xsd:string + + SubClassOf: + obo:GO_0009506 + + +Class: obo:GO_0031095 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:1322202"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the platelet dense tubular network."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031095"^^xsd:string, + rdfs:label "platelet dense tubular network membrane"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0031094 + + +Class: obo:GO_0071086 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071086"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2872"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2b-ITGB3-CD9-GP1b-CD47 complex"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-CD9-CD47-platelet glycoprotein Ib complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10429193"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to the cell surface proteins CD9 and CD47, and the heterodimeric platelet glycoprotein Ib."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009551 + + Annotations: + oboInOwl:id "GO:0009551"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15012255"^^xsd:string + obo:IAO_0000115 "A plasmodesma with a branched structure, often with many channels leading into a larger central cavity; found in older tissues and usually derived from preexisting primary plasmodesmata."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "secondary plasmodesma"^^xsd:string + + SubClassOf: + obo:GO_0009506 + + +Class: obo:GO_0071087 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10464311"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha11-beta1 integrin complex bound to a type I collagen."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha11-beta1 integrin-collagen type I complex"^^xsd:string, + oboInOwl:id "GO:0071087"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3059"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA11-ITGB1-COL1A1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031097 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "medial cortex"^^xsd:string, + oboInOwl:id "GO:0031097"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:15572668"^^xsd:string, + oboInOwl:hasDbXref "PMID:19474789"^^xsd:string + obo:IAO_0000115 "A medial cortical band overlaying the nucleus which acts as a landmark for contractile ring positioning and plays a role in cell cycle regulation."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "medial ring"^^xsd:string + + SubClassOf: + obo:GO_0032155, + obo:GO_0044448 + + +Class: obo:GO_0070720 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070720"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8943348"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the receptor adaptor proteins Grb2 and SHP-2, and is involved signaling via the PDGFR signaling pathway."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3186"^^xsd:string + oboInOwl:hasNarrowSynonym "GRB2-SHP-2 complex, PDGF stimulated"^^xsd:string, + rdfs:label "Grb2-SHP-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070721 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8943351"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that consists of a Stat1-Stat2 heterodimer and the IRF9 protein."^^xsd:string, + rdfs:label "ISGF3 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:60"^^xsd:string + oboInOwl:hasExactSynonym "interferon-stimulated gene factor 3 transcription complex"^^xsd:string, + oboInOwl:id "GO:0070721"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071069 + + Annotations: + rdfs:label "alpha4-beta1 integrin-thrombospondin-1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11980922"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to thrombospondin-1."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2426"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-THBS1 complex"^^xsd:string, + oboInOwl:id "GO:0071069"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071068 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10944520"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM12."^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM12 complex"^^xsd:string, + oboInOwl:id "GO:0071068"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2447"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM12 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071067 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2364"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-ADAM23 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphav-beta3 integrin-ADAM23 complex"^^xsd:string, + oboInOwl:id "GO:0071067"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10749942"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to the transmembrane metallopeptidase ADAM23."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070724 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "bone morphogenetic protein receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070724"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mh"^^xsd:string, + oboInOwl:hasDbXref "PMID:19377468"^^xsd:string + obo:IAO_0000115 "A protein complex that acts as a receptor for bone morphogenetic proteins (BMPs); a homo- or heterodimer of type I and/or type II BMP receptor subunits."^^xsd:string, + rdfs:label "BMP receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0070725 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070725"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:19433453"^^xsd:string + obo:IAO_0000115 "A cytoplasmic part that appears as an electron-dense sphere of around 1.5 micron diameter containing Yb protein found in somatic cells of ovary and testis. There are one to two Yb bodies per cell."^^xsd:string, + rdfs:label "Yb body"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0070722 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3130"^^xsd:string, + oboInOwl:hasDbXref "PMID:8955148"^^xsd:string + oboInOwl:hasExactSynonym "Grg3b-Grg5 complex"^^xsd:string, + oboInOwl:id "GO:0070722"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8955148"^^xsd:string + obo:IAO_0000115 "A transcriptional repressor complex that consists of a heterodimer of the proteins Tle3 (also known as Grg3b) and Aes (Grg5), which are homologs of the Drosophila groucho gene product."^^xsd:string, + rdfs:label "Tle3-Aes complex"^^xsd:string + + SubClassOf: + obo:GO_0017053 + + +Class: obo:GO_0042603 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042603"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Capsule_(microbiology)"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0042604"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030113"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A protective structure surrounding some fungi and bacteria, attached externally to the cell wall and composed primarily of polysaccharides. Capsules are highly organized structures that adhere strongly to cells and can not be easily removed. Capsules play important roles in pathogenicity, preventing phagocytosis by other cells, adherance, and resistance to dessication."^^xsd:string, + rdfs:label "capsule"^^xsd:string + + SubClassOf: + obo:GO_0030112 + + +Class: obo:GO_0048269 + + Annotations: + oboInOwl:id "GO:0048269"^^xsd:string, + oboInOwl:hasExactSynonym "MAT complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.5.1.6"^^xsd:string, + oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "PMID:10644686"^^xsd:string + obo:IAO_0000115 "A multimeric enzyme complex composed of variable numbers of catalytic alpha subunits, and noncatalytic beta subunits. The beta subunits are believed to have a regulatory function. The enzyme complex catalyzes the synthesis of S-adenosylmethionine (AdoMet), which is the major methyl group donor, participating in the methylation of proteins, DNA, RNA, phospholipids, and other small molecules."^^xsd:string, + rdfs:label "methionine adenosyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0009568 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "amyloplast starch grain"^^xsd:string, + oboInOwl:hasExactSynonym "amyloplast starch granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11217978"^^xsd:string + obo:IAO_0000115 "Plant storage body for amylose and amylopectin, 1-100um in diameter, and located in amyloplasts. Also contains small amounts of enzymes, amino acids, lipids and nucleic acids. The shape of the grain varies widely amongst species, but is often spherical or disk-shaped."^^xsd:string, + oboInOwl:id "GO:0009568"^^xsd:string + + EquivalentTo: + obo:GO_0043036 + and (obo:BFO_0000050 some obo:GO_0009501) + + SubClassOf: + obo:GO_0043036, + obo:BFO_0000050 some obo:GO_0009501 + + +Class: obo:GO_0009569 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Plant storage body for amylose and amylopectin, 1-100um in diameter, and located in chloroplasts. Also contains small amounts of enzymes, amino acids, lipids and nucleic acids. The shape of the grain varies widely amongst species, but is often spherical or disk-shaped."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast starch grain"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast starch granule"^^xsd:string, + oboInOwl:id "GO:0009569"^^xsd:string + + EquivalentTo: + obo:GO_0043036 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0043036, + obo:GO_0044434 + + +Class: obo:GO_0042601 + + Annotations: + rdfs:label "endospore-forming forespore"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042601"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0697286029"^^xsd:string + obo:IAO_0000115 "Portion of the cell formed during the process of bacterial sporulation that will ultimately become the core of the endospore. An endospore is a type of dormant cell that is resistant to adverse conditions."^^xsd:string + + SubClassOf: + obo:GO_0042763 + + +Class: obo:GO_0042600 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721662544"^^xsd:string + obo:IAO_0000115 "A protective, noncellular membrane that surrounds the eggs of various animals including insects and fish."^^xsd:string, + oboInOwl:id "GO:0042600"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term does not refer to the extraembryonic membrane surrounding the embryo of amniote vertebrates as this is an anatomical structure and is therefore not covered by GO."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "chorion"^^xsd:string + + SubClassOf: + obo:GO_0030312 + + +Class: obo:GO_0071075 + + Annotations: + rdfs:label "CUGBP1-eIF2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16931514"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the eukaryotic translation initiation factor 2 complex (EIF2), CUG binding protein 1, and several endoplasmic reticulum proteins; the complex is involved in the regulation of translation."^^xsd:string, + oboInOwl:id "GO:0071075"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0071070 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11980922"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to thrombospondin-2."^^xsd:string, + oboInOwl:id "GO:0071070"^^xsd:string, + rdfs:label "alpha4-beta1 integrin-thrombospondin-2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2428"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-THBS2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071059 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2411"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB1-CD151 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071059"^^xsd:string, + rdfs:label "alpha6-beta1 integrin-CD151 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11884516"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta1 integrin complex bound to the tetraspanin CD151."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070732 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "spindle envelope"^^xsd:string, + oboInOwl:id "GO:0070732"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:19417004"^^xsd:string, + oboInOwl:hasDbXref "PMID:6428889"^^xsd:string + obo:IAO_0000115 "An organelle envelope that surrounds the chromosomes and the central part of the spindle apparatus during mitosis and meiosis; observed in many invertebrates. The spindle envelope consists of membrane layers, called parafusorial membranes, derived from endoplasmic reticulum membrane; in male meiosis it forms during prometaphase and persists until early in the ensuing interphase."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0031967 + + +Class: obo:GO_0071056 + + Annotations: + oboInOwl:id "GO:0071056"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2445"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM15 complex"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM15 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11882657"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM15."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071055 + + Annotations: + oboInOwl:id "GO:0071055"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2440"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM9 complex"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM9 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11882657"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM9."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071058 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2400"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA3-ITGB1-CD151 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10811835"^^xsd:string, + oboInOwl:hasDbXref "PMID:11884516"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha3-beta1 integrin complex bound to the tetraspanin CD151."^^xsd:string, + oboInOwl:id "GO:0071058"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha3-beta1 integrin-CD151 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009570 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of a chloroplast but excluding the thylakoid space. It contains DNA, ribosomes and some temporary products of photosynthesis."^^xsd:string, + oboInOwl:id "GO:0009570"^^xsd:string, + rdfs:label "chloroplast stroma"^^xsd:string + + SubClassOf: + obo:GO_0009532, + obo:GO_0044434 + + +Class: obo:GO_0071057 + + Annotations: + oboInOwl:id "GO:0071057"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2359"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-ADAM15 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10944520"^^xsd:string, + oboInOwl:hasDbXref "PMID:11882657"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to the transmembrane metallopeptidase ADAM15."^^xsd:string, + rdfs:label "alphav-beta3 integrin-ADAM15 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0045111 + + Annotations: + rdfs:label "intermediate filament cytoskeleton"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "Cytoskeletal structure made from intermediate filaments, typically organized in the cytosol as an extended system that stretches from the nuclear envelope to the plasma membrane. Some intermediate filaments run parallel to the cell surface, while others traverse the cytosol; together they form an internal framework that helps support the shape and resilience of the cell."^^xsd:string, + oboInOwl:id "GO:0045111"^^xsd:string + + SubClassOf: + obo:GO_0005856 + + +Class: obo:GO_0009579 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Thylakoid"^^xsd:string, + rdfs:comment "A thylakoid is not considered an organelle, but some thylakoids are part of organelles."^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A membranous cellular structure that bears the photosynthetic pigments in plants, algae, and cyanobacteria. In cyanobacteria thylakoids are of various shapes and are attached to, or continuous with, the plasma membrane. In eukaryotes they are flattened, membrane-bounded disk-like structures located in the chloroplasts; in the chloroplasts of higher plants the thylakoids form dense stacks called grana. Isolated thylakoid preparations can carry out photosynthetic electron transport and the associated phosphorylation."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasRelatedSynonym "photosynthetic membrane"^^xsd:string, + oboInOwl:id "GO:0009579"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "thylakoid"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0042613 + + Annotations: + oboInOwl:id "GO:0042613"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MHC class II protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0120781859"^^xsd:string, + oboInOwl:hasDbXref "PMID:15928678"^^xsd:string + obo:IAO_0000115 "A transmembrane protein complex composed of an MHC class II alpha and MHC class II beta chain, and with or without a bound peptide or polysaccharide antigen."^^xsd:string + + SubClassOf: + obo:GO_0042611 + + +Class: obo:GO_0042612 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0120781859"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A transmembrane protein complex composed of a MHC class I alpha chain and an invariant beta2-microglobin chain, and with or without a bound peptide antigen. Class I here refers to classical class I molecules."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MHC class I protein complex"^^xsd:string, + oboInOwl:id "GO:0042612"^^xsd:string, + rdfs:comment "See also the cellular component term 'MHC class I peptide loading complex ; GO:0042824'."^^xsd:string + + SubClassOf: + obo:GO_0042611 + + +Class: obo:GO_0042611 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042611"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:15928678"^^xsd:string, + oboInOwl:hasDbXref "PMID:16153240"^^xsd:string + obo:IAO_0000115 "A transmembrane protein complex composed of an MHC alpha chain and, in most cases, either an MHC class II beta chain or an invariant beta2-microglobin chain, and with or without a bound peptide, lipid, or polysaccharide antigen."^^xsd:string, + rdfs:label "MHC protein complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071062 + + Annotations: + oboInOwl:id "GO:0071062"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10835423"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to vitronectin."^^xsd:string, + rdfs:label "alphav-beta3 integrin-vitronectin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2826"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-VTN complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009571 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009571"^^xsd:string, + rdfs:label "proplastid stroma"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of a proplastid."^^xsd:string + + SubClassOf: + obo:GO_0009532, + obo:BFO_0000050 some obo:GO_0009537 + + +Class: obo:GO_0031074 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex that acts to move proteins or RNAs into or out of the nucleus through nuclear pores."^^xsd:string, + rdfs:label "nucleocytoplasmic shuttling complex"^^xsd:string, + oboInOwl:id "GO:0031074"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0071064 + + Annotations: + oboInOwl:id "GO:0071064"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10837471"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaE-beta7 integrin complex bound to E-cadherin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaE-beta7 integrin-E-cadherin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1834"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAE-ITGB7-CDH1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009573 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex, located in the chloroplast, containing either both large and small subunits or just small subunits which carries out the activity of producing 3-phosphoglycerate from carbon dioxide and ribulose-1,5-bisphosphate. An example of this component is found in Arabidopsis thaliana."^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast RubisCO complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009573"^^xsd:string, + rdfs:label "chloroplast ribulose bisphosphate carboxylase complex"^^xsd:string + + EquivalentTo: + obo:GO_0048492 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009570, + obo:GO_0048492, + obo:GO_0044434 + + +Class: obo:GO_0071065 + + Annotations: + oboInOwl:id "GO:0071065"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2442"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-VCAM1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-vascular cell adhesion molecule-1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10209034"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to vascular cell adhesion molecule-1."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009574 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009574"^^xsd:string, + rdfs:label "preprophase band"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Preprophase_band"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A dense band of microtubules, 1-3 pm wide, that appears just beneath the cell membrane before the start of cell division in the cells of higher plants. It precedes the onset of prophase and then disappears as mitosis begins, yet it somehow determines the plane of orientation of the new cell plate forming in late telophase and marks the zone of the parental cell wall where fusion with the growing cell plate ultimately occurs."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430, + obo:GO_0044444 + + +Class: obo:GO_0009575 + + Annotations: + rdfs:label "chromoplast stroma"^^xsd:string, + oboInOwl:id "GO:0009575"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of a chromoplast but excluding the photosynthetic material."^^xsd:string + + SubClassOf: + obo:GO_0009532, + obo:BFO_0000050 some obo:GO_0009509 + + +Class: obo:GO_0009576 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of a leucoplast."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009576"^^xsd:string, + rdfs:label "leucoplast stroma"^^xsd:string + + SubClassOf: + obo:GO_0009532, + obo:BFO_0000050 some obo:GO_0009516 + + +Class: obo:GO_0071060 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11884516"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha7-beta1 integrin complex bound to the tetraspanin CD151."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2395"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA7-ITGB1-CD151 complex"^^xsd:string, + oboInOwl:id "GO:0071060"^^xsd:string, + rdfs:label "alpha7-beta1 integrin-CD151 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009577 + + Annotations: + rdfs:label "elaioplast stroma"^^xsd:string, + oboInOwl:id "GO:0009577"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of an elaioplast."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0009532, + obo:BFO_0000050 some obo:GO_0009545 + + +Class: obo:GO_0071061 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10811835"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta4 integrin complex bound to the tetraspanin CD151."^^xsd:string, + oboInOwl:id "GO:0071061"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2320"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB4-CD151 complex"^^xsd:string, + rdfs:label "alpha6-beta4 integrin-CD151 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009578 + + Annotations: + oboInOwl:id "GO:0009578"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of an etioplast but excluding the prothylakoid space. It contains the etioplast DNA."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "etioplast stroma"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009513, + obo:GO_0009532 + + +Class: obo:GO_0070031 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:7592829"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta5 integrin complex bound to osteopontin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphav-beta5 integrin-osteopontin complex"^^xsd:string, + oboInOwl:id "GO:0070031"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2347"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB5-SPP1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070030 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2885"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB1-SPP1 complex"^^xsd:string, + rdfs:label "alphav-beta1 integrin-osteopontin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070030"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7592829"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta1 integrin complex bound to osteopontin."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070439 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Mad-Max-mSin3A complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7889570"^^xsd:string + obo:IAO_0000115 "A transcriptional repressor complex that contains a heterodimer of the bHLH-ZIP proteins Mad and Max, plus mSin3A, a homolog of the yeast Sin3p."^^xsd:string, + oboInOwl:id "GO:0070439"^^xsd:string + + SubClassOf: + obo:GO_0017053 + + +Class: obo:GO_0070438 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mTOR-FKBP12-rapamycin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2987"^^xsd:string + oboInOwl:hasNarrowSynonym "Fkbp1a-Frap1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sl"^^xsd:string, + oboInOwl:hasDbXref "PMID:20005306"^^xsd:string, + oboInOwl:hasDbXref "PMID:7822316"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the mTOR (mammalian target of rapamycin) serine/threonine kinase, the peptidyl-prolyl cis-trans isomerase FKBP12 (FKBP1A) and rapamycin (sirolimus)."^^xsd:string, + oboInOwl:id "GO:0070438"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0070437 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7798267"^^xsd:string + obo:IAO_0000115 "A protein complex that contains Grb2 and the adaptor protein Shc, and is involved in linking epidermal growth factor receptor (EGFR) activation to the p21-Ras pathway."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2888"^^xsd:string + oboInOwl:hasNarrowSynonym "Grb2-Shc complex, EGF stimulated"^^xsd:string, + rdfs:label "Grb2-Shc complex"^^xsd:string, + oboInOwl:id "GO:0070437"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070436 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2889"^^xsd:string + oboInOwl:hasNarrowSynonym "Grb2-Egfr complex, EGF stimulated"^^xsd:string, + rdfs:label "Grb2-EGFR complex"^^xsd:string, + oboInOwl:id "GO:0070436"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7798267"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the epidermal growth factor receptor (EGFR) and Grb2, and is involved in linking EGFR activation to the p21-Ras pathway."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070435 + + Annotations: + oboInOwl:id "GO:0070435"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7798267"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the epidermal growth factor receptor (EGFR) and the adaptor protein Shc, and is involved in linking EGFR activation to the p21-Ras pathway."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2887"^^xsd:string + oboInOwl:hasNarrowSynonym "Shc-Egfr complex, EGF stimulated"^^xsd:string, + rdfs:label "Shc-EGFR complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031039 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "macronucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ns"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle of ciliated protozoan cells that contains polyploid copies of a portion of the cell's complete genome. Transcription of genes occurs in macronuclei. Some ciliate species may contain multiple macronuclei per cell."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Macronucleus"^^xsd:string, + oboInOwl:id "GO:0031039"^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0009501 + + Annotations: + rdfs:label "amyloplast"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Amyloplast"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0140514031"^^xsd:string + obo:IAO_0000115 "A plastid whose main function is to synthesize and store starch."^^xsd:string, + oboInOwl:id "GO:0009501"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0042629 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12360215"^^xsd:string, + oboInOwl:hasDbXref "http://www.ijp-online.com/archives/1969/001/02/r0000-0000tc.htm"^^xsd:string + obo:IAO_0000115 "Coarse, bluish-black staining cytoplasmic granules, bounded by a plasma membrane and found in mast cells and basophils. Contents include histamine, heparin, chondroitin sulfates, chymase and tryptase."^^xsd:string, + rdfs:label "mast cell granule"^^xsd:string, + oboInOwl:id "GO:0042629"^^xsd:string + + SubClassOf: + obo:GO_0005764 + + +Class: obo:GO_0031045 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031045"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string + oboInOwl:hasExactSynonym "dense core vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14690495"^^xsd:string + obo:IAO_0000115 "Electron-dense organelle with a granular internal matrix; contains proteins destined to be secreted."^^xsd:string, + rdfs:label "dense core granule"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0071054 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2965"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM3 complex"^^xsd:string, + oboInOwl:id "GO:0071054"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11882657"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM3."^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071053 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11882657"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM2."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2441"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM2 complex"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM2 complex"^^xsd:string, + oboInOwl:id "GO:0071053"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071052 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11882657"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to the transmembrane metallopeptidase ADAM1."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2964"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-ADAM1 complex"^^xsd:string, + oboInOwl:id "GO:0071052"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-ADAM1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070029 + + Annotations: + rdfs:label "alphav-beta3 integrin-osteopontin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2358"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-SPP1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7532190"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to osteopontin."^^xsd:string, + oboInOwl:id "GO:0070029"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031040 + + Annotations: + rdfs:label "micronucleus"^^xsd:string, + oboInOwl:id "GO:0031040"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Micronucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ns"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle of ciliated protozoan cells that contains a diploid copy of the cell's complete genome. Sections of contiguous sequence in the macronucleus are often interrupted by internal eliminated sequences (IES), and may be permuted, in micronuclei. Genic transcription is not found in micronuclei. Some ciliate species may contain multiple micronuclei per cell."^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0009509 + + Annotations: + oboInOwl:id "GO:0009509"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Chromoplast"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "A plastid containing pigments other than chlorophyll, usually yellow and orange carotenoid pigments."^^xsd:string, + rdfs:label "chromoplast"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0002137 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear cluster"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9413993"^^xsd:string + obo:IAO_0000115 "Discrete hetero-chromatin-containing foci in interphase nuclei, which comprise clusters of centromeric DNA (as defined by gamma-satellite sequences and the abundance of heterochromatin protein 1 (HP-1)."^^xsd:string, + oboInOwl:id "GO:0002137"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0031618 + + +Class: obo:GO_0009508 + + Annotations: + oboInOwl:id "GO:0009508"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "A circular DNA molecule containing plastid encoded genes."^^xsd:string, + rdfs:label "plastid chromosome"^^xsd:string + + EquivalentTo: + obo:GO_0005694 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0000229, + obo:BFO_0000050 some obo:GO_0042646 + + +Class: obo:GO_0042622 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042622"^^xsd:string, + rdfs:label "photoreceptor outer segment membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The membrane surrounding the outer segment of a vertebrate photoreceptor."^^xsd:string + + SubClassOf: + obo:GO_0016020, + obo:BFO_0000050 some obo:GO_0001750, + obo:GO_0044441 + + +Class: obo:GO_0009507 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "A chlorophyll-containing plastid with thylakoids organized into grana and frets, or stroma thylakoids, and embedded in a stroma."^^xsd:string, + oboInOwl:id "GO:0009507"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Chloroplast"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0002139 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "stereocilia coupling link"^^xsd:string, + oboInOwl:id "GO:0002139"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16775142"^^xsd:string + obo:IAO_0000115 "A structure involved in coupling stereocilia to one another in sensory hair cells There are four morphologically distinct types: tip links, horizontal top connectors, shaft connectors and ankle links. Tip links and horizontal top connectors are the only inter-stereocilia links associated with mature cochlea, whereas ankle links appear during development of the auditory hair bundle."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0009506 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Plasmodesma"^^xsd:string, + oboInOwl:id "GO:0009506"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasmodesma"^^xsd:string, + oboInOwl:hasExactSynonym "plasmodesmata"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A fine cytoplasmic channel, found in all higher plants, that connects the cytoplasm of one cell to that of an adjacent cell."^^xsd:string + + SubClassOf: + obo:GO_0005911, + obo:BFO_0000050 some obo:GO_0055044 + + +Class: obo:GO_0070023 + + Annotations: + oboInOwl:hasExactSynonym "IL12-IL12 receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2020"^^xsd:string + oboInOwl:hasNarrowSynonym "IL12B-IL12RB1-IL12RB2 complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0070023"^^xsd:string, + rdfs:label "interleukin-12-interleukin-12 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11900991"^^xsd:string + obo:IAO_0000115 "A protein complex that is formed by the association of a heterodimeric interleukin-12 receptor complex with an interleukin-12 heterodimer."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009505 + + Annotations: + rdfs:label "plant-type cell wall"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009505"^^xsd:string, + oboInOwl:hasExactSynonym "cellulose and pectin-containing cell wall"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "A more or less rigid stucture lying outside the cell membrane of a cell and composed of cellulose and pectin and other organic and inorganic substances."^^xsd:string + + SubClassOf: + obo:GO_0005618 + + +Class: obo:GO_0070024 + + Annotations: + rdfs:label "CD19-Vav-PIK3R1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2574"^^xsd:string + oboInOwl:hasExactSynonym "CD19-Vav-PI 3-kinase (p85 subunit) complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:7528218"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell surface signaling molecule CD19, the Ras guanine nucleotide exchange factor Vav, and the regulatory subunit alpha of phosphatidylinositol 3-kinase (PI3K)."^^xsd:string, + oboInOwl:id "GO:0070024"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0002133 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:11901144"^^xsd:string + obo:IAO_0000115 "A stable heterodimeric complex composed of polycystin-1 and polycystin-2."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0002133"^^xsd:string, + rdfs:label "polycystin complex"^^xsd:string, + rdfs:comment "Different forms of the complex differing in type of N-glycosylation of polycystin-1 can exist (endoglycosidase sensitive and endoglycosidase resistant)."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0009504 + + Annotations: + rdfs:label "cell plate"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009504"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The nascent cell membrane and cell wall structure that forms between two daughter nuclei near the center of a dividing plant cell. It develops at the equitorial region of the phragmoplast. It grows outwards to join with the lateral walls and form two daughter cells."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cell_plate"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0070021 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "TGF-beta receptor II-TGF-beta receptor I-TGF-beta1 complex"^^xsd:string, + rdfs:label "transforming growth factor beta1-type II receptor-type I receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "TGF-beta1-type II receptor-type I receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7425"^^xsd:string + obo:IAO_0000115 "A protein complex that is formed by the association of a ligand-bound TGF-beta type II receptor dimer with a TGF-beta type I receptor dimer."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7425"^^xsd:string + oboInOwl:hasExactSynonym "TGF-beta 1:type II receptor:type I receptor complex"^^xsd:string, + oboInOwl:id "GO:0070021"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009503 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A thylakoid membrane complex of chlorophylls a and b together with chlorophyll a-b binding proteins. In addition, LHCs contain a number of other proteins, the function of which is speculative, together with accessory pigments. The LHCs capture and transfer energy to photosystems I and II. An example of this is found in Arabidopsis thaliana."^^xsd:string, + oboInOwl:id "GO:0009503"^^xsd:string, + rdfs:label "thylakoid light-harvesting complex"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0030076, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009535, + obo:GO_0044434 + + +Class: obo:GO_0070022 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_7415"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_7737"^^xsd:string + obo:IAO_0000115 "A dimeric receptor complex that binds transforming growth factor beta (TGF-beta); consists of two TGF-beta receptor monomers."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transforming growth factor beta receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "TGF-beta receptor complex"^^xsd:string, + oboInOwl:id "GO:0070022"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0042627 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10580165"^^xsd:string, + oboInOwl:hasDbXref "http://biotech.icmb.utexas.edu/search/dict-search.html"^^xsd:string + obo:IAO_0000115 "A large lipoprotein particle (diameter 75-1200 nm) composed of a central core of triglycerides and cholesterol surrounded by a protein-phospholipid coating. The proteins include one molecule of apolipoprotein B-48 and may include a variety of apolipoproteins, including APOAs, APOCs and APOE. Chylomicrons are found in blood or lymph and carry lipids from the intestines into other body tissues."^^xsd:string, + oboInOwl:id "GO:0042627"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Chylomicron"^^xsd:string, + rdfs:label "chylomicron"^^xsd:string + + SubClassOf: + obo:GO_0034358 + + +Class: obo:GO_0060342 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060342"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The membrane surrounding the outer segment of a vertebrate photoreceptor. The photoreceptor inner segment contains mitochondria, ribosomes and membranes where opsin molecules are assembled and passed to be part of the outer segment discs."^^xsd:string, + rdfs:label "photoreceptor inner segment membrane"^^xsd:string + + SubClassOf: + obo:GO_0016020, + obo:BFO_0000050 some obo:GO_0001917 + + +Class: obo:GO_0042641 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Any complex of actin, myosin, and accessory proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042641"^^xsd:string, + oboInOwl:hasExactSynonym "actomyosin complex"^^xsd:string, + oboInOwl:hasExactSynonym "actomyosin structure"^^xsd:string, + rdfs:label "actomyosin"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629 + + +Class: obo:GO_0090123 + + Annotations: + oboInOwl:id "GO:0090123"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ascb_2009"^^xsd:string, + oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The polysaccharide-based coating on the inner side of a lysosomal membrane that protects it from digestion by lysosomal enzymes."^^xsd:string, + rdfs:label "lysosomal glycocalyx"^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0005764 + + +Class: obo:GO_0070422 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070422"^^xsd:string, + rdfs:comment "See also the cellular component term 'heterotrimeric G-protein complex ; GO:0005834'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7782277"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the serine-threonine protein kinase Raf-1 with the beta and gamma subunits of a heterotrimeric G protein."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1539"^^xsd:string + oboInOwl:hasRelatedSynonym "G protein complex (GNG2, GNB2L1, RAF1)"^^xsd:string, + rdfs:label "G-protein beta/gamma-Raf-1 complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0070421 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DNA ligase III-XRCC1 complex"^^xsd:string, + oboInOwl:id "GO:0070421"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15141024"^^xsd:string, + oboInOwl:hasDbXref "PMID:7760816"^^xsd:string + obo:IAO_0000115 "A protein complex that contains DNA ligase III and XRCC1, and is involved in base excision repair."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0030312 + + Annotations: + oboInOwl:id "GO:0030312"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "external encapsulating structure"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "A structure that lies outside the plasma membrane and surrounds the entire cell."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:BFO_0000050 some obo:GO_0071944, + obo:GO_0044464 + + +Class: obo:GO_0030313 + + Annotations: + oboInOwl:id "GO:0030313"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "http://pathmicro.med.sc.edu/fox/cell_envelope.htm"^^xsd:string + obo:IAO_0000115 "An envelope that surrounds a bacterial cell and includes the cytoplasmic membrane and everything external, encompassing the periplasmic space, cell wall, and outer membrane if present."^^xsd:string, + rdfs:label "cell envelope"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cell_envelope"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005886, + obo:GO_0031975 + + +Class: obo:GO_0030314 + + Annotations: + oboInOwl:id "GO:0030314"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11535622"^^xsd:string + obo:IAO_0000115 "Complex formed in muscle cells between the membrane of the sarcoplasmic reticulum and invaginations of the plasma membrane (T-tubules)."^^xsd:string, + rdfs:label "junctional membrane complex"^^xsd:string, + oboInOwl:hasBroadSynonym "triad junction"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016528, + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0030315 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030315"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:T-tubule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Invagination of the plasma membrane of a muscle cell that extends inward from the cell surface around each myofibril. The ends of T-tubules make contact with the sarcoplasmic reticulum membrane."^^xsd:string, + oboInOwl:hasRelatedSynonym "triad"^^xsd:string, + rdfs:label "T-tubule"^^xsd:string, + oboInOwl:hasExactSynonym "transverse tubule"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0042383 + + +Class: obo:GO_0070420 + + Annotations: + oboInOwl:id "GO:0070420"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17938628"^^xsd:string + obo:IAO_0000115 "A nonhomologous end joining complex that contains one or more Ku monomers and one or more DNA ligase molecules from the LigC or LigD family, and mediates nonhomologous end joining in bacteria."^^xsd:string, + rdfs:label "Ku-DNA ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0070419 + + +Class: obo:GO_0002141 + + Annotations: + rdfs:label "stereocilia ankle link"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0002141"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17567809"^^xsd:string + obo:IAO_0000115 "A stereocilia coupling link that is composed of a fine filament present in developing stereocilia that couples the bases of individual stereocilia to one another. They are not present in mature stereocilia."^^xsd:string + + SubClassOf: + obo:GO_0002139 + + +Class: obo:GO_0009510 + + Annotations: + oboInOwl:hasAlternativeId "GO:0009572"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://biology.kenyon.edu/edwards/project/greg/pd.htm"^^xsd:string + obo:IAO_0000115 "A tightly wound cylinder of membrane that is located within the plasmodesmal pore and runs the length of the plasmodesma. The desmotubule likely provides a rigid stability to plasmodesmata and confers a fixed diameter and pore size to the plasmodesmal canal, and is linked to the endoplasmic reticulum in each of the adjacent cell."^^xsd:string, + rdfs:label "plasmodesmatal desmotubule"^^xsd:string, + oboInOwl:hasRelatedSynonym "desmotubule central rod"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009510"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0044432, + obo:BFO_0000050 some obo:GO_0009506 + + +Class: obo:GO_0002142 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:16775142"^^xsd:string + obo:IAO_0000115 "A complex of proteins that connect growing stereocilia in developing cochlear hair cells, composed of Vlgr1, usherin, vezatin, and whirlin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "stereocilia ankle link complex"^^xsd:string, + oboInOwl:id "GO:0002142"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0002141, + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0009512 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "cytochrome b6-f complex"^^xsd:string, + oboInOwl:hasExactSynonym "cyt b6f complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cytochrome_b6f_complex"^^xsd:string, + rdfs:label "cytochrome b6f complex"^^xsd:string, + oboInOwl:id "GO:0009512"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string, + oboInOwl:hasDbXref "PMID:16228398"^^xsd:string, + oboInOwl:hasDbXref "PMID:16352458"^^xsd:string + obo:IAO_0000115 "Complex that transfers electrons from reduced plastoquinone to oxidized plastocyanin and translocates protons from the stroma to the lumen. The complex contains a core structure of three catalytic subunits: cytochrome b, the Rieske iron sulfur protein (ISP), and cytochrome f, which are arranged in an integral membrane-bound dimeric complex; additional subunits are present, and vary among different species."^^xsd:string, + oboInOwl:hasExactSynonym "cyt b6-f complex"^^xsd:string, + oboInOwl:hasExactSynonym "cytochrome b(6)f complex"^^xsd:string, + oboInOwl:hasExactSynonym "cyt b6/f complex"^^xsd:string, + oboInOwl:hasExactSynonym "cytochrome b6/f complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cyt b(6)f complex"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0043234 + + +Class: obo:GO_0014701 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "The part of the sarcoplasmic reticulum membrane that contains calcium release channels, is devoted to calcium release and is juxtaposed to transverse tubule membrane. The junctional sarcoplasmic reticulum membrane consists of the junctional region of the terminal cisterna membrane."^^xsd:string, + rdfs:label "junctional sarcoplasmic reticulum membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0014701"^^xsd:string + + SubClassOf: + obo:GO_0033017 + + +Class: obo:GO_0002140 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "stereocilia tip link"^^xsd:string, + oboInOwl:id "GO:0002140"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1108787"^^xsd:string + obo:IAO_0000115 "A stereocilia link that is formed by a fine filament running more or less vertically upward from the tip of each shorter stereocilium to attach at a higher point on its adjacent taller neighbor. Tilting the bundle puts tension on the filaments, which pull on mechanically gated ion channels in the membrane of the stereocilia."^^xsd:string + + SubClassOf: + obo:GO_0002139 + + +Class: obo:GO_0009511 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "Endoplasmic reticulum found in plasmodesmata, junctions connecting the cytoplasm of adjacent plant cells."^^xsd:string, + oboInOwl:hasExactSynonym "plasmodesmatal ER"^^xsd:string, + rdfs:label "plasmodesmatal endoplasmic reticulum"^^xsd:string, + oboInOwl:id "GO:0009511"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009510, + obo:GO_0044459, + obo:GO_0005783, + obo:GO_0044432 + + +Class: obo:GO_0009518 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Protein-pigment complex associated with photosystem I."^^xsd:string, + oboInOwl:id "GO:0009518"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "LHCI"^^xsd:string, + rdfs:label "PSI associated light-harvesting complex I"^^xsd:string + + SubClassOf: + obo:GO_0009503 + + +Class: obo:GO_0009517 + + Annotations: + oboInOwl:id "GO:0009517"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0582227089"^^xsd:string + obo:IAO_0000115 "Protein-pigment complex associated with photosystem II."^^xsd:string, + oboInOwl:hasExactSynonym "LHCII"^^xsd:string, + rdfs:label "PSII associated light-harvesting complex II"^^xsd:string + + SubClassOf: + obo:GO_0009503 + + +Class: obo:GO_0009519 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "Layer of intercellular material, chiefly pectic substances, cementing together the primary walls of contiguous cells."^^xsd:string, + oboInOwl:id "GO:0009519"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "middle lamella"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Middle_lamella"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615 + + +Class: obo:GO_0070032 + + Annotations: + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-1a-complexin I complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7553862"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, syntaxin 1a, and complexin I (or orthologs thereof)."^^xsd:string, + oboInOwl:id "GO:0070032"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:795"^^xsd:string + oboInOwl:hasNarrowSynonym "Vamp2-Snap25-Stx1a-Cplx1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:795"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Vamp2, Snap25, Stx1a, Cplx1)"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0009514 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dhl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0140514031"^^xsd:string + obo:IAO_0000115 "A specialized form of peroxisome that contains the enzymes of the glyoxylate pathway. The glyoxysome is found in some plant cells, notably the cells of germinating seeds."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009514"^^xsd:string, + rdfs:label "glyoxysome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Glyoxysome"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0070033 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:796"^^xsd:string + oboInOwl:hasNarrowSynonym "Vamp2-Snap25-Stx1a-Cplx2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070033"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7553862"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptobrevin 2 (VAMP2), SNAP-25, syntaxin 1a, and complexin II (or orthologs thereof)."^^xsd:string, + rdfs:label "synaptobrevin 2-SNAP-25-syntaxin-1a-complexin II complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:796"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Vamp2, Snap25, Stx1a, Cplx2)"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0009513 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009513"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "A plastid arrested in the development of chloroplasts from proplastids due to absence of light or low light conditions."^^xsd:string, + rdfs:label "etioplast"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Etioplast"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0009516 + + Annotations: + rdfs:label "leucoplast"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "A colorless plastid involved in the synthesis of monoterpenes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009516"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Leucoplast"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0002144 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:18391219"^^xsd:string + obo:IAO_0000115 "A complex of two proteins involved in the thiolation of U34 in glutamate, lysine, and glutamine tRNAs of eukaryotes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "tRNA thiouridylase"^^xsd:string, + oboInOwl:hasNarrowSynonym "Cut1-Cut2 complex"^^xsd:string, + oboInOwl:id "GO:0002144"^^xsd:string, + rdfs:label "cytosolic tRNA wobble base thiouridylase complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0009515 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "Appressed thylakoid membranes that are part of a granum (stacked regions). A characteristic of these appressed regions is the preferential localization of photosystem II."^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast stacked thylakoid"^^xsd:string, + oboInOwl:id "GO:0009515"^^xsd:string, + rdfs:label "granal stacked thylakoid"^^xsd:string + + EquivalentTo: + obo:GO_0009534 + and (obo:BFO_0000050 some obo:GO_0009542) + + SubClassOf: + obo:GO_0009534, + obo:BFO_0000050 some obo:GO_0009542 + + +Class: obo:GO_0042650 + + Annotations: + oboInOwl:id "GO:0042650"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11532175"^^xsd:string + obo:IAO_0000115 "The membrane of prothylakoids, underdeveloped thylakoids found in etioplasts, lacking competent photosynthetic membranes."^^xsd:string, + rdfs:label "prothylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0055035, + obo:BFO_0000050 some obo:GO_0042649 + + +Class: obo:GO_0042652 + + Annotations: + oboInOwl:hasBroadSynonym "NADH-Q oxidoreductase complex, peripheral segment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042652"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716749556"^^xsd:string + obo:IAO_0000115 "The peripheral segment of respiratory chain complex I located in the mitochondrion. Respiratory chain complex I is an enzyme of the respiratory chain, consisting of at least 34 polypeptide chains. The electrons of NADH enter the chain at this complex. The complete complex is L-shaped, with a horizontal arm lying in the membrane and a vertical arm that projects into the matrix."^^xsd:string, + rdfs:label "mitochondrial respiratory chain complex I, peripheral segment"^^xsd:string, + oboInOwl:hasBroadSynonym "NADH dehydrogenase (ubiquinone) complex, peripheral segment"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005747, + obo:GO_0043234 + + +Class: obo:GO_0042651 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The pigmented membrane of any thylakoid."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0042651"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0034357 + + +Class: obo:GO_0070769 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2379"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2B-ITGB3-CIB1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9030514"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to CIB, a protein that binds calcium as well as the alphaIIb-beta3 integrin."^^xsd:string, + oboInOwl:id "GO:0070769"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-CIB complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070768 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8999968"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptotagmin, synaptobrevin 2 (VAMP2), SNAP-25, syntaxin 1a, syntaxin1b, and Unc13b (or orthologs thereof)."^^xsd:string, + rdfs:label "synaptotagmin-synaptobrevin 2-SNAP-25-syntaxin-1a-syntaxin-1b-Unc13 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1873"^^xsd:string + oboInOwl:hasNarrowSynonym "Snap25-Syt1-Unc13b-Vamp2-Stx1b2-Stx1a complex"^^xsd:string, + oboInOwl:id "GO:0070768"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1873"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Snap25, Syt1, Unc13b, Vamp2, Stx1b2, Stx1a)"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0070767 + + Annotations: + rdfs:label "BRCA1-Rad51 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9008167"^^xsd:string + obo:IAO_0000115 "A protein complex that contains BRCA1 and Rad 51, and is involved in the control of recombination and of genome integrity."^^xsd:string, + oboInOwl:id "GO:0070767"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070419 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "non-homologous end joining complex"^^xsd:string, + rdfs:label "nonhomologous end joining complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17072889"^^xsd:string, + oboInOwl:hasDbXref "PMID:17938628"^^xsd:string + obo:IAO_0000115 "A protein complex that plays a role in DNA double-strand break repair via nonhomologous end joining. Such complexes typically contain a specialized DNA ligase (e.g. Lig4 in eukaryotes) and one or more proteins that bind to DNA ends."^^xsd:string, + oboInOwl:id "GO:0070419"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "NHEJ complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0070766 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:1876"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (Stx4, Napa, Vamp3, Nsf, Vamp2)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1876"^^xsd:string + oboInOwl:hasNarrowSynonym "Stx4-Napa-Vamp3-Nsf-Vamp2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "endobrevin-synaptobrevin 2-alpha-SNAP-NSF-syntaxin-4 complex"^^xsd:string, + oboInOwl:id "GO:0070766"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8973549"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains endobrevin (VAMP8), synaptobrevin 2 (VAMP2), alpha-SNAP, NSF, and syntaxin 4 (or orthologs thereof)."^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0070418 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "DNA-PK complex"^^xsd:string, + rdfs:label "DNA-dependent protein kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:355"^^xsd:string + oboInOwl:hasExactSynonym "DNA-PK-Ku antigen complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "DNA-dependent protein kinase, DNA-end-binding complex"^^xsd:string, + oboInOwl:id "GO:0070418"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10854421"^^xsd:string, + oboInOwl:hasDbXref "PMID:12235392"^^xsd:string + obo:IAO_0000115 "A protein complex that is involved in the repair of DNA double-strand breaks and, in mammals, V(D)J recombination events. It consists of the DNA-dependent protein kinase catalytic subunit (DNA-PKcs) and the DNA end-binding heterodimer Ku."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070765 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:142"^^xsd:string + oboInOwl:hasNarrowSynonym "CD147-gamma-secretase complex (APH-1a, PS-1, PEN-2, NCT variant)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15286082"^^xsd:string, + oboInOwl:hasDbXref "PMID:15890777"^^xsd:string, + oboInOwl:hasDbXref "PMID:17047368"^^xsd:string + obo:IAO_0000115 "A protein complex that has aspartic-type endopeptidase activity, and contains a catalytic subunit, presenilin (PS), that is a prototypical member of the GxGD-type aspartyl peptidases. The complex also contains additional subunits, including nicastrin, APH-1, PEN-2, and a regulatory subunit, CD147. Gamma-secretase cleaves several transmembrane proteins including the cell surface receptor Notch and the beta-amyloid precursor protein."^^xsd:string, + oboInOwl:id "GO:0070765"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3128"^^xsd:string + oboInOwl:hasRelatedSynonym "gamma-secretase complex (APH1B, PSEN1, PSENEN, NCSTN)"^^xsd:string, + rdfs:label "gamma-secretase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:130"^^xsd:string, + oboInOwl:hasDbXref "CORUM:2891"^^xsd:string, + oboInOwl:hasDbXref "CORUM:43"^^xsd:string, + oboInOwl:hasDbXref "CORUM:45"^^xsd:string, + oboInOwl:hasDbXref "CORUM:466"^^xsd:string + oboInOwl:hasNarrowSynonym "gamma-secretase complex (APH1A, PSEN1, PSENEN, NCSTN variant)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:467"^^xsd:string + oboInOwl:hasNarrowSynonym "gamma-secretase complex (APH1B, PSEN2, PSENEN, NCSTN)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:468"^^xsd:string + oboInOwl:hasNarrowSynonym "gamma-secretase complex (APH1A, PSEN2, PSENEN, NCSTN)"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0014704 + + Annotations: + oboInOwl:id "GO:0014704"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Intercalated_disc"^^xsd:string, + rdfs:label "intercalated disc"^^xsd:string, + oboInOwl:hasExactSynonym "intercalated disk"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "PMID:11732910"^^xsd:string + obo:IAO_0000115 "A complex cell-cell junction at which myofibrils terminate in cardiomyocytes; mediates mechanical and electrochemical integration between individual cardiomyocytes. The intercalated disc contains regions of tight mechanical attachment (fasciae adherentes and desmosomes) and electrical coupling (gap junctions) between adjacent cells."^^xsd:string + + SubClassOf: + obo:GO_0044291 + + +Class: obo:GO_0070764 + + Annotations: + oboInOwl:id "GO:0070764"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "gamma-secretase-Delta1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12794186"^^xsd:string + obo:IAO_0000115 "A protein complex that is formed by the association of the Notch ligand Delta1 with the gamma-secretase complex."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0014705 + + Annotations: + oboInOwl:id "GO:0014705"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "C zone"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "A region of the A band in which myosin-binding protein C is located and that can be seen by electron microscopy. This is a functional zone that also includes myosin."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031672, + obo:GO_0044449 + + +Class: obo:GO_0070763 + + Annotations: + oboInOwl:id "GO:0070763"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12794186"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of homodimer of the Notch ligand Delta1."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3271"^^xsd:string + oboInOwl:hasExactSynonym "Delta1 homodimer complex"^^xsd:string, + rdfs:label "Delta1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0014702 + + Annotations: + oboInOwl:id "GO:0014702"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "free sarcoplasmic reticulum membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string + obo:IAO_0000115 "The part of the sarcoplasmic reticulum membrane that contains calcium pumps and is devoted to calcium uptake. The free sarcoplasmic reticulum membrane consists of the longitudinal sarcoplasmic reticulum membrane and the non-junctional region of the terminal cisterna membrane."^^xsd:string + + SubClassOf: + obo:GO_0033017 + + +Class: obo:GO_0070762 + + Annotations: + oboInOwl:id "GO:0070762"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "NDC1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19414609"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of the nuclear pore complex, and contains three transmembrane nucleoporins, encoded in S. cerevisiae by Ndc1p, Pom152p and Pom34p."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19414609"^^xsd:string + oboInOwl:hasExactSynonym "NDC1 subcomplex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005643, + obo:GO_0044425, + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031015 + + Annotations: + oboInOwl:id "GO:0031015"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "karyopherin docking complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Asm4p-containing complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11867631"^^xsd:string, + oboInOwl:hasDbXref "PMID:9864357"^^xsd:string + obo:IAO_0000115 "A subcomplex of the nuclear pore complex that interacts with karyopherin-cargo complexes; a well-characterized example in Saccharomyces contains Asm4p, Nup53p, and Nup170p."^^xsd:string, + oboInOwl:hasBroadSynonym "nuclear pore subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005643, + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0071024 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains spliced leader (SL) RNA."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071024"^^xsd:string, + rdfs:label "SL snRNP"^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0070761 + + Annotations: + rdfs:label "pre-snoRNP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:17636026"^^xsd:string, + oboInOwl:hasDbXref "PMID:17709390"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains a precursor small nucleolar RNA (pre-snoRNA) and associated proteins, and forms during small nucleolar ribonucleoprotein complex (snoRNP) assembly. Pre-snoRNP complexes may contain proteins not found in the corresponding mature snoRNP complexes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070761"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string + oboInOwl:hasExactSynonym "pre-small nucleolar ribonucleoprotein complex"^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0071022 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex C2"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor post-spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC post-spliceosomal complex"^^xsd:string, + oboInOwl:id "GO:0071022"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed following the second splicing event and contains the spliced product, the excised intron, and three snRNPs, including U5."^^xsd:string, + rdfs:label "U12-type post-spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U12-type spliceosomal complex A2-3"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005693, + obo:GO_0071020, + obo:GO_0005689, + obo:BFO_0000051 some obo:GO_0005691 + + +Class: obo:GO_0071023 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that forms during the addition of a specific spliced leader (SL) sequence to the 5'-end of a messenger RNA primary transcript, a process which occurs in a number of eukaryotic organisms, including trypanosomatid protozoans, euglenoids, nematodes, trematodes, and chordates."^^xsd:string, + oboInOwl:id "GO:0071023"^^xsd:string, + rdfs:label "trans spliceosomal complex"^^xsd:string + + SubClassOf: + obo:GO_0005681, + obo:BFO_0000051 some obo:GO_0005682, + obo:BFO_0000051 some obo:GO_0071024, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005688, + obo:BFO_0000051 some obo:GO_0005687 + + +Class: obo:GO_0031019 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12139607"^^xsd:string + obo:IAO_0000115 "An mRNA editing complex found in the mitochondrion. The best characterized example is that of Trypanosoma brucei, which catalyzes the insertion and deletion of uridylates."^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial editosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031019"^^xsd:string, + rdfs:label "mitochondrial mRNA editing complex"^^xsd:string + + EquivalentTo: + obo:GO_0045293 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045293, + obo:GO_0044429 + + +Class: obo:GO_0031020 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An mRNA editing complex found in a plastid."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031020"^^xsd:string, + rdfs:label "plastid mRNA editing complex"^^xsd:string, + oboInOwl:hasExactSynonym "plastid editosome"^^xsd:string + + EquivalentTo: + obo:GO_0045293 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0045293 + + +Class: obo:GO_0031021 + + Annotations: + oboInOwl:hasExactSynonym "interphase microtubule organising center"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "interphase MTOC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15068790"^^xsd:string + obo:IAO_0000115 "A microtubule organizing center found in interphase cells, which organize a longitudinal array of three to five MT bundles from the nuclear envelope during interphase. Each MT bundle is composed of two to seven MTs arranged in an antiparallel configuration, with the dynamic MT plus ends extending toward the cell tips and stable minus ends near the nucleus."^^xsd:string, + oboInOwl:id "GO:0031021"^^xsd:string, + oboInOwl:hasExactSynonym "iMTOC"^^xsd:string, + rdfs:label "interphase microtubule organizing center"^^xsd:string + + SubClassOf: + obo:GO_0005815 + + +Class: obo:GO_0009523 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943088399"^^xsd:string, + oboInOwl:hasDbXref "PMID:9821949"^^xsd:string + obo:IAO_0000115 "A photosystem that contains a pheophytin-quinone reaction center with associated accessory pigments and electron carriers. In cyanobacteria and chloroplasts, in the presence of light, PSII functions as a water-plastoquinone oxidoreductase, transferring electrons from water to plastoquinone, whereas other photosynthetic bacteria carry out anoxygenic photosynthesis and oxidize other compounds to re-reduce the photoreaction center."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009523"^^xsd:string, + rdfs:label "photosystem II"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Photosystem_II"^^xsd:string + + SubClassOf: + obo:GO_0009521 + + +Class: obo:GO_0009522 + + Annotations: + rdfs:label "photosystem I"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0140514031"^^xsd:string, + oboInOwl:hasDbXref "PMID:9821949"^^xsd:string + obo:IAO_0000115 "A photosystem that contains an iron-sulfur reaction center associated with accessory pigments and electron carriers. In cyanobacteria and chloroplasts, photosystem I functions as a light-dependent plastocyanin-ferredoxin oxidoreductase, transferring electrons from plastocyanin to ferredoxin; in photosynthetic bacteria that have only a single type I photosystem, such as the green sulfur bacteria, electrons can go either to ferredoxin (Fd) -> NAD+ or to menaquinone (MK) -> Cytb/FeS -> Cytc555 -> photosystem I (cyclic photophosphorylation)."^^xsd:string, + oboInOwl:id "GO:0009522"^^xsd:string + + SubClassOf: + obo:GO_0009521 + + +Class: obo:GO_0009521 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0140514031"^^xsd:string, + oboInOwl:hasDbXref "PMID:9821949"^^xsd:string + obo:IAO_0000115 "A complex located in a photosynthetic membrane that consists of a photoreaction center associated with accessory pigments and electron carriers. Examples of this component are found in Arabidopsis thaliana and in photosynthetic bacterial and archaeal species."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Photosystem"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "photosystem"^^xsd:string, + oboInOwl:hasNarrowSynonym "reaction center"^^xsd:string, + oboInOwl:hasNarrowSynonym "reaction centre"^^xsd:string, + oboInOwl:id "GO:0009521"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030090"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0034357, + obo:GO_0043234 + + +Class: obo:GO_0042646 + + Annotations: + rdfs:label "plastid nucleoid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The region of a plastid to which the DNA is confined."^^xsd:string, + oboInOwl:id "GO:0042646"^^xsd:string + + EquivalentTo: + obo:GO_0009295 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009532, + obo:GO_0009295 + + +Class: obo:GO_0009527 + + Annotations: + oboInOwl:id "GO:0009527"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the plastid envelope."^^xsd:string, + rdfs:label "plastid outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0031968, + obo:GO_0042170 + + +Class: obo:GO_0042647 + + Annotations: + rdfs:label "proplastid nucleoid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The region of a proplastid to which the DNA is confined."^^xsd:string, + oboInOwl:id "GO:0042647"^^xsd:string + + EquivalentTo: + obo:GO_0009295 + and (obo:BFO_0000050 some obo:GO_0009537) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009571, + obo:GO_0042646 + + +Class: obo:GO_0002111 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0002111"^^xsd:string, + rdfs:label "BRCA2-BRAF35 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:11207365"^^xsd:string + obo:IAO_0000115 "A heterodimeric complex of BRCA2 and BRAF35 (BRCA2-associated factor 35). The BRCA2-BRAF35 complex is often associated with condensed chromatin during mitosis."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0009526 + + Annotations: + rdfs:label "plastid envelope"^^xsd:string, + oboInOwl:id "GO:0009526"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jy"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing a plastid and separating its contents from the rest of the cytoplasm; includes the intermembrane space."^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0031967 + + +Class: obo:GO_0042648 + + Annotations: + rdfs:label "chloroplast chromosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042648"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A circular DNA molecule containing chloroplast encoded genes."^^xsd:string + + EquivalentTo: + obo:GO_0005694 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0009508, + obo:BFO_0000050 some obo:GO_0042644, + obo:GO_0044434 + + +Class: obo:GO_0009525 + + Annotations: + oboInOwl:id "GO:0009525"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "phragmosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "A flattened membranous vesicle containing cell wall components."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Phragmosome"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0042649 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "prothylakoid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11532175"^^xsd:string + obo:IAO_0000115 "Underdeveloped thylakoids found in etioplasts, lacking competent photosynthetic membranes. Rapidly develop into mature thylakoids in the presence of light."^^xsd:string, + oboInOwl:id "GO:0042649"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009513, + obo:GO_0031976 + + +Class: obo:GO_0009524 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Phragmoplast"^^xsd:string, + oboInOwl:id "GO:0009524"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "Fibrous structure (light microscope view) that arises between the daughter nuclei at telophase and within which the initial partition (cell plate), dividing the mother cell in two (cytokinesis), is formed. Appears at first as a spindle connected to the two nuclei, but later spreads laterally in the form of a ring. Consists of microtubules."^^xsd:string, + rdfs:label "phragmoplast"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0042642 + + Annotations: + rdfs:label "actomyosin, myosin complex part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The myosin part of any complex of actin, myosin, and accessory proteins."^^xsd:string, + oboInOwl:id "GO:0042642"^^xsd:string + + EquivalentTo: + obo:GO_0016459 + and (obo:BFO_0000050 some obo:GO_0042641) + + SubClassOf: + obo:GO_0016459, + obo:BFO_0000050 some obo:GO_0042641 + + +Class: obo:GO_0042643 + + Annotations: + rdfs:label "actomyosin, actin part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The actin part of any complex of actin, myosin, and accessory proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042643"^^xsd:string + + EquivalentTo: + obo:GO_0005884 + and (obo:BFO_0000050 some obo:GO_0042641) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042641, + obo:GO_0005884 + + +Class: obo:GO_0042644 + + Annotations: + rdfs:label "chloroplast nucleoid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042644"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The region of a chloroplast to which the DNA is confined."^^xsd:string + + EquivalentTo: + obo:GO_0009295 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009570, + obo:GO_0042646, + obo:GO_0044434 + + +Class: obo:GO_0002116 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:10934324"^^xsd:string, + oboInOwl:hasDbXref "PMID:12367632"^^xsd:string, + oboInOwl:hasDbXref "PMID:12613544"^^xsd:string + obo:IAO_0000115 "A stable binary complex of a neurophilin and a plexin, together forming a functional semaphorin receptor."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "semaphorin receptor complex"^^xsd:string, + oboInOwl:id "GO:0002116"^^xsd:string, + oboInOwl:hasExactSynonym "plexin-neurophilin complex"^^xsd:string + + SubClassOf: + obo:GO_0043235 + + +Class: obo:GO_0009529 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of the plastid envelope."^^xsd:string, + rdfs:label "plastid intermembrane space"^^xsd:string, + oboInOwl:id "GO:0009529"^^xsd:string, + oboInOwl:hasExactSynonym "plastid envelope lumen"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009526, + obo:GO_0031970 + + +Class: obo:GO_0042645 + + Annotations: + rdfs:label "mitochondrial nucleoid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The region of a mitochondrion to which the DNA is confined."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042645"^^xsd:string + + EquivalentTo: + obo:GO_0009295 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0009295 + + +Class: obo:GO_0009528 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the plastid envelope; also faces the plastid stroma."^^xsd:string, + oboInOwl:id "GO:0009528"^^xsd:string, + rdfs:label "plastid inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0019866, + obo:GO_0042170 + + +Class: obo:GO_0031838 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the stable binding of a haptoglobin to hemoglobin."^^xsd:string, + rdfs:label "haptoglobin-hemoglobin complex"^^xsd:string, + oboInOwl:id "GO:0031838"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0071019 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:16201866"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed following the release of the spliced product from the post-spliceosomal complex and contains the excised intron and the U12, U5 and U6atac snRNPs."^^xsd:string, + oboInOwl:id "GO:0071019"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC post-mRNA release spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor post-mRNA release spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex I"^^xsd:string, + rdfs:label "U12-type post-mRNA release spliceosomal complex"^^xsd:string + + SubClassOf: + obo:GO_0005693, + obo:GO_0005691, + obo:GO_0005689, + obo:GO_0071014 + + +Class: obo:GO_0070020 + + Annotations: + oboInOwl:id "GO:0070020"^^xsd:string, + oboInOwl:hasExactSynonym "TGF-beta receptor II-TGF-beta1 complex"^^xsd:string, + rdfs:label "transforming growth factor beta1-type II receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7218"^^xsd:string + oboInOwl:hasExactSynonym "TGF-beta1-type II receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7218"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of a dimeric transforming growth factor beta (TGF-beta) type II receptor bound to a TGF-beta1 dimer."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071015 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex A"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U12-type spliceosomal complex B"^^xsd:string, + rdfs:label "U12-type prespliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10197985"^^xsd:string, + oboInOwl:hasDbXref "PMID:16201866"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the cooperative binding of the heterodimeric U11/U12 snRNP to the 5' splice site and the branch point sequence. The U12-type prespliceosome includes many proteins in addition to those found in the U11/U12 heterodimeric snRNPs. Commitment to a given pair of 5' and 3' splice sites occurs at the time of prespliceosome formation."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC prespliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor prespliceosome"^^xsd:string, + oboInOwl:id "GO:0071015"^^xsd:string + + SubClassOf: + obo:GO_0071010, + obo:BFO_0000051 some obo:GO_0034693, + obo:GO_0005689 + + +Class: obo:GO_0031027 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "glutamate synthase complex (NADH)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:7047525"^^xsd:string + obo:IAO_0000115 "A protein complex that in yeast consists of a large and a small subunit. Possesses glutamate synthase (NADH) activity."^^xsd:string, + oboInOwl:id "GO:0031027"^^xsd:string + + SubClassOf: + obo:GO_0031026 + + +Class: obo:GO_0071016 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC precatalytic spliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex B1"^^xsd:string, + rdfs:label "U12-type precatalytic spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex B"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor precatalytic spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U12-type spliceosomal complex A2-1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16201866"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the recruitment of the preassembled U4atac/U6atac.U5 tri-snRNP to the U12-type prespliceosome. Although all 5 snRNPs are present, the precatalytic spliceosome is catalytically inactive. The precatalytic spliceosome includes many proteins in addition to those found in the U11, U12 and U4atac/U6atac.U5 snRNPs."^^xsd:string, + oboInOwl:id "GO:0071016"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005692, + obo:BFO_0000051 some obo:GO_0005693, + obo:BFO_0000051 some obo:GO_0071009, + obo:GO_0005689, + obo:GO_0071011 + + +Class: obo:GO_0031026 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A complex that possesses glutamate synthase activity."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "glutamate synthase complex"^^xsd:string, + oboInOwl:id "GO:0031026"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0071017 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U12-type spliceosomal complex A1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC catalytic step 1 spliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex B2"^^xsd:string, + rdfs:label "U12-type catalytic step 1 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor catalytic step 1 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasExactSynonym "U12-type activated spliceosome"^^xsd:string, + oboInOwl:id "GO:0071017"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:16201866"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the displacement of the U11 and U4atac snRNPs from the precatalytic spliceosome; the U12, U5 and U6atac snRNPs remain associated with the mRNA. This complex, sometimes called the activated spliceosome, is the catalytically active form of the spliceosome, and includes many proteins in addition to those found in the U12, and U5 and U6atac snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex B*"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005693, + obo:GO_0005689, + obo:GO_0071012, + obo:BFO_0000051 some obo:GO_0005691 + + +Class: obo:GO_0070776 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:18794358"^^xsd:string + obo:IAO_0000115 "A histone acetyltransferase complex that has histone H3 acetyltransferase and coactivator activities. Subunits of the human complex include MYST3/MOZ, MYST4/MORF, ING5, EAF6 and one of BRPF1, BRD1/BRPF2 and BRPF3."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MOZ/MORF histone acetyltransferase complex"^^xsd:string, + oboInOwl:id "GO:0070776"^^xsd:string + + SubClassOf: + obo:GO_0070775 + + +Class: obo:GO_0071018 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex C1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC catalytic step 2 spliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:16201866"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that contains the U12, U5 and U6atac snRNPs bound to a splicing intermediate in which the first catalytic cleavage of the 5' splice site has occurred. The precise subunit composition differs significantly from that of the catalytic step 1, or activated, spliceosome, and includes many proteins in addition to those found in the U12, U5 and U6atac snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U12-type spliceosomal complex C"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U12-type spliceosomal complex A2-2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor catalytic step 2 spliceosome"^^xsd:string, + rdfs:label "U12-type catalytic step 2 spliceosome"^^xsd:string, + oboInOwl:id "GO:0071018"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005693, + obo:GO_0005689, + obo:BFO_0000051 some obo:GO_0005691, + obo:GO_0071013 + + +Class: obo:GO_0070775 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "H3 HAT complex"^^xsd:string, + rdfs:label "H3 histone acetyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that catalyzes the acetylation of histone H3."^^xsd:string, + oboInOwl:id "GO:0070775"^^xsd:string + + SubClassOf: + obo:GO_0000123 + + +Class: obo:GO_0071011 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex B"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "precatalytic spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex B1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast spliceosomal complex A2-1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18322460"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the recruitment of a preassembled U5-containing tri-snRNP to the prespliceosome. Although all 5 snRNPs are present, the precatalytic spliceosome is catalytically inactive. The precatalytic spliceosome includes many proteins in addition to those found in the associated snRNPs."^^xsd:string, + oboInOwl:id "GO:0071011"^^xsd:string + + SubClassOf: + obo:GO_0005681 + + +Class: obo:GO_0070770 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9169439"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to the cell surface antigen CD47 and the kinase FAK."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2896"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2b-ITGB3-CD47-FAK complex"^^xsd:string, + oboInOwl:id "GO:0070770"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-CD47-FAK complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071012 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasExactSynonym "activated spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18322460"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the displacement of the two snRNPs from the precatalytic spliceosome; three snRNPs including U5 remain associated with the mRNA. This complex, sometimes called the activated spliceosome, is the catalytically active form of the spliceosome, and includes many proteins in addition to those found in the associated snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex B2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast spliceosomal complex A1"^^xsd:string, + oboInOwl:id "GO:0071012"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex B*"^^xsd:string, + rdfs:label "catalytic step 1 spliceosome"^^xsd:string + + SubClassOf: + obo:GO_0005681, + obo:BFO_0000051 some obo:GO_0005682, + obo:BFO_0000051 some obo:GO_0000974 + + +Class: obo:GO_0071013 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast spliceosomal complex A2-2"^^xsd:string, + rdfs:label "catalytic step 2 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex C1"^^xsd:string, + oboInOwl:id "GO:0071013"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:18322460"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that contains three snRNPs, including U5, bound to a splicing intermediate in which the first catalytic cleavage of the 5' splice site has occurred. The precise subunit composition differs significantly from that of the catalytic step 1, or activated, spliceosome, and includes many proteins in addition to those found in the associated snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex C"^^xsd:string + + SubClassOf: + obo:GO_0005681, + obo:BFO_0000051 some obo:GO_0005682, + obo:BFO_0000051 some obo:GO_0000974 + + +Class: obo:GO_0070772 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "PAS complex"^^xsd:string, + oboInOwl:id "GO:0070772"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18950639"^^xsd:string, + oboInOwl:hasDbXref "PMID:19037259"^^xsd:string, + oboInOwl:hasDbXref "PMID:19158662"^^xsd:string + obo:IAO_0000115 "A protein complex that contains a phosphatidylinositol-3-phosphate 5-kinase subunit (Fab1p in yeast; PIKfyve in mammals), a kinase activator, and a phosphatase, and may also contain additional proteins; it is involved in regulating the synthesis and turnover of phosphatidylinositol 3,5-bisphosphate. In mammals the complex is composed of PIKFYVE, FIG4 and VAC14. In yeast it is composed of Atg18p, Fig4p, Fab1p, Vac14p and Vac7p."^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005774, + obo:GO_0043234 + + +Class: obo:GO_0071014 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed following the release of the spliced product from the post-spliceosomal complex and contains the excised intron and three snRNPs, including U5."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "post-mRNA release spliceosomal complex"^^xsd:string, + oboInOwl:id "GO:0071014"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex I"^^xsd:string + + SubClassOf: + obo:GO_0005681, + obo:BFO_0000051 some obo:GO_0005682 + + +Class: obo:GO_0070771 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:9169439"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to the cell surface antigen CD47 and the kinase c-Src."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin-CD47-Src complex"^^xsd:string, + oboInOwl:id "GO:0070771"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2377"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2b-ITGB3-CD47-SRC complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070018 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070018"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7737"^^xsd:string + oboInOwl:hasExactSynonym "TGF-beta type I receptor dimer"^^xsd:string, + rdfs:label "transforming growth factor beta type I receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "TGF-beta type I receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7737"^^xsd:string + obo:IAO_0000115 "A receptor complex that consists of two transforming growth factor beta (TGF-beta) type I receptor monomers. TGF-beta type I receptor dimers form in the presence or absence of ligand, and can associate with ligand-bound TGF-beta type II receptor dimers."^^xsd:string + + SubClassOf: + obo:GO_0070022 + + +Class: obo:GO_0070019 + + Annotations: + rdfs:label "transforming growth factor beta type II receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "TGF-beta type II receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070019"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7415"^^xsd:string + obo:IAO_0000115 "A receptor complex that consists of two transforming growth factor beta (TGF-beta) type II receptor monomers. TGF-beta type II receptor dimers form in the presence or absence of ligand, and upon ligand binding can associate with TGF-beta type I receptor dimers."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_7415"^^xsd:string + oboInOwl:hasExactSynonym "TGF-beta type II receptor dimer"^^xsd:string + + SubClassOf: + obo:GO_0070022 + + +Class: obo:GO_0071021 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U2-type spliceosomal complex A2-3"^^xsd:string, + rdfs:label "U2-type post-spliceosomal complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed following the second splicing event and contains the spliced product, the excised intron, and three snRNPs, including U5."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG post-spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major post-spliceosomal complex"^^xsd:string, + oboInOwl:id "GO:0071021"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex C2"^^xsd:string + + SubClassOf: + obo:GO_0005684, + obo:GO_0071020, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005688 + + +Class: obo:GO_0009530 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "PMID:9442872"^^xsd:string + obo:IAO_0000115 "A plant cell wall that is still able to expand, permitting cell growth. Primary cell walls contain more pectin than secondary walls and no lignin is present."^^xsd:string, + oboInOwl:id "GO:0009530"^^xsd:string, + rdfs:label "primary cell wall"^^xsd:string + + SubClassOf: + obo:GO_0048196, + obo:GO_0009505 + + +Class: obo:GO_0071020 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast spliceosomal complex A2-3"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed following the second splicing event and contains the spliced product, the excised intron, and three snRNPs, including U5."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex C2"^^xsd:string, + rdfs:label "post-spliceosomal complex"^^xsd:string, + oboInOwl:id "GO:0071020"^^xsd:string + + SubClassOf: + obo:GO_0005681, + obo:BFO_0000051 some obo:GO_0005682 + + +Class: obo:GO_0035182 + + Annotations: + oboInOwl:hasNarrowSynonym "nurse cell ring canal outer rim"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "ovarian ring canal outer rim"^^xsd:string, + oboInOwl:id "GO:0035182"^^xsd:string, + rdfs:comment "See also the fly_anatomy.ontology term 'outer nurse cell ring canal rim ; FBbt:00004882'."^^xsd:string, + rdfs:label "female germline ring canal outer rim"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12435357"^^xsd:string, + oboInOwl:hasDbXref "PMID:7925006"^^xsd:string + obo:IAO_0000115 "An electron opaque backbone of the insect ovarian ring canal that is a part of or adjacent to the plasma membrane. The outer rim is established as the cleavage furrow is arrested, and contains F-actin, anillin, glycoproteins and at least one a protein with a high content of phosphorylated tyrosine residues."^^xsd:string, + oboInOwl:hasBroadSynonym "germline ring canal outer rim"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0035324 + + +Class: obo:GO_0035183 + + Annotations: + oboInOwl:hasNarrowSynonym "ovarian ring canal inner rim"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10556087"^^xsd:string, + oboInOwl:hasDbXref "PMID:7925006"^^xsd:string, + oboInOwl:hasDbXref "PMID:9093858"^^xsd:string + obo:IAO_0000115 "A proteinaceous actin-rich layer of the insect ovarian ring canal that forms subcortically to the outer rim. The electron dense inner rim accumulates after the final mitotic division of each germline syncytia, and contains actin, a phosphotyrosine protein, and a number of cytoskeletal proteins."^^xsd:string, + oboInOwl:hasNarrowSynonym "nurse cell ring canal inner rim"^^xsd:string, + rdfs:label "female germline ring canal inner rim"^^xsd:string, + rdfs:comment "See also the fly_anatomy.ontology term 'inner nurse cell ring canal rim ; FBbt:00004881'."^^xsd:string, + oboInOwl:hasBroadSynonym "germline ring canal inner rim"^^xsd:string, + oboInOwl:id "GO:0035183"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0035324 + + +Class: obo:GO_0009532 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:047142520"^^xsd:string + obo:IAO_0000115 "The proteinaceous ground substance of plastids."^^xsd:string, + oboInOwl:id "GO:0009532"^^xsd:string, + rdfs:label "plastid stroma"^^xsd:string + + SubClassOf: + obo:GO_0044435 + + +Class: obo:GO_0009531 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "secondary cell wall"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943088399"^^xsd:string + obo:IAO_0000115 "A plant cell wall that is no longer able to expand and so does not permit growth. Secondary cell walls contain less pectin that primary cell walls. The secondary cell is mostly composed of cellulose and is strengthened with lignin."^^xsd:string, + oboInOwl:id "GO:0009531"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Secondary_cell_wall"^^xsd:string + + SubClassOf: + obo:GO_0048196, + obo:GO_0009505 + + +Class: obo:GO_0009534 + + Annotations: + rdfs:label "chloroplast thylakoid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "Sac-like membranous structures (cisternae) in a chloroplast combined into stacks (grana) and present singly in the stroma (stroma thylakoids or frets) as interconnections between grana. An example of this component is found in Arabidopsis thaliana."^^xsd:string, + oboInOwl:id "GO:0009534"^^xsd:string + + EquivalentTo: + obo:GO_0009579 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0031976, + obo:GO_0044434 + + +Class: obo:GO_0009533 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast stromal thylakoid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "Unstacked thylakoids that connect the grana stacks through the stroma."^^xsd:string, + oboInOwl:id "GO:0009533"^^xsd:string + + EquivalentTo: + obo:GO_0009534 + and (obo:BFO_0000050 some obo:GO_0009570) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009570, + obo:GO_0009534 + + +Class: obo:GO_0009536 + + Annotations: + oboInOwl:id "GO:0009536"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "Any member of a family of organelles found in the cytoplasm of plants and some protists, which are membrane-bounded and contain DNA. Plant plastids develop from a common type, the proplastid."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:label "plastid"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Plastid"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0009535 + + Annotations: + oboInOwl:id "GO:0009535"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The pigmented membrane of a chloroplast thylakoid. An example of this component is found in Arabidopsis thaliana."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009534, + obo:GO_0055035, + obo:GO_0044434 + + +Class: obo:GO_0035189 + + Annotations: + rdfs:label "Rb-E2F complex"^^xsd:string, + oboInOwl:id "GO:0035189"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14616073"^^xsd:string + obo:IAO_0000115 "A multiprotein complex containing a heterodimeric E2F transcription factor and a Retinoblastoma (Rb) family member. This complex is capable of repressing transcription of E2F-regulated genes in order to regulate cell cycle progression."^^xsd:string, + oboInOwl:hasExactSynonym "retinoblastoma-E2F complex"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0009538 + + Annotations: + oboInOwl:id "GO:0009538"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "photosystem I reaction center"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943088399"^^xsd:string + obo:IAO_0000115 "A photochemical system containing P700, the chlorophyll a dimer that functions as a primary electron donor. Functioning as a light-dependent plastocyanin-ferredoxin oxidoreductase, it transfers electrons from plastocyanin to ferredoxin."^^xsd:string, + oboInOwl:hasExactSynonym "photosystem I reaction centre"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009522, + obo:GO_0043234 + + +Class: obo:GO_0070013 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An organelle lumen that is part of an intracellular organelle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intracellular organelle lumen"^^xsd:string, + oboInOwl:id "GO:0070013"^^xsd:string + + SubClassOf: + obo:GO_0044446, + obo:GO_0043233 + + +Class: obo:GO_0009537 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0943883999"^^xsd:string + obo:IAO_0000115 "The precursor of other plastids."^^xsd:string, + oboInOwl:id "GO:0009537"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "proplastid"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0070014 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sucrase-isomaltase"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:3366777"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses oligo-1,6-glucosidase activity; the complex is a heterodimer located in the cell membrane, and is formed by proteolytic cleavage of a single precursor polypeptide. The two subunits have different substrate specificities."^^xsd:string, + oboInOwl:id "GO:0070014"^^xsd:string, + rdfs:label "sucrase-isomaltase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "oligo-1,6-glucosidase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0009539 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "photosystem II reaction center"^^xsd:string, + oboInOwl:hasExactSynonym "photosystem II reaction centre"^^xsd:string, + oboInOwl:id "GO:0009539"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0943088399"^^xsd:string + obo:IAO_0000115 "An integral membrane complex containing P680, the chlorophyll a molecule that functions as a primary electron donor. In the light, functioning as a water-plastoquinone oxidoreductase, it transfers electrons from water to plastoquinone."^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009523, + obo:GO_0043234 + + +Class: obo:GO_0042653 + + Annotations: + oboInOwl:hasBroadSynonym "NADH-Q oxidoreductase complex, membrane segment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716749556"^^xsd:string + obo:IAO_0000115 "The mitochondrial membrane segment of respiratory chain complex I. Respiratory chain complex I is an enzyme of the respiratory chain, consisting of at least 34 polypeptide chains. The electrons of NADH enter the chain at this complex. The complete complex is L-shaped, with a horizontal arm lying in the membrane and a vertical arm that projects into the matrix."^^xsd:string, + oboInOwl:id "GO:0042653"^^xsd:string, + rdfs:label "mitochondrial respiratory chain complex I, membrane segment"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005747, + obo:GO_0043234 + + +Class: obo:GO_0070017 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:2478219"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to thrombospondin."^^xsd:string, + oboInOwl:id "GO:0070017"^^xsd:string, + rdfs:label "alphav-beta3 integrin-thrombospondin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2846"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-THBS1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0019012 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0781718325"^^xsd:string + obo:IAO_0000115 "The complete fully infectious extracellular virus particle."^^xsd:string, + oboInOwl:id "GO:0019012"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Virus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "virion"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "complete virus particle"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0001534 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string, + oboInOwl:hasDbXref "PMID:9450971"^^xsd:string + obo:IAO_0000115 "Protein complex that links the outer microtubule doublet of the ciliary or flagellum axoneme with the sheath that surrounds the central pair of microtubules. Composed of a stalk that attaches to each doublet microtubule and a globular structure (spoke head) that projects toward the central pair of microtubules."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0001534"^^xsd:string, + rdfs:label "radial spoke"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Radial_spoke"^^xsd:string + + SubClassOf: + obo:GO_0044447, + obo:GO_0043234 + + +Class: obo:GO_0044084 + + Annotations: + + Annotations: oboInOwl:hasDbXref "MITRE:tk"^^xsd:string + obo:IAO_0000115 "Any small opening in a host cell membrane that allows the passage of gases and/or liquids, composed of host proteins."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell membrane pore complex"^^xsd:string, + oboInOwl:id "GO:0044084"^^xsd:string, + oboInOwl:hasExactSynonym "pore complex in host cell membrane"^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0033644 + + +Class: obo:GO_0001533 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cornified envelope"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11112355"^^xsd:string + obo:IAO_0000115 "An insoluble protein structure formed under the plasma membrane of cornifying epithelial cells."^^xsd:string, + oboInOwl:id "GO:0001533"^^xsd:string + + SubClassOf: + obo:GO_0005856 + + +Class: obo:GO_0015030 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cajal_body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10944589"^^xsd:string, + oboInOwl:hasDbXref "PMID:11031238"^^xsd:string, + oboInOwl:hasDbXref "PMID:7559785"^^xsd:string, + oboInOwl:hasDbXref "http://genetics.cwru.edu/matera3.html"^^xsd:string + obo:IAO_0000115 "A class of nuclear body, first seen after silver staining by Ramon y Cajal in 1903, enriched in small nuclear ribonucleoproteins, and certain general RNA polymerase II transcription factors; ultrastructurally, they appear as a tangle of coiled, electron-dense threads roughly 0.5 micrometers in diameter; involved in aspects of snRNP biogenesis; the protein coilin serves as a marker for Cajal bodies. Some argue that Cajal bodies are the sites for preassembly of transcriptosomes, unitary particles involved in transcription and processing of RNA."^^xsd:string, + oboInOwl:hasExactSynonym "Gems"^^xsd:string, + oboInOwl:hasExactSynonym "coiled body"^^xsd:string, + rdfs:label "Cajal body"^^xsd:string, + oboInOwl:id "GO:0015030"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0019013 + + Annotations: + oboInOwl:hasExactSynonym "nucleocapsid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0781702534"^^xsd:string + obo:IAO_0000115 "The complete protein-nucleic acid complex that is the packaged form of the genome in a virus particle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019013"^^xsd:string, + oboInOwl:hasBroadSynonym "core"^^xsd:string, + rdfs:label "viral nucleocapsid"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0019014"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0019028, + obo:GO_0044423 + + +Class: obo:GO_0019016 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pk"^^xsd:string + obo:IAO_0000115 "A viral genome that consists of one continuous nucleic acid molecule."^^xsd:string, + oboInOwl:id "GO:0019016"^^xsd:string, + rdfs:label "non-segmented viral genome"^^xsd:string + + SubClassOf: + obo:GO_0019015 + + +Class: obo:GO_0019015 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral genome"^^xsd:string, + oboInOwl:id "GO:0019015"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The whole of the genetic information of a virus, contained as either DNA or RNA."^^xsd:string + + SubClassOf: + obo:GO_0044423 + + +Class: obo:GO_0019018 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A segmented viral genome consisting of two sub-genomic nucleic acids but each nucleic acid is packaged into a different virion."^^xsd:string, + oboInOwl:id "GO:0019018"^^xsd:string, + rdfs:label "bipartite viral genome"^^xsd:string + + SubClassOf: + obo:GO_0019017 + + +Class: obo:GO_0019017 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A viral genome that is divided into two or more physically separate molecules of nucleic acid and packaged into a single virion."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "segmented viral genome"^^xsd:string, + oboInOwl:id "GO:0019017"^^xsd:string + + SubClassOf: + obo:GO_0019015 + + +Class: obo:GO_0019019 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A segmented viral genome consisting of three sub-genomic nucleic acids but each nucleic acid is packaged into a different virion."^^xsd:string, + oboInOwl:id "GO:0019019"^^xsd:string, + rdfs:label "tripartite viral genome"^^xsd:string + + SubClassOf: + obo:GO_0019017 + + +Class: obo:GO_0070477 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15035041"^^xsd:string, + oboInOwl:hasDbXref "PMID:18035610"^^xsd:string + obo:IAO_0000115 "An intracellular part that represents the innermost portion of an endospore; the endospore core is dehydrated, enriched in dipicolinic acid and divalent cations, and metabolically inactive."^^xsd:string, + rdfs:label "endospore core"^^xsd:string, + oboInOwl:id "GO:0070477"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0001527 + + Annotations: + oboInOwl:hasRelatedSynonym "fibrillin"^^xsd:string, + oboInOwl:hasExactSynonym "extended fibrils"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0001527"^^xsd:string, + rdfs:label "microfibril"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.xrefer.com/entry/490235"^^xsd:string + obo:IAO_0000115 "Extracellular matrix components occurring independently or along with elastin. Thought to have force-bearing functions in tendon. In addition to fibrillins, microfibrils may contain other associated proteins."^^xsd:string + + SubClassOf: + obo:GO_0043205 + + +Class: obo:GO_0019005 + + Annotations: + oboInOwl:hasExactSynonym "cullin-RING ligase 1"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019005"^^xsd:string, + oboInOwl:hasExactSynonym "CRL1 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Skp1/Cul1/F-box protein complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:SCF_complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1)."^^xsd:string, + oboInOwl:hasExactSynonym "SCF complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "SCF complex substrate recognition subunit"^^xsd:string, + rdfs:label "SCF ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "Cul1-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "CDL1 complex"^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0001520 + + Annotations: + rdfs:label "outer dense fiber"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0824072820"^^xsd:string + obo:IAO_0000115 "Structure or material found in the flagella of mammalian sperm that surrounds each of the nine microtubule doublets, giving a 9 + 9 + 2 arrangement rather than the 9 + 2 pattern usually seen. These dense fibers are stiff and noncontractile."^^xsd:string, + oboInOwl:id "GO:0001520"^^xsd:string, + oboInOwl:hasExactSynonym "outer dense fibre"^^xsd:string + + SubClassOf: + obo:GO_0044447 + + +Class: obo:GO_0070470 + + Annotations: + oboInOwl:id "GO:0070470"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A respiratory chain located in the plasma membrane of a cell; made up of the protein complexes that form the mitochondrial electron transport system (the respiratory chain), associated with the plasma membrane. The respiratory chain complexes transfer electrons from an electron donor to an electron acceptor and are associated with a proton pump to create a transmembrane electrochemical gradient."^^xsd:string, + rdfs:label "plasma membrane respiratory chain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "plasma membrane electron transport chain"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0070469 + + +Class: obo:GO_0019008 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0019009"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12571227"^^xsd:string, + oboInOwl:hasDbXref "PMID:15709772"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses molybdopterin synthase activity. In E. coli, the complex is a heterotetramer consisting of two MoaD and two MoaE subunits."^^xsd:string, + oboInOwl:id "GO:0019008"^^xsd:string, + oboInOwl:hasExactSynonym "molybdopterin converting factor complex"^^xsd:string, + rdfs:label "molybdopterin synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0035658 + + Annotations: + rdfs:label "Mon1-Ccz1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035658"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:20797862"^^xsd:string + obo:IAO_0000115 "A protein complex that functions as a guanine nucleotide exchange factor (GEF) and converts Rab-GDP to Rab-GTP. In S. cerevisiae, this complex consists of at least Mon1 and Ccz1, and serves as a GEF for the Rab Ypt7p."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005770, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0033768 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17762864"^^xsd:string, + oboInOwl:hasDbXref "PMID:17762865"^^xsd:string + obo:IAO_0000115 "A nuclear ubiquitin ligase complex that specifically targets SUMOylated proteins; the complex is formed of homodimers or heterodimers of RNF4 family ubiquitin ligases and is conserved in eukaryotes."^^xsd:string, + rdfs:label "SUMO-targeted ubiquitin ligase complex"^^xsd:string, + oboInOwl:id "GO:0033768"^^xsd:string + + SubClassOf: + obo:GO_0000152 + + +Class: obo:GO_0035657 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17008308"^^xsd:string + oboInOwl:hasExactSynonym "eRF1 MTase complex"^^xsd:string, + oboInOwl:id "GO:0035657"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:17008308"^^xsd:string, + oboInOwl:hasDbXref "PMID:20400505"^^xsd:string + obo:IAO_0000115 "A protein complex required for the methylation of a glutamine (Gln) residue in the protein release factor eRF1. In S. cerevisiae, this complex consists of at least Trm112p and Mtq2p."^^xsd:string, + rdfs:label "eRF1 methyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0034708 + + +Class: obo:GO_0070467 + + Annotations: + rdfs:label "RC-1 DNA recombination complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:364"^^xsd:string + oboInOwl:hasExactSynonym "RC-1 complex (recombination complex 1)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8392064"^^xsd:string, + oboInOwl:hasDbXref "PMID:8670910"^^xsd:string + obo:IAO_0000115 "A protein complex that contains DNA ligase III, DNA polymerase epsilon, a 5'-3' exonuclease, and the SMC1 and SMC2 proteins, and is involved in recombinational repair of deletions and gaps in DNA."^^xsd:string, + oboInOwl:id "GO:0070467"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "DNA recombination complex RC-1"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070465 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2434"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA1-ITGB1-COL6A3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8387021"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha1-beta1 integrin complex bound to a type VI collagen triple helix containing an alpha3(VI) chain."^^xsd:string, + rdfs:label "alpha1-beta1 integrin-alpha3(VI) complex"^^xsd:string, + oboInOwl:id "GO:0070465"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0033774 + + Annotations: + oboInOwl:id "GO:0033774"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:11640882"^^xsd:string + obo:IAO_0000115 "A region in the lower half of some cells formed from extensive infoldings of the basal plasma membrane; includes cytoplasm adjacent to the infolded membrane."^^xsd:string, + rdfs:label "basal labyrinth"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045178, + obo:GO_0044464 + + +Class: obo:GO_0070466 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha2-beta1 integrin-alpha3(VI) complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8387021"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha2-beta1 integrin complex bound to a type VI collagen triple helix containing an alpha3(VI) chain."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2431"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2-ITGB1-COL6A3 complex"^^xsd:string, + oboInOwl:id "GO:0070466"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070464 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070464"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8387021"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to the alpha3 chain of type VI collagen; the integrin binds most strongly to unfolded collagen."^^xsd:string, + rdfs:label "alphav-beta3 integrin-collagen alpha3(VI) complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070461 + + Annotations: + rdfs:label "SAGA-type complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17337012"^^xsd:string + oboInOwl:hasExactSynonym "SAGA family complex"^^xsd:string, + oboInOwl:id "GO:0070461"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10637607"^^xsd:string, + oboInOwl:hasDbXref "PMID:17337012"^^xsd:string + obo:IAO_0000115 "A histone acetyltransferase complex that acetylates nucleosomal H3 and H2B and is required for the expression of a subset of Pol II-transcribed genes. The budding yeast complex includes the acetyltransferase Gcn5p, several proteins of the Spt and Ada families, and several TBP-associate proteins (TAFs); analogous complexes in other species have analogous compositions, and usually contain homologs of the yeast proteins."^^xsd:string + + SubClassOf: + obo:GO_0000123 + + +Class: obo:GO_0033553 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033553"^^xsd:string, + rdfs:label "rDNA heterochromatin"^^xsd:string, + oboInOwl:hasExactSynonym "ribosomal DNA heterochromatin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A region of heterochromatin located at the rDNA repeats in a chromosome."^^xsd:string + + SubClassOf: + obo:GO_0000792 + + +Class: obo:GO_0016600 + + Annotations: + oboInOwl:id "GO:0016600"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17206938"^^xsd:string, + oboInOwl:hasDbXref "PMID:17600709"^^xsd:string + obo:IAO_0000115 "A protein complex that contains flotillin-1 and flotillin-2, and may contain associated proteins. Flotillins associate into membrane microdomains resembling caveolae."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "flotillin complex"^^xsd:string, + rdfs:comment "See also the cellular component term 'caveola ; GO:0005901'."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0005901, + obo:GO_0043234 + + +Class: obo:GO_0001518 + + Annotations: + oboInOwl:hasExactSynonym "voltage-sensitive sodium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "voltage gated sodium channel complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "voltage-gated sodium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "voltage-dependent sodium channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A sodium channel in a cell membrane whose opening is governed by the membrane potential."^^xsd:string, + oboInOwl:id "GO:0001518"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao785001660"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0034706 + + +Class: obo:GO_0016602 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:7828851"^^xsd:string + obo:IAO_0000115 "A heteromeric transcription factor complex that binds to the CCAAT-box upstream of promoters; in Saccharomyces it activates the transcription of genes in response to growth in a nonfermentable carbon source; consists of four known subunits: HAP2, HAP3, HAP4 and HAP5."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016602"^^xsd:string, + rdfs:label "CCAAT-binding factor complex"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0070469 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The protein complexes that form the electron transport system (the respiratory chain), associated with a cell membrane, usually the plasma membrane (in prokaryotes) or the inner mitochondrial membrane (on eukaryotes). The respiratory chain complexes transfer electrons from an electron donor to an electron acceptor and are associated with a proton pump to create a transmembrane electrochemical gradient."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "membrane electron transport chain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070469"^^xsd:string, + rdfs:label "respiratory chain"^^xsd:string + + SubClassOf: + obo:GO_0044425 + + +Class: obo:GO_0033551 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:17627824"^^xsd:string + obo:IAO_0000115 "A protein complex required for clamping microtubule binding sites, ensuring orientation of sister kinetochores to the same pole (mono-orientation) during meiosis I. In the yeast S. cerevisiae this complex consists of Csm1p, Lrs4p, Hrr25p and Mam1p; in S. pombe Psc1 and Mde4 have been identified as subunits."^^xsd:string, + oboInOwl:id "GO:0033551"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "monopolin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "monopolin subcomplex Csm1/Lrs4"^^xsd:string, + oboInOwl:hasNarrowSynonym "Pcs1/Mde4 complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000777, + obo:GO_0043234 + + +Class: obo:GO_0016604 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016604"^^xsd:string, + rdfs:label "nuclear body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string, + oboInOwl:hasDbXref "PMID:10330182"^^xsd:string + obo:IAO_0000115 "Extra-nucleolar nuclear domains usually visualized by confocal microscopy and fluorescent antibodies to specific proteins."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao505137457"^^xsd:string + + SubClassOf: + obo:GO_0044451 + + +Class: obo:GO_0015050 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "BRENDA:1.14.13.25"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses methane monooxygenase activity; dimeric and trimeric complexes have been characterized."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "methane monooxygenase complex"^^xsd:string, + oboInOwl:id "GO:0015050"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0032590 + + Annotations: + rdfs:label "dendrite membrane"^^xsd:string, + oboInOwl:id "GO:0032590"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a dendrite."^^xsd:string + + SubClassOf: + obo:GO_0032589 + + +Class: obo:GO_0016607 + + Annotations: + oboInOwl:hasNarrowSynonym "speckle domain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.cellnucleus.com/"^^xsd:string + obo:IAO_0000115 "A discrete extra-nucleolar subnuclear domain, 20-50 in number, in which splicing factors are seen to be localized by immunofluorescence microscopy."^^xsd:string, + oboInOwl:hasExactSynonym "nuclear speckles"^^xsd:string, + oboInOwl:hasRelatedSynonym "speckle focus"^^xsd:string, + rdfs:label "nuclear speck"^^xsd:string, + oboInOwl:hasExactSynonym "splicing speckle"^^xsd:string, + oboInOwl:id "GO:0016607"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear speckle"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0016606 + + Annotations: + rdfs:label "LYSP100-associated nuclear domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10921892"^^xsd:string, + oboInOwl:hasDbXref "PMID:8695863"^^xsd:string + obo:IAO_0000115 "A nuclear body that is enriched in the lymphoid cell-specific protein LYSp100B; LANDs are globular, electron-dense structures and are morphologically distinct from the annular structures characteristic of PML bodies."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8695863"^^xsd:string + oboInOwl:hasExactSynonym "LANDs"^^xsd:string, + oboInOwl:id "GO:0016606"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0016605 + + Annotations: + oboInOwl:hasExactSynonym "ND10"^^xsd:string, + rdfs:label "PML body"^^xsd:string, + oboInOwl:hasRelatedSynonym "nuclear dot"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string, + oboInOwl:hasDbXref "PMID:10944585"^^xsd:string + obo:IAO_0000115 "A class of nuclear body; they react against SP100 auto-antibodies (PML, promyelocytic leukemia); cells typically contain 10-30 PML bodies per nucleus; alterations in the localization of PML bodies occurs after viral infection."^^xsd:string, + oboInOwl:hasExactSynonym "PML nuclear body"^^xsd:string, + oboInOwl:id "GO:0016605"^^xsd:string, + oboInOwl:hasExactSynonym "PML NB"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0032593 + + Annotations: + oboInOwl:hasRelatedSynonym "IRC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "GSC"^^xsd:string, + rdfs:label "insulin-responsive compartment"^^xsd:string, + oboInOwl:hasExactSynonym "GLUT4 storage compartment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17644329"^^xsd:string + obo:IAO_0000115 "A small membrane-bounded vesicle that releases its contents by exocytosis in response to insulin stimulation; the contents are enriched in GLUT4, IRAP and VAMP2."^^xsd:string, + oboInOwl:id "GO:0032593"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0010009 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "external side of endosome membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string + obo:IAO_0000115 "The external (cytoplasmic face) of an endosome membrane."^^xsd:string, + oboInOwl:id "GO:0010009"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0044440 + + +Class: obo:GO_0032591 + + Annotations: + rdfs:label "dendritic spine membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a dendritic spine."^^xsd:string, + oboInOwl:id "GO:0032591"^^xsd:string + + SubClassOf: + obo:GO_0032589, + obo:BFO_0000050 some obo:GO_0043197 + + +Class: obo:GO_0032592 + + Annotations: + rdfs:label "integral to mitochondrial membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of a mitochondrial membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:id "GO:0032592"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:GO_0031301 + + +Class: obo:GO_0000446 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:11060033"^^xsd:string, + oboInOwl:hasDbXref "PMID:11979277"^^xsd:string, + oboInOwl:hasDbXref "PMID:16983072"^^xsd:string + obo:IAO_0000115 "The THO complex when it is acting as a nuclear complex that is required for transcription elongation through genes containing tandemly repeated DNA sequences. In S. cerevisiae, it is composed of four subunits: Hpr1, Tho2, Thp1, and Mft1, while the human complex is composed of 7 subunits."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000446"^^xsd:string, + rdfs:label "nucleoplasmic THO complex"^^xsd:string + + SubClassOf: + obo:GO_0000347, + obo:GO_0008023 + + +Class: obo:GO_0010005 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0943088399"^^xsd:string + obo:IAO_0000115 "Arrays of microtubules underlying and connected to the plasma membrane, in the cortical cytosol, oriented mainly with their axes transverse to the long axis of the cell (and root in plants). In plants it influences the direction of cellulose microfibril deposition."^^xsd:string, + rdfs:label "cortical microtubule, transverse to long axis"^^xsd:string, + oboInOwl:id "GO:0010005"^^xsd:string + + SubClassOf: + obo:GO_0055028 + + +Class: obo:GO_0010006 + + Annotations: + rdfs:label "Toc complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10646606"^^xsd:string + obo:IAO_0000115 "Protein translocon complex at the chloroplast outer membrane."^^xsd:string, + oboInOwl:id "GO:0010006"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009707, + obo:GO_0044425, + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0042272 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "NXF1-NXT1 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Mex67-Mtr2 complex"^^xsd:string, + rdfs:label "nuclear RNA export factor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11780633"^^xsd:string + obo:IAO_0000115 "A protein complex that contains two proteins (know in several organisms, including Drosophila, as NXF1 and NXF2) and is required for the export of the majority of mRNAs from the nucleus to the cytoplasm; localized in the nucleoplasm and at both the nucleoplasmic and cytoplasmic faces of the nuclear pore complex; shuttles between the nucleus and the cytoplasm."^^xsd:string, + oboInOwl:hasExactSynonym "TAP-p15 complex"^^xsd:string, + oboInOwl:id "GO:0042272"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0010007 + + Annotations: + rdfs:label "magnesium chelatase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11842180"^^xsd:string + obo:IAO_0000115 "A heterotrimeric enzyme complex composed of three subunits, all of which are required for enzyme activity, which catalyzes the chelation of Mg by proto IX in an ATP-dependent manner."^^xsd:string, + oboInOwl:id "GO:0010007"^^xsd:string + + SubClassOf: + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0010008 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "endosome membrane"^^xsd:string, + oboInOwl:id "GO:0010008"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an endosome."^^xsd:string + + SubClassOf: + obo:GO_0031090, + obo:GO_0044440 + + +Class: obo:GO_0070450 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "IL4-IL4 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1515"^^xsd:string + oboInOwl:hasNarrowSynonym "IL4-IL4R-IL2RG complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0070450"^^xsd:string, + rdfs:label "interleukin4-interleukin-4 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10358772"^^xsd:string + obo:IAO_0000115 "A protein complex that is formed by the association of a heterodimeric interleukin-4 receptor complex with an interleukin-4 molecule."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0035693 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "NOS2-CD74 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:18003616"^^xsd:string + obo:IAO_0000115 "A protein complex comprising nitric oxide synthase 2 and CD74. This stable complex formation is thought to prevent CD74 degradation by caspases."^^xsd:string, + oboInOwl:id "GO:0035693"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0070451 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "imaginal disc-derived wing hair"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0070451"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11526084"^^xsd:string + obo:IAO_0000115 "A long, thin cell projection that contains F-actin and tubulin, with microtubules centrally located and F-actin peripherally located."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Membrane_nanotube"^^xsd:string, + rdfs:label "cell hair"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "non-sensory hair"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0032589 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a neuron projection."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "neuron projection membrane"^^xsd:string, + oboInOwl:id "GO:0032589"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043005, + obo:GO_0031256, + obo:GO_0031253 + + +Class: obo:GO_0032588 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi trans face membrane"^^xsd:string, + oboInOwl:id "GO:0032588"^^xsd:string, + oboInOwl:hasExactSynonym "trans Golgi network membrane"^^xsd:string, + rdfs:label "trans-Golgi network membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the compartments that make up the trans-Golgi network."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005802, + obo:GO_0000139 + + +Class: obo:GO_0045180 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "The region that lies just beneath the plasma membrane on the basal edge of a cell."^^xsd:string, + oboInOwl:id "GO:0045180"^^xsd:string, + rdfs:label "basal cortex"^^xsd:string + + EquivalentTo: + obo:GO_0044448 + and (obo:BFO_0000050 some obo:GO_0045178) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045178, + obo:GO_0044448 + + +Class: obo:GO_0016612 + + Annotations: + + Annotations: oboInOwl:hasDbXref "EC:1.18.6.1"^^xsd:string + obo:IAO_0000115 "An enzyme complex containing a molybdenum-iron cluster found in many species. It is composed of two proteins, dinitrogenase and nitrogenase reductase; dinitrogenase, the molybdenum-iron protein, is tetrameric with an alpha2-beta2 structure, and nitrogenase reductase is a homodimer."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0016612"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "molybdenum-iron nitrogenase activity"^^xsd:string, + rdfs:label "molybdenum-iron nitrogenase complex"^^xsd:string + + SubClassOf: + obo:GO_0016610 + + +Class: obo:GO_0016613 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016613"^^xsd:string, + rdfs:label "vanadium-iron nitrogenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.18.6.1"^^xsd:string, + oboInOwl:hasDbXref "PMID:3474027"^^xsd:string + obo:IAO_0000115 "An enzyme complex containing a vanadium-iron cluster found in some species, such as Azotobacter vinelandii. It is composed of two proteins, dinitrogenase and nitrogenase reductase; dinitrogenase, the vanadium-iron protein, is tetrameric with an alpha2-beta2 structure, and nitrogenase reductase is a homodimer."^^xsd:string, + oboInOwl:hasRelatedSynonym "vanadium-iron nitrogenase activity"^^xsd:string + + SubClassOf: + obo:GO_0016610 + + +Class: obo:GO_0016610 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016610"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "EC:1.18.6.1"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CPLX-186"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CPLX-525"^^xsd:string + obo:IAO_0000115 "An enzyme complex composed of two proteins, dinitrogenase and nitrogenase reductase; dinitrogenase is tetrameric with an alpha2-beta2 structure and nitrogenase reductase is a homodimer, and both are associated with metal ions, which differ between species. Both proteins are required for the enzyme activity of the complex, the formation of oxidized ferredoxin and ammonia from reduced ferredoxin and nitrogen."^^xsd:string, + rdfs:label "nitrogenase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0016611 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "iron-iron nitrogenase complex"^^xsd:string, + oboInOwl:id "GO:0016611"^^xsd:string, + rdfs:comment "Note that it is not established whether the nitrogenase exists in vivo in a specific particle or whether the nitrogenase proteins are bound nonspecifically to the membranes of some cells."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.18.6.1"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11848850"^^xsd:string + obo:IAO_0000115 "An enzyme complex containing an iron-iron cluster found in species such as the photosynthetic bacterium Rhodobacter capsulatus. It is composed of two main subunits, dinitrogenase and nitrogenase reductase. Dinitrogenase, the iron-iron containing subunit, has an alpha1-beta2 or alpha2-beta2 structure, and the nitrogenase reductase subunit is a homodimer. Functions in the catalysis of the formation of oxidized ferredoxin and ammonia from reduced ferredoxin and nitrogen."^^xsd:string + + SubClassOf: + obo:GO_0016610 + + +Class: obo:GO_0035692 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:12782713"^^xsd:string, + oboInOwl:hasDbXref "PMID:17045821"^^xsd:string + obo:IAO_0000115 "A protein complex that binds macrophage migration inhibitory factor. Comprises CD74 and CD44 cell surface proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035692"^^xsd:string, + rdfs:label "macrophage migration inhibitory factor receptor complex"^^xsd:string + + SubClassOf: + obo:GO_0043235 + + +Class: obo:GO_0070441 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "G-protein beta/gamma-Btk complex"^^xsd:string, + oboInOwl:id "GO:0070441"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3195"^^xsd:string + oboInOwl:hasRelatedSynonym "G protein complex (Btk, Gng2, Gnb1)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7972043"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the Bruton tyrosine protein kinase Btk, which is implicated in mammalian X-linked immunodeficiencies, with the beta and gamma subunits of a heterotrimeric G protein."^^xsd:string, + rdfs:comment "See also the cellular component term 'heterotrimeric G-protein complex ; GO:0005834'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1615"^^xsd:string + oboInOwl:hasRelatedSynonym "G protein complex (BTK, GNG1, GNG2)"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0072588 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "box H/ACA snoRNP pseudouridylase complex"^^xsd:string, + oboInOwl:id "GO:0072588"^^xsd:string, + rdfs:label "box H/ACA RNP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284456"^^xsd:string, + oboInOwl:hasDbXref "PMID:20227365"^^xsd:string + oboInOwl:hasNarrowSynonym "sRNP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284456"^^xsd:string, + oboInOwl:hasDbXref "PMID:20227365"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains an RNA of the box H/ACA type, a subtype of the small nucleolar RNA (snoRNA) family. RNA pseudouridylation (isomerization of uridine to pseudouridine) is the major, and most likely the ancestral, function of H/ACA RNPs, although some have evolved other functions. Pseudouridylation targets include both large and small ribosomal RNAs (rRNAs), and on U2 small nuclear RNA (U2 snRNA)."^^xsd:string + + SubClassOf: + obo:GO_0005732 + + +Class: obo:GO_0072589 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "box H/ACA scaRNP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:20227365"^^xsd:string + oboInOwl:hasExactSynonym "nucleoplasmic box H/ACA RNP pseudouridylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284456"^^xsd:string, + oboInOwl:hasDbXref "PMID:20227365"^^xsd:string + obo:IAO_0000115 "A box H/ACA RNP complex that is located in the Cajal body of the nucleoplasm. In higher eukaryotes, box H/ACA RNP located in Cajal bodies mediate pseudouridylation of spliceosomal snRNAs."^^xsd:string, + oboInOwl:id "GO:0072589"^^xsd:string + + SubClassOf: + obo:GO_0072588, + obo:GO_0044451, + obo:BFO_0000050 some obo:GO_0015030 + + +Class: obo:GO_0070442 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070442"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12297042"^^xsd:string + obo:IAO_0000115 "An integrin complex that comprises one alphaIIb subunit and one beta3 subunit."^^xsd:string, + rdfs:label "alphaIIb-beta3 integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2381"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA2B-ITGB3 complex"^^xsd:string + + SubClassOf: + obo:GO_0008305 + + +Class: obo:GO_0070440 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070440"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7889570"^^xsd:string + obo:IAO_0000115 "A transcriptional repressor complex that contains a heterodimer of the bHLH-ZIP proteins Mad and Max, plus mSin3B, a homolog of the yeast Sin3p."^^xsd:string, + rdfs:label "Mad-Max-mSin3B complex"^^xsd:string + + SubClassOf: + obo:GO_0017053 + + +Class: obo:GO_0070443 + + Annotations: + oboInOwl:id "GO:0070443"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Mad-Max complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8224841"^^xsd:string + obo:IAO_0000115 "A transcriptional repressor complex that consists of a heterodimer of the bHLH-ZIP proteins Mad and Max."^^xsd:string + + SubClassOf: + obo:GO_0017053 + + +Class: obo:GO_0035686 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "flagellum fibrous sheath"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20731842"^^xsd:string, + oboInOwl:hasDbXref "PMID:3282552"^^xsd:string + obo:IAO_0000115 "A cytoskeletal structure surrounding the axoneme and outer dense fibers of the sperm flagellum. Consists of two longitudinal columns connected by closely arrayed semicircular ribs that assemble from distal to proximal throughout spermiogenesis. The fibrous sheath probably influences the degree of flexibility, plane of flagellar motion, and the shape of the flagellar beat."^^xsd:string, + rdfs:label "flagellar fibrous sheath"^^xsd:string, + oboInOwl:id "GO:0035686"^^xsd:string + + SubClassOf: + obo:GO_0044442 + + +Class: obo:GO_0070449 + + Annotations: + rdfs:label "elongin complex"^^xsd:string, + rdfs:comment "See also the cellular component terms 'cyclin-dependent protein kinase activating kinase holoenzyme complex ; GO:0019907' and 'DNA-directed RNA polymerase II, holoenzyme ; GO:0016591'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12676794"^^xsd:string + obo:IAO_0000115 "A transcription elongation factor complex that suppresses RNA polymerase II pausing, and may act by promoting proper alignment of the 3'-end of nascent transcripts with the polymerase catalytic site. Consists of a transcriptionally active Elongin A subunit (abut 100 kDa)and two smaller Elongin B (about 18 kDa) and Elongin C (about 15 kDa)subunits."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8244996"^^xsd:string + oboInOwl:hasExactSynonym "transcription elongation factor SIII complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:56"^^xsd:string + oboInOwl:hasExactSynonym "elongin (SIII) complex"^^xsd:string, + oboInOwl:id "GO:0070449"^^xsd:string + + SubClassOf: + obo:GO_0008023 + + +Class: obo:GO_0000427 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plastid-encoded plastid RNA polymerase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pj"^^xsd:string + obo:IAO_0000115 "An RNA polymerase complex containing polypeptides encoded by the plastid genome. Plastid-encoded DNA-directed RNA polymerases resemble eubacterial multisubunit RNA polymerases, with a core composed of alpha, beta, and beta-prime subunits. Some forms contain multiple additional subunits. An additional sigma factor subunit is required for promoter recognition."^^xsd:string, + oboInOwl:id "GO:0000427"^^xsd:string + + EquivalentTo: + obo:GO_0000428 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0000428 + + +Class: obo:GO_0000428 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses DNA-directed RNA polymerase activity."^^xsd:string, + oboInOwl:id "GO:0000428"^^xsd:string, + rdfs:label "DNA-directed RNA polymerase complex"^^xsd:string + + SubClassOf: + obo:GO_0030880 + + +Class: obo:GO_0046610 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "lysosomal proton-transporting V-type ATPase, V0 domain"^^xsd:string, + oboInOwl:hasExactSynonym "lysosomal hydrogen ion-transporting ATPase V0 domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The V0 domain of a proton-transporting V-type ATPase found in the lysosomal membrane."^^xsd:string, + oboInOwl:id "GO:0046610"^^xsd:string + + EquivalentTo: + obo:GO_0033179 + and (obo:BFO_0000050 some obo:GO_0005764) + + SubClassOf: + obo:GO_0000220, + obo:BFO_0000050 some obo:GO_0046611 + + +Class: obo:GO_0005786 + + Annotations: + oboInOwl:hasExactSynonym "signal sequence receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein particle of 325 kDa composed of a 7S (300 nucleotide) RNA molecule and a complex of six different polypeptides. This binds both to the N-terminal signal peptide for proteins destined for the endoplasmic reticulum as they emerge from the large ribosomal subunit and also to the ribosome. This binding arrests further translation thereby preventing the proteins from being released into the cytosol. The SRP-ribosome complex then diffuses to the endoplasmic reticulum where it is bound to the signal recognition particle receptor, which allows resumption of protein synthesis and facilitates the passage of the growing polypeptide chain through the translocon. Through a process involving GTP hydrolysis, the SRP-SRP receptor complex dissociates and SRP returns to the cytosol. Of the six polypeptides of SRP the 54 kDa subunit (SRP54) is the central player. It contains an N-terminal GTPase domain and a C-terminal domain that binds directly to the signal peptide and the SRP RNA. Examples of this component are found in Mus musculus, Saccharomyces cerevisiae and Arabidopsis thaliana."^^xsd:string, + oboInOwl:hasExactSynonym "SRP"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005855"^^xsd:string, + rdfs:label "signal recognition particle, endoplasmic reticulum targeting"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Signal_recognition_particle"^^xsd:string, + oboInOwl:id "GO:0005786"^^xsd:string + + SubClassOf: + obo:GO_0048500 + + +Class: obo:GO_0005787 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sgd_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:1846444"^^xsd:string, + oboInOwl:hasDbXref "PMID:7615509"^^xsd:string + obo:IAO_0000115 "A protein complex that is located in the endoplasmic reticulum membrane and cleaves the signal sequence from precursor proteins following their transport out of the cytoplasmic space."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005787"^^xsd:string, + rdfs:label "signal peptidase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0046612 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The V1 domain of a proton-transporting V-type ATPase found in the lysosomal membrane."^^xsd:string, + rdfs:label "lysosomal proton-transporting V-type ATPase, V1 domain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "lysosomal hydrogen ion-transporting ATPase V1 domain"^^xsd:string, + oboInOwl:id "GO:0046612"^^xsd:string + + EquivalentTo: + obo:GO_0033180 + and (obo:BFO_0000050 some obo:GO_0005764) + + SubClassOf: + obo:GO_0000221, + obo:BFO_0000050 some obo:GO_0046611 + + +Class: obo:GO_0005784 + + Annotations: + rdfs:label "Sec61 translocon complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "Sec61p-Sbh1p-Sss1p complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0005784"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18166647"^^xsd:string + obo:IAO_0000115 "A translocon complex that contains a core heterotrimer of conserved alpha, beta and gamma subunits, and may contain additional proteins (translocon-associated proteins or TRAPs); in budding yeast the core proteins are Sec61p, Sbh1p, and Sss1p. The Sec61 translocon complex functions in cotranslational and posttranslational translocation events."^^xsd:string + + SubClassOf: + obo:GO_0071256 + + +Class: obo:GO_0000800 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ascb_2009"^^xsd:string, + oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string + oboInOwl:hasExactSynonym "axial element"^^xsd:string, + rdfs:label "lateral element"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A proteinaceous core found between sister chromatids during meiotic prophase."^^xsd:string, + oboInOwl:id "GO:0000800"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000795 + + +Class: obo:GO_0046611 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "A proton-transporting two-sector ATPase complex found in the lysosomal membrane, where it acts as a proton pump to mediate acidification of the lysosomal lumen."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "lysosomal hydrogen-translocating V-type ATPase complex"^^xsd:string, + oboInOwl:id "GO:0046611"^^xsd:string, + oboInOwl:hasBroadSynonym "lysosomal membrane hydrogen-transporting ATPase"^^xsd:string, + rdfs:label "lysosomal proton-transporting V-type ATPase complex"^^xsd:string + + EquivalentTo: + obo:GO_0033176 + and (obo:BFO_0000050 some obo:GO_0005764) + + SubClassOf: + obo:GO_0016471, + obo:BFO_0000050 some obo:GO_0005765 + + +Class: obo:GO_0005785 + + Annotations: + rdfs:label "signal recognition particle receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "docking protein complex"^^xsd:string, + oboInOwl:id "GO:0005785"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A transmembrane heterodimeric protein located in the membrane of the rough endoplasmic reticulum. Both subunits contain GTPase domains with which signal recognition particle interacts. In the presence of GTP and SRP receptor, SRP is released from the ribosome-nascent chain complex."^^xsd:string, + oboInOwl:hasExactSynonym "SR complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030867, + obo:GO_0043235, + obo:GO_0044432 + + +Class: obo:GO_0000801 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A structural unit of the synaptonemal complex found between the lateral elements."^^xsd:string, + oboInOwl:id "GO:0000801"^^xsd:string, + rdfs:label "central element"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000795 + + +Class: obo:GO_0000802 + + Annotations: + rdfs:label "transverse filament"^^xsd:string, + oboInOwl:id "GO:0000802"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A structural unit of the synaptonemal complex that spans the regions between the lateral elements and connects them."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000795 + + +Class: obo:GO_0045169 + + Annotations: + rdfs:label "fusome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:12655376"^^xsd:string + obo:IAO_0000115 "A large intracellular spectrin-rich structure that has been found in insect germline cells and mammalian hematopoietic cells. The fusome is an elongated, branched structure, formed from the spherical spectrosome organelle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045169"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0000803 + + Annotations: + oboInOwl:id "GO:0000803"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A chromosome involved in sex determination."^^xsd:string, + rdfs:label "sex chromosome"^^xsd:string + + SubClassOf: + obo:GO_0005694 + + +Class: obo:GO_0005788 + + Annotations: + oboInOwl:hasExactSynonym "cisternal lumen"^^xsd:string, + oboInOwl:hasExactSynonym "ER lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "ER cisterna"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the endoplasmic reticulum."^^xsd:string, + rdfs:label "endoplasmic reticulum lumen"^^xsd:string, + oboInOwl:hasExactSynonym "endoplasmic reticulum cisterna"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0016022"^^xsd:string, + oboInOwl:id "GO:0005788"^^xsd:string + + SubClassOf: + obo:GO_0070013, + obo:GO_0044432 + + +Class: obo:GO_0000804 + + Annotations: + oboInOwl:id "GO:0000804"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0321000382"^^xsd:string + obo:IAO_0000115 "The sex chromosome present in females of species in which the female is the heterogametic sex; generally, the sex chromosome that pairs with the Z chromosome in the heterogametic sex. The W chromosome is absent from the cells of males and present in one copy in the somatic cells of females."^^xsd:string, + rdfs:label "W chromosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:ZW_sex-determination_system"^^xsd:string + + SubClassOf: + obo:GO_0000803 + + +Class: obo:GO_0005789 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "endoplasmic reticulum membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the endoplasmic reticulum."^^xsd:string, + oboInOwl:hasExactSynonym "ER membrane"^^xsd:string, + oboInOwl:id "GO:0005789"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0042175, + obo:GO_0044432 + + +Class: obo:GO_0000805 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000805"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:X_chromosome"^^xsd:string, + rdfs:label "X chromosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0582227089"^^xsd:string + obo:IAO_0000115 "The sex chromosome present in both sexes of species in which the male is the heterogametic sex. Two copies of the X chromosome are present in each somatic cell of females and one copy is present in males."^^xsd:string + + SubClassOf: + obo:GO_0000803 + + +Class: obo:GO_0035632 + + Annotations: + rdfs:label "mitochondrial prohibitin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:12237468"^^xsd:string, + oboInOwl:hasDbXref "PMID:21164222"^^xsd:string + obo:IAO_0000115 "A complex composed of two proteins, prohibitin 1 and prohibitin 2 (PHB1/PHB-1 and PHB2/PHB-2) that is highly conserved amongst eukaryotes and associated with the inner mitochondrial membrane. The mitochondrial prohibitin complex is a macromolecular supercomplex composed of repeating heterodimeric subunits of PHB1 and PHB2. The mitochondrial prohibitin complex plays a role in a number of biological processes, including mitochondrial biogenesis and function, development, replicative senescence, and cell death."^^xsd:string, + oboInOwl:id "GO:0035632"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "mitochondrial inner membrane prohibitin complex"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005743, + obo:GO_0043234 + + +Class: obo:GO_0000806 + + Annotations: + rdfs:label "Y chromosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0582227089"^^xsd:string + obo:IAO_0000115 "The sex chromosome present in males of species in which the male is the heterogametic sex; generally, the sex chromosome that pairs with the X chromosome in the heterogametic sex. The Y chromosome is absent from the cells of females and present in one copy in the somatic cells of males."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Y_chromosome"^^xsd:string, + oboInOwl:id "GO:0000806"^^xsd:string + + SubClassOf: + obo:GO_0000803 + + +Class: obo:GO_0035631 + + Annotations: + oboInOwl:id "GO:0035631"^^xsd:string, + rdfs:label "CD40 receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20614026"^^xsd:string, + oboInOwl:hasDbXref "PMID:9221764"^^xsd:string + obo:IAO_0000115 "A protein complex that contains at least CD40 (a cell surface receptor of the tumour necrosis factor receptor (TNFR) superfamily), and other signaling molecules."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0000807 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0321000382"^^xsd:string + obo:IAO_0000115 "The sex chromosome present in both sexes of species in which the female is the heterogametic sex. Two copies of the Z chromosome are present in each somatic cell of males and one copy is present in females."^^xsd:string, + rdfs:label "Z chromosome"^^xsd:string, + oboInOwl:id "GO:0000807"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:ZW_sex-determination_system"^^xsd:string + + SubClassOf: + obo:GO_0000803 + + +Class: obo:GO_0000808 + + Annotations: + oboInOwl:hasExactSynonym "ORC"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "origin of replication recognition complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Origin_recognition_complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that is located at the replication origins of a chromosome."^^xsd:string, + rdfs:label "origin recognition complex"^^xsd:string, + oboInOwl:id "GO:0000808"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0000809 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "cytoplasmic ORC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "prokaryotic ORC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that is located at the replication origins of a chromosome in the cytoplasm."^^xsd:string, + oboInOwl:id "GO:0000809"^^xsd:string, + rdfs:label "cytoplasmic origin of replication recognition complex"^^xsd:string + + EquivalentTo: + obo:GO_0000808 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000808, + obo:GO_0044444, + obo:BFO_0000050 some obo:GO_0000229 + + +Class: obo:GO_0045160 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9438839"^^xsd:string, + oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class I myosin heavy chain and associated light chains; myosin I heavy chains are single-headed, possess tails of various lengths, and do not self-associate into bipolar filaments; myosin I complexes are involved in diverse processes related to membrane traffic and cell movement."^^xsd:string, + rdfs:label "myosin I complex"^^xsd:string, + oboInOwl:id "GO:0045160"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005782 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005782"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031909"^^xsd:string, + rdfs:label "peroxisomal matrix"^^xsd:string, + oboInOwl:hasExactSynonym "peroxisomal lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The volume contained within the membranes of a peroxisome; in many cells the matrix contains a crystalloid core largely composed of urate oxidase."^^xsd:string + + SubClassOf: + obo:GO_0044439, + obo:GO_0031907 + + +Class: obo:GO_0005783 + + Annotations: + rdfs:label "endoplasmic reticulum"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The ER takes two forms, rough (or granular), with ribosomes adhering to the outer surface, and smooth (with no ribosomes attached)."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Endoplasmic_reticulum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005783"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "ER"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1036339110"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0005780 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005780"^^xsd:string, + rdfs:label "extrinsic to intraperoxisomal membrane"^^xsd:string, + oboInOwl:hasRelatedSynonym "intra-peroxisomal peripheral membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to the intraperoxisomal surface of the peroxisomal membrane, but not integrated into the hydrophobic region."^^xsd:string + + SubClassOf: + obo:GO_0031312, + obo:GO_0044439, + obo:BFO_0000050 some obo:GO_0005778 + + +Class: obo:GO_0035619 + + Annotations: + oboInOwl:hasExactSynonym "root hair cell tip"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035619"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PO:0000029"^^xsd:string + obo:IAO_0000115 "The tip portion of an outgrowth of a root epidermal cell."^^xsd:string, + rdfs:label "root hair tip"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0035618 + + +Class: obo:GO_0000438 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "The core TFIIH complex when it is part of the general transcription factor TFIIH. In S. cerevisiae, it is composed of Rad3p, Tfb1p, Tfb2p, Ssl1p and Tfb4p. In humans, it is composed of ERCC2, p62, p55, p44, p34."^^xsd:string, + rdfs:label "core TFIIH complex portion of holo TFIIH complex"^^xsd:string, + oboInOwl:id "GO:0000438"^^xsd:string + + EquivalentTo: + obo:GO_0000439 + and (obo:BFO_0000050 some obo:GO_0005675) + + SubClassOf: + obo:GO_0044451, + obo:BFO_0000050 some obo:GO_0000443, + obo:GO_0000439 + + +Class: obo:GO_0035618 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PO:0000256"^^xsd:string, + oboInOwl:hasDbXref "http://www.jstor.org/stable/4354264"^^xsd:string + obo:IAO_0000115 "A long, thin projection from a root epidermal cell that contains F-actin and tubulin, and a cell wall."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035618"^^xsd:string, + rdfs:label "root hair"^^xsd:string, + rdfs:comment "This term is a child of 'cell projection' and not 'cell hair' to distinguish it from animal cell hairs, which are morphologically distinct."^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0000439 + + Annotations: + rdfs:label "core TFIIH complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "The 5 subunit core of TFIIH that has tightly associated subunits and is found in both the general transcription factor holo-TFIIH and in the nucleotide-excision repair factor 3 complex. In S. cerevisiae, it is composed of Rad3, Tfb1, Tfb2, Ssl1, Tfb4. In humans, it is composed of XPD, p62, p55, p44, p34."^^xsd:string, + oboInOwl:id "GO:0000439"^^xsd:string + + SubClassOf: + obo:GO_0032806, + obo:BFO_0000050 some obo:GO_0000441 + + +Class: obo:GO_0033503 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "HULC complex"^^xsd:string, + oboInOwl:id "GO:0033503"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17363370"^^xsd:string, + oboInOwl:hasDbXref "PMID:17374714"^^xsd:string + obo:IAO_0000115 "A ubiquitin-conjugating enzyme complex that contains two RING finger proteins, which have ubiquitin ligase activity, in addition to a protein with ubiquitin-conjugating enzyme activity; catalyzes the ubiquitination of histone H2B at lysine 119 (or the equivalent residue). In Schizosaccharomyces the subunits are Rhp1, Brl2/Rfp1 and Brl1/Rfp2."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0031371, + obo:BFO_0000050 some obo:GO_0000792, + obo:GO_0000151 + + +Class: obo:GO_0045177 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045177"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "apical part of cell"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The region of a polarized cell that forms a tip or is distal to a base. For example, in a polarized epithelial cell, the apical region has an exposed surface and lies opposite to the basal lamina that separates the epithelium from other tissue."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0005795 + + Annotations: + oboInOwl:hasNarrowSynonym "dictyosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi cisternae"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The set of thin, flattened membrane-bounded compartments, called cisternae, that form the central portion of the Golgi complex. The stack usually comprises cis, medial, and trans cisternae; the cis- and trans-Golgi networks are not considered part of the stack."^^xsd:string, + oboInOwl:id "GO:0005795"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0016940"^^xsd:string, + rdfs:label "Golgi stack"^^xsd:string + + SubClassOf: + obo:GO_0044431 + + +Class: obo:GO_0000811 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rn"^^xsd:string, + oboInOwl:hasDbXref "PMID:12730134"^^xsd:string, + oboInOwl:hasDbXref "PMID:16990792"^^xsd:string, + oboInOwl:hasDbXref "PMID:17467990"^^xsd:string + obo:IAO_0000115 "A heterotetrameric protein complex that associates with replication origins, where it is required for the initiation of DNA replication, and with replication forks."^^xsd:string, + rdfs:label "GINS complex"^^xsd:string, + oboInOwl:hasExactSynonym "Go, Ichi, Ni and San complex"^^xsd:string, + oboInOwl:id "GO:0000811"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:GO_0043234 + + +Class: obo:GO_0045178 + + Annotations: + oboInOwl:id "GO:0045178"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "basal part of cell"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0185316194"^^xsd:string + obo:IAO_0000115 "The region of a cell situated near the base. For example, in a polarized epithelial cell, the basal surface rests on the basal lamina that separates the epithelium from other tissue."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0005796 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005796"^^xsd:string, + rdfs:label "Golgi lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of any cisterna or subcompartment of the Golgi apparatus, including the cis- and trans-Golgi networks."^^xsd:string + + SubClassOf: + obo:GO_0070013, + obo:GO_0044431 + + +Class: obo:GO_0000812 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14645854"^^xsd:string, + oboInOwl:hasDbXref "PMID:14690608"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex that is involved in chromatin remodeling. It is required for the incorporation of the histone variant H2AZ into chromatin. In S. cerevisiae, the complex contains Swr1p, a Swi2/Snf2-related ATPase, and 12 additional subunits."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "SWR-C"^^xsd:string, + rdfs:label "Swr1 complex"^^xsd:string, + oboInOwl:id "GO:0000812"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0016585, + obo:GO_0044454 + + +Class: obo:GO_0005797 + + Annotations: + rdfs:label "Golgi medial cisterna"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005797"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The middle Golgi cisterna (or cisternae)."^^xsd:string + + SubClassOf: + obo:GO_0031985 + + +Class: obo:GO_0005798 + + Annotations: + rdfs:comment "Note that this definition includes vesicles that are transiently associated with the Golgi."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi vesicle"^^xsd:string, + rdfs:label "Golgi-associated vesicle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao819927218"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any vesicle associated with the Golgi complex and involved in mediating transport within the Golgi or between the Golgi and other parts of the cell."^^xsd:string, + oboInOwl:id "GO:0005798"^^xsd:string + + SubClassOf: + obo:GO_0016023, + obo:GO_0044431 + + +Class: obo:GO_0000815 + + Annotations: + oboInOwl:hasBroadSynonym "Endosomal Sorting Complex Required for Transport"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ESCRT III complex"^^xsd:string, + oboInOwl:id "GO:0000815"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12892785"^^xsd:string, + oboInOwl:hasDbXref "PMID:12900393"^^xsd:string + obo:IAO_0000115 "An endosomal sorting complex required for transport. Consists of two soluble subcomplexes of highly charged coiled-coil proteins and is required for sorting and/or concentration of multivesicular body (MVB) cargoes."^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0045179 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "The region that lies just beneath the plasma membrane on the apical edge of a cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045179"^^xsd:string, + rdfs:label "apical cortex"^^xsd:string + + EquivalentTo: + obo:GO_0044448 + and (obo:BFO_0000050 some obo:GO_0045177) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045177, + obo:GO_0044448 + + +Class: obo:GO_0000813 + + Annotations: + oboInOwl:hasBroadSynonym "Endosomal Sorting Complex Required for Transport"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ESCRT I complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12892785"^^xsd:string, + oboInOwl:hasDbXref "PMID:12900393"^^xsd:string + obo:IAO_0000115 "An endosomal sorting complex required for transport. It consists of the class E vacuolar protein sorting (Vps) proteins and interacts with ubiquitinated cargoes."^^xsd:string, + oboInOwl:id "GO:0000813"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0000814 + + Annotations: + oboInOwl:hasBroadSynonym "Endosomal Sorting Complex Required for Transport"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12892785"^^xsd:string, + oboInOwl:hasDbXref "PMID:12900393"^^xsd:string + obo:IAO_0000115 "An endosomal sorting complex required for transport and functions downstream of ESCRT I complex. It consists of the class E vacuolar protein sorting (Vps) proteins and is required for the membrane recruitment of ESCRT III complex and binds to ubiquitinated cargoes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ESCRT II complex"^^xsd:string, + oboInOwl:id "GO:0000814"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0000440 + + Annotations: + oboInOwl:id "GO:0000440"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "core TFIIH complex portion of NEF3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "The core TFIIH complex when it is part of the nucleotide-excision repair factor 3 (NEF3). In S. cerevisiae, it is composed of Rad3p, Tfb1p, Tfb2p, Ssl1p, and Tfb4p. In humans, it is composed of ERCC2, p62, p55, p44, p34."^^xsd:string + + EquivalentTo: + obo:GO_0000439 + and (obo:BFO_0000050 some obo:GO_0000112) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000442, + obo:GO_0000439 + + +Class: obo:GO_0045170 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "A germline specific spherical organelle, rich in membrane skeletal proteins. Precursor to the fusome."^^xsd:string, + oboInOwl:id "GO:0045170"^^xsd:string, + rdfs:label "spectrosome"^^xsd:string + + SubClassOf: + obo:GO_0043232, + obo:GO_0044444 + + +Class: obo:GO_0000441 + + Annotations: + oboInOwl:id "GO:0000441"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SSL2-core TFIIH complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "A complex which is part of both the general transcription factor TFIIH and the nucleotide-excision repair factor 3 complex. It is composed of the tightly associated 5 subunit core TFIIH subcomplex plus one additional, more loosely associated subunit. The subunits are well conserved from yeast to humans. In S. cerevisiae, the 5-subunit core is composed of Rad3, Tfb1, Tfb2, Ssl1, Tfb4 and the loosely associated subunit is Ssl2p (also called Rad25). In humans, the 5 subunit core is composed of ERCC2, p62, p55, p44, p34 and the loosely associated subunit is XPB."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0000817 + + Annotations: + rdfs:label "COMA complex"^^xsd:string, + oboInOwl:id "GO:0000817"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:se"^^xsd:string, + oboInOwl:hasDbXref "PMID:14633972"^^xsd:string + obo:IAO_0000115 "A multiprotein complex in yeast consisting of Ctf19p, Okp1p, Mcm21p, and Ame1p. This complex bridges the subunits that are in contact with centromeric DNA and the subunits bound to microtubules during kinetochore assembly."^^xsd:string, + oboInOwl:hasExactSynonym "Ctf19p-Okp1p-Mcm1p-Ame1p complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000778, + obo:GO_0044454, + obo:GO_0043234 + + +Class: obo:GO_0005790 + + Annotations: + oboInOwl:id "GO:0005790"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "smooth ER"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Endoplasmic_reticulum#Smooth_endoplasmic_reticulum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The smooth endoplasmic reticulum (ER) has with no ribosomes attached to it. The smooth is the recipient of the proteins synthesized in the rough ER. Those proteins to be exported are passed to the Golgi complex, the resident proteins are returned to the rough ER and the lysosomal proteins after phosphorylation of their mannose residues are passed to the lysosomes. Glycosylation of the glycoproteins also continues. The smooth ER is the site of synthesis of lipids, including the phospholipids. The membranes of the smooth ER also contain enzymes that catalyze a series of reactions to detoxify both lipid-soluble drugs and harmful products of metabolism. Large quantities of certain compounds such as phenobarbital cause an increase in the amount of the smooth ER."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao710427438"^^xsd:string, + oboInOwl:hasExactSynonym "SER"^^xsd:string, + rdfs:label "smooth endoplasmic reticulum"^^xsd:string + + SubClassOf: + obo:GO_0005783 + + +Class: obo:GO_0000818 + + Annotations: + oboInOwl:hasExactSynonym "MIND complex"^^xsd:string, + rdfs:label "nuclear MIS12/MIND type complex"^^xsd:string, + oboInOwl:id "GO:0000818"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Mtw1p Including Nnf1p-Nsl1p-Dsn1p complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:se"^^xsd:string, + oboInOwl:hasDbXref "PMID:14633972"^^xsd:string + obo:IAO_0000115 "A multiprotein kinetochore subcomplex that binds to centromeric chromatin and forms part of the inner kinetochore of a chromosome in the nucleus. It helps to recruit outer kinetochore subunits that will bind to microtubules. Nuclear localization arises in some organisms because the nuclear envelope is not broken down during mitosis. In S. cerevisiae, it consists of at least four proteins: Mtw1p, Nnf1p, Nsl1p, and Dsn1."^^xsd:string + + EquivalentTo: + obo:GO_0000444 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000778, + obo:GO_0044454, + obo:GO_0000444 + + +Class: obo:GO_0031899 + + Annotations: + rdfs:label "chromoplast inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the chromoplast envelope; also faces the chromoplast stroma."^^xsd:string, + oboInOwl:id "GO:0031899"^^xsd:string + + SubClassOf: + obo:GO_0046862, + obo:GO_0009528 + + +Class: obo:GO_0005791 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1881364067"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005791"^^xsd:string, + rdfs:label "rough endoplasmic reticulum"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Endoplasmic_reticulum#Rough_endoplasmic_reticulum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The rough (or granular) endoplasmic reticulum (ER) has ribosomes adhering to the outer surface; the ribosomes are the site of translation of the mRNA for those proteins which are either to be retained within the cisternae (ER-resident proteins), the proteins of the lysosomes, or the proteins destined for export from the cell. Glycoproteins undergo their initial glycosylation within the cisternae."^^xsd:string, + oboInOwl:hasExactSynonym "rough ER"^^xsd:string, + oboInOwl:hasExactSynonym "RER"^^xsd:string + + SubClassOf: + obo:GO_0005783 + + +Class: obo:GO_0000444 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14633972"^^xsd:string, + oboInOwl:hasDbXref "PMID:16585270"^^xsd:string + obo:IAO_0000115 "A multiprotein kinetochore subcomplex that binds to centromeric chromatin and forms part of the inner kinetochore. It helps to recruit outer kinetochore subunits that will bind to microtubules. In humans, it consists of MIS12, DSN1, NSL1 and PMF1."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000444"^^xsd:string, + rdfs:label "MIS12/MIND type complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Mis12 complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000777, + obo:GO_0043234 + + +Class: obo:GO_0031898 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the chromoplast and separating its contents from the rest of the cytoplasm; includes the intermembrane space."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031898"^^xsd:string, + rdfs:label "chromoplast envelope"^^xsd:string + + SubClassOf: + obo:GO_0009526, + obo:BFO_0000050 some obo:GO_0009509 + + +Class: obo:GO_0005792 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005792"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Any of the small, heterogeneous, artifactual, vesicular particles, 50-150 nm in diameter, that are formed when some eukaryotic cells are homogenized and that sediment on centrifugation at 100000 g."^^xsd:string, + oboInOwl:hasRelatedSynonym "microsomal membrane"^^xsd:string, + rdfs:label "microsome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Microsome"^^xsd:string + + SubClassOf: + obo:GO_0042598 + + +Class: obo:GO_0000445 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000445"^^xsd:string, + oboInOwl:hasExactSynonym "THO complex part of TREX complex"^^xsd:string, + rdfs:label "THO complex part of transcription export complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:11060033"^^xsd:string, + oboInOwl:hasDbXref "PMID:11979277"^^xsd:string, + oboInOwl:hasDbXref "PMID:16983072"^^xsd:string + obo:IAO_0000115 "The THO complex when it is part of the TREX (TRanscription EXport) complex that is involved in coupling transcription to export of mRNAs to the cytoplasm. In S. cerevisiae, it is composed of four subunits: Hpr1, Tho2, Thp1, and Mft1, while the human complex is composed of 7 subunits."^^xsd:string + + EquivalentTo: + obo:GO_0000347 + and (obo:BFO_0000050 some obo:GO_0000346) + + SubClassOf: + obo:GO_0000347, + obo:BFO_0000050 some obo:GO_0000346 + + +Class: obo:GO_0031897 + + Annotations: + rdfs:label "Tic complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031897"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12180471"^^xsd:string, + oboInOwl:hasDbXref "PMID:12393016"^^xsd:string + obo:IAO_0000115 "The translocon of the inner envelope of chloroplasts, which facilitates the import of proteins across the chloroplast inner membrane."^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast inner membrane translocase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009706, + obo:GO_0044425, + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0045171 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:9635420"^^xsd:string + obo:IAO_0000115 "A direct link between the cytoplasms of sister cells that allows cells to communicate with one another. Germline intercellular bridges facilitate the passage of cytoplasmic components between cells during development. Intercellular bridges have also been found connecting somatic cells."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intercellular bridge"^^xsd:string, + oboInOwl:id "GO:0045171"^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0005793 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Vesicular-tubular_cluster"^^xsd:string, + rdfs:label "endoplasmic reticulum-Golgi intermediate compartment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Wikipedia:Vesicular-tubular_cluster"^^xsd:string + oboInOwl:hasExactSynonym "vesicular-tubular cluster"^^xsd:string, + oboInOwl:id "GO:0005793"^^xsd:string, + oboInOwl:hasExactSynonym "ERGIC"^^xsd:string, + oboInOwl:hasExactSynonym "pre-Golgi intermediate compartment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pr"^^xsd:string, + oboInOwl:hasDbXref "PMID:16723730"^^xsd:string + obo:IAO_0000115 "A complex system of membrane-bounded compartments located between endoplasmic reticulum (ER) and the Golgi complex, with a distinctive membrane protein composition; involved in ER-to-Golgi transport."^^xsd:string, + oboInOwl:hasExactSynonym "ER-Golgi intermediate compartment"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0000442 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "The SSL2-core TFIIH complex when it is part of the nucleotide-excision repair factor 3 (NEF3). It is composed of the tightly associated 5 subunit core TFIIH subcomplex plus one additional, less tighly associated subunit. The subunits are well conserved from yeast to humans. In S. cerevisiae, the 5-subunit core is composed of Rad3, Tfb1, Tfb2, Ssl1, Tfb4 and the loosely associated subunit is Ssl2p (also called Rad25). In humans, the 5 subunit core is composed of ERCC2, p62, p55, p44, p34 and the loosely associated subunit is XPB."^^xsd:string, + oboInOwl:id "GO:0000442"^^xsd:string, + rdfs:label "SSL2-core TFIIH complex portion of NEF3 complex"^^xsd:string + + EquivalentTo: + obo:GO_0000441 + and (obo:BFO_0000050 some obo:GO_0000112) + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0000112, + obo:GO_0000441 + + +Class: obo:GO_0045172 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:9635420"^^xsd:string, + oboInOwl:hasDbXref "PMID:9655801"^^xsd:string + obo:IAO_0000115 "Germline specific intercellular bridge. During cyst formation in insects, ring canals interconnect the cells of the cyst, facilitating the passage of cytoplasmic components between cells."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045172"^^xsd:string, + rdfs:label "germline ring canal"^^xsd:string + + SubClassOf: + obo:GO_0045171 + + +Class: obo:GO_0005794 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasNarrowSynonym "Golgi ribbon"^^xsd:string, + rdfs:label "Golgi apparatus"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Golgi_apparatus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A compound membranous cytoplasmic organelle of eukaryotic cells, consisting of flattened, ribosome-free vesicles arranged in a more or less regular stack. The Golgi apparatus differs from the endoplasmic reticulum in often having slightly thicker membranes, appearing in sections as a characteristic shallow semicircle so that the convex side (cis or entry face) abuts the endoplasmic reticulum, secretory vesicles emerging from the concave side (trans or exit face). In vertebrate cells there is usually one such organelle, while in invertebrates and plants, where they are known usually as dictyosomes, there may be several scattered in the cytoplasm. The Golgi apparatus processes proteins produced on the ribosomes of the rough endoplasmic reticulum; such processing includes modification of the core oligosaccharides of glycoproteins, and the sorting and packaging of proteins for transport to a variety of cellular locations. Three different regions of the Golgi are now recognized both in terms of structure and function: cis, in the vicinity of the cis face, trans, in the vicinity of the trans face, and medial, lying between the cis and trans regions."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao451912436"^^xsd:string, + oboInOwl:hasBroadSynonym "Golgi"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005794"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:comment "Note that the Golgi apparatus can be located in various places in the cytoplasm. In plants and lower animal cells, the Golgi apparatus exists as many copies of discrete stacks dispersed throughout the cytoplasm, while the Golgi apparatus of interphase mammalian cells is a juxtanuclear, often pericentriolar reticulum, where the discrete Golgi stacks are stitched together to form a compact and interconnected ribbon, sometimes called the Golgi ribbon."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "Golgi complex"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0000443 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "The SSL2-core TFIIH complex when it is part of the general transcription factor TFIIH. It is composed of the tightly associated five subunit core TFIIH subcomplex plus one additional, less tighly associated subunit. The subunits are well conserved from yeast to humans. In S. cerevisiae, the 5-subunit core is composed of Rad3, Tfb1, Tfb2, Ssl1, Tfb4 and the loosely associated subunit is Ssl2p (also called Rad25). In humans, the 5 subunit core is composed of ERCC2, p62, p55, p44, p34 and the loosely associated subunit is XPB."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000443"^^xsd:string, + rdfs:label "SSL2-core TFIIH complex portion of holo TFIIH complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0000441, + obo:BFO_0000050 some obo:GO_0005675 + + +Class: obo:GO_0000407 + + Annotations: + oboInOwl:hasRelatedSynonym "isolation membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "perivacuolar space"^^xsd:string, + oboInOwl:id "GO:0000407"^^xsd:string, + rdfs:label "pre-autophagosomal structure"^^xsd:string, + oboInOwl:hasExactSynonym "PAS"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:11689437"^^xsd:string, + oboInOwl:hasDbXref "PMID:12048214"^^xsd:string, + oboInOwl:hasDbXref "PMID:12554655"^^xsd:string + obo:IAO_0000115 "A punctate structure localized in the vicinity of the vacuole that is required for the formation of autophagosomes."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasRelatedSynonym "phagophore"^^xsd:string, + oboInOwl:hasRelatedSynonym "phagophore assembly site"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0035649 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035649"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:10655211"^^xsd:string, + oboInOwl:hasDbXref "PMID:16427013"^^xsd:string, + oboInOwl:hasDbXref "PMID:21084293"^^xsd:string + obo:IAO_0000115 "A complex that functions in transcription termination of RNA polymerase II transcribed non-coding RNAs. This complex interacts with the carboxy-terminal domain (CTD) of PolII and the terminator sequences in the nascent RNA transcript. In yeast this complex consists of Nrd1p, Nab3p, and Sen1p."^^xsd:string, + rdfs:label "Nrd1 complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0000408 + + Annotations: + oboInOwl:hasExactSynonym "Endopeptidase-like Kinase Chromatin-associated protein complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000408"^^xsd:string, + oboInOwl:hasExactSynonym "Kinase, putative Endopeptidase and Other Proteins of Small size protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:16564010"^^xsd:string, + oboInOwl:hasDbXref "PMID:16874308"^^xsd:string + obo:IAO_0000115 "A protein complex proposed to be involved in transcription as well as promoting telomere uncapping and telomere elongation. For example, in Saccharomyces cerevisiae the complex contains Bud32p, Kae1p, Gon7p, Cgi121p, and Pcc1p."^^xsd:string, + rdfs:label "EKC/KEOPS complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0034592 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the synaptic vesicle membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "synaptic vesicle lumen"^^xsd:string, + oboInOwl:id "GO:0034592"^^xsd:string + + SubClassOf: + obo:GO_0044456, + obo:GO_0060205, + obo:BFO_0000050 some obo:GO_0008021 + + +Class: obo:GO_0034591 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:17997128"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the rhoptry membrane."^^xsd:string, + rdfs:label "rhoptry lumen"^^xsd:string, + oboInOwl:id "GO:0034591"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020008, + obo:GO_0044464, + obo:GO_0043233 + + +Class: obo:GO_0008180 + + Annotations: + rdfs:label "signalosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "COP9 complex"^^xsd:string, + oboInOwl:hasExactSynonym "CSN"^^xsd:string, + oboInOwl:id "GO:0008180"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11019806"^^xsd:string, + oboInOwl:hasDbXref "PMID:12186635"^^xsd:string, + oboInOwl:hasDbXref "PMID:14570571"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the deneddylation of proteins, including the cullin component of SCF ubiquitin E3 ligase; deneddylation increases the activity of cullin family ubiquitin ligases. The signalosome is involved in many regulatory process, including some which control development, in many species; also regulates photomorphogenesis in plants; in many species its subunits are highly similar to those of the proteasome."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0000419 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:16140984"^^xsd:string, + oboInOwl:hasDbXref "PMID:19110459"^^xsd:string + obo:IAO_0000115 "RNA polymerase V is a multisubunit RNA polymerase complex found in the nucleus of plants and involved in accumulation of siRNAs and in DNA methylation-dependent silencing of endogenous repeated sequences. Pol V is composed of subunits that are paralogous or identical to the 12 subunits of Pol II. Two large subunits comprise the most conserved portion including the catalytic site and share similarity with other eukaryotic and bacterial multisubunit RNA polymerases. The second largest subunit is also found in RNA polymerase IVa, while the largest subunit is found only in the IVa complex and contains an extended C-terminal domain (CTD) that includes multiple repeats of a 16 amino-acid consensus sequence as well as other sequences. The remainder of the complex is composed of smaller subunits."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DNA-directed RNA polymerase V complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0080137"^^xsd:string, + oboInOwl:id "GO:0000419"^^xsd:string, + oboInOwl:hasExactSynonym "DNA-directed RNA polymerase IVb complex"^^xsd:string + + SubClassOf: + obo:GO_0055029 + + +Class: obo:GO_0030386 + + Annotations: + rdfs:label "ferredoxin:thioredoxin reductase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function possessed by this complex is represented by the molecular function term 'ferredoxin:thioredoxin reductase activity ; GO:0030385'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses ferredoxin:thioredoxin reductase activity."^^xsd:string, + oboInOwl:id "GO:0030386"^^xsd:string + + SubClassOf: + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0000418 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:15692015"^^xsd:string, + oboInOwl:hasDbXref "PMID:15766525"^^xsd:string, + oboInOwl:hasDbXref "PMID:16140984"^^xsd:string, + oboInOwl:hasDbXref "PMID:19110459"^^xsd:string + obo:IAO_0000115 "RNA polymerase IV is a multisubunit RNA polymerase complex found in the nucleus of plants and involved in accumulation of siRNAs and in DNA methylation-dependent silencing of endogenous repeated sequences. Pol IV is composed of subunits that are paralogous or identical to the 12 subunits of Pol II. The largest and second-largest subunits of Pol IV are the catalytic subunits and share similarity with the corresponding subunits of other eukaryotic and bacterial multisubunit RNA polymerases. The second largest subunit is also found in RNA polymerase V, while the largest subunit is found only in RNAP IV complex."^^xsd:string, + rdfs:label "DNA-directed RNA polymerase IV complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000420"^^xsd:string, + oboInOwl:id "GO:0000418"^^xsd:string, + oboInOwl:hasExactSynonym "DNA-directed RNA polymerase IVa complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0055029 + + +Class: obo:GO_0000417 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16303565"^^xsd:string, + oboInOwl:hasDbXref "PMID:17180700"^^xsd:string + obo:IAO_0000115 "A protein complex proposed to be involved in replication-independent nucleosome assembly, by promoting histone deposition onto DNA. For example, in Saccharomyces, the complex contains Hir1p, Hir2p, Hir3p, and Hpc2p."^^xsd:string, + rdfs:label "HIR complex"^^xsd:string, + oboInOwl:id "GO:0000417"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19620282"^^xsd:string, + oboInOwl:hasDbXref "PMID:20976105"^^xsd:string + oboInOwl:hasExactSynonym "HIRA complex"^^xsd:string + + SubClassOf: + obo:GO_0005678 + + +Class: obo:GO_0044099 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044099"^^xsd:string, + rdfs:label "polar tube"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mf"^^xsd:string, + oboInOwl:hasDbXref "PMID:12076771"^^xsd:string, + oboInOwl:hasDbXref "PMID:9723921"^^xsd:string + obo:IAO_0000115 "A highly specialized structure unique to microsporidia that is required for host cell invasion. In the spore, the polar tube is connected at the anterior end, and then coils around the sporoplasm. Upon appropriate environmental stimulation, the polar tube rapidly discharges out of the spore, pierces a cell membrane and serves as a conduit for sporoplasm passage into the new host cell."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0044094 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044094"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "Any constituent part of a host cell's nucleus, a membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. The host is the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + rdfs:label "host cell nuclear part"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042025, + obo:GO_0033646 + + +Class: obo:GO_0000015 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000015"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A multimeric enzyme complex, usually a dimer or an octamer, that catalyzes the conversion of 2-phospho-D-glycerate to phosphoenolpyruvate and water."^^xsd:string, + rdfs:label "phosphopyruvate hydratase complex"^^xsd:string, + oboInOwl:hasExactSynonym "enolase complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0044095 + + Annotations: + oboInOwl:inSubset , + rdfs:label "host cell nucleoplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044095"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "That part of a host cell's nuclear content other than the chromosomes or the nucleolus. The host is the larger of the organisms involved in a symbiotic interaction."^^xsd:string + + SubClassOf: + obo:GO_0044094 + + +Class: obo:GO_0031499 + + Annotations: + oboInOwl:hasNarrowSynonym "TRAMP5 complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "TRAMP4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15173578"^^xsd:string, + oboInOwl:hasDbXref "PMID:15828860"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935758"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935759"^^xsd:string, + oboInOwl:hasDbXref "PMID:16373491"^^xsd:string, + oboInOwl:hasDbXref "PMID:16374505"^^xsd:string, + oboInOwl:hasDbXref "PMID:16431988"^^xsd:string, + oboInOwl:hasDbXref "PMID:16973437"^^xsd:string, + oboInOwl:hasDbXref "PMID:17410208"^^xsd:string, + oboInOwl:hasDbXref "PMID:17652137"^^xsd:string + obo:IAO_0000115 "A multiprotein complex having distributive polyadenylation activity of a variety of RNA substrates including hypomodified and incorrectly folded tRNAs, pre-snRNAs, pre-snoRNAs, incorrectly spliced or processed pre-mRNAs, cryptic unstable transcripts (CUTs), pre-rRNAs and rRNA fragments released as part of rRNA processing. In S. cerevisiae, the complex consists of either Pap2 (also known as Trf4) or Trf5, Air1 or Air2, and Mtr4, and is involved in RNA 3'-end processing and in RNA surveillance and quality control."^^xsd:string, + oboInOwl:hasNarrowSynonym "Trf4 poly(A) polymerase complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Trf4p-Air2p-Mtr4p polyadenylation complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Trf4 complex"^^xsd:string, + oboInOwl:id "GO:0031499"^^xsd:string, + rdfs:label "TRAMP complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:TRAMP_complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0044096 + + Annotations: + rdfs:label "type IV pilus"^^xsd:string, + oboInOwl:hasExactSynonym "TFP"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "type 4 pilus"^^xsd:string, + oboInOwl:hasExactSynonym "type IV fimbriae"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A short filamentous structure on the surface of a bacterial cell distinguished from other pili by post-translational N-methylation of the pilin monomers."^^xsd:string, + oboInOwl:id "GO:0044096"^^xsd:string + + SubClassOf: + obo:GO_0009289 + + +Class: obo:GO_0000837 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Doa10p ubiquitin ligase complex"^^xsd:string, + oboInOwl:id "GO:0000837"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:16873066"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that recognizes and ubiquitinates membranes proteins with misfolded cytosolic domains during ER-associated protein degradation (ERAD). In S. cerevisiae, this complex contains the ubiquitin ligase Ssm4p/Doa10p."^^xsd:string, + oboInOwl:hasExactSynonym "Ssm4p ubiquitin ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0000835 + + +Class: obo:GO_0000838 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:16873066"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that recognizes and ubiquitinates proteins with misfolded membrane domains during ER-associated protein degradation (ERAD). In S. cerevisiae, this complex contains the ubiquitin ligase Hrd1p."^^xsd:string, + rdfs:label "Hrd1p ubiquitin ligase ERAD-M complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000838"^^xsd:string + + SubClassOf: + obo:GO_0000836 + + +Class: obo:GO_0000835 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ER ubiquitin ligase complex"^^xsd:string, + oboInOwl:id "GO:0000835"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex found in the ER."^^xsd:string + + EquivalentTo: + obo:GO_0000151 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0000153, + obo:GO_0044425, + obo:GO_0044432 + + +Class: obo:GO_0000836 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Hrd1p ubiquitin ligase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:16873066"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that recognizes and ubiquitinates proteins with misfolded luminal and membrane domains during ER-associated protein degradation (ERAD). In S. cerevisiae, this complex contains the ubiquitin ligase Hrd1p."^^xsd:string, + oboInOwl:id "GO:0000836"^^xsd:string + + SubClassOf: + obo:GO_0000835 + + +Class: obo:GO_0001536 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0001536"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "Globular portion of the radial spoke that projects towards the central pair of microtubules."^^xsd:string, + rdfs:label "radial spoke stalk"^^xsd:string + + SubClassOf: + obo:GO_0044447, + obo:BFO_0000050 some obo:GO_0001534, + obo:GO_0043234 + + +Class: obo:GO_0001535 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0001535"^^xsd:string, + rdfs:label "radial spokehead"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "Protein complex forming part of eukaryotic flagellar apparatus."^^xsd:string + + SubClassOf: + obo:GO_0044447, + obo:BFO_0000050 some obo:GO_0001534, + obo:GO_0043234 + + +Class: obo:GO_0000421 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:isa_complete"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an autophagic vacuole, a double-membrane-bounded vesicle in which endogenous cellular material is sequestered."^^xsd:string, + oboInOwl:id "GO:0000421"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "autophagosome membrane"^^xsd:string, + rdfs:label "autophagic vacuole membrane"^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:BFO_0000050 some obo:GO_0005776 + + +Class: obo:GO_0071099 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11821050"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta6 integrin complex bound to transforming growth factor beta-3 (TGFbeta-3)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2353"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB6-TFGB3 complex"^^xsd:string, + oboInOwl:id "GO:0071099"^^xsd:string, + rdfs:label "alphaV-beta6 integrin-TGFbeta-3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0000839 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000839"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "PMID:16873065"^^xsd:string, + oboInOwl:hasDbXref "PMID:16873066"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that recognizes and ubiquitinates proteins with misfolded luminal domains during ER-associated protein degradation (ERAD). In S. cerevisiae, this complex contains the ubiquitin ligase Hrd1p."^^xsd:string, + rdfs:label "Hrd1p ubiquitin ligase ERAD-L complex"^^xsd:string + + SubClassOf: + obo:GO_0000836 + + +Class: obo:GO_0005871 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005871"^^xsd:string, + rdfs:label "kinesin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "http://www.proweb.org/kinesin//KinesinMotility.html"^^xsd:string, + oboInOwl:hasDbXref "http://www.proweb.org/kinesin//KinesinStructure.html"^^xsd:string + obo:IAO_0000115 "Any complex that includes a dimer of molecules from the kinesin superfamily, a group of related proteins that contain an extended region of predicted alpha-helical coiled coil in the main chain that likely produces dimerization. The native complexes of several kinesin family members have also been shown to contain additional peptides, often designated light chains as all of the noncatalytic subunits that are currently known are smaller than the chain that contains the motor unit. Kinesin complexes generally possess a force-generating enzymatic activity, or motor, which converts the free energy of the gamma phosphate bond of ATP into mechanical work."^^xsd:string + + SubClassOf: + obo:GO_0005875 + + +Class: obo:GO_0005870 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18221362"^^xsd:string, + oboInOwl:hasDbXref "PMID:18544499"^^xsd:string + obo:IAO_0000115 "A heterodimer consisting of alpha and beta subunits that binds to and caps the barbed ends of actin filaments, nucleates the polymerization of actin monomers but does not sever actin filaments, and which is a part of the dynactin complex."^^xsd:string, + oboInOwl:id "GO:0005870"^^xsd:string, + rdfs:label "actin capping protein of dynactin complex"^^xsd:string + + EquivalentTo: + obo:GO_0008290 + and (obo:BFO_0000050 some obo:GO_0005869) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005869, + obo:GO_0008290 + + +Class: obo:GO_0034099 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:16873065"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that recognizes ERAD-luminal misfolded substrates and brings them to the ubiquitination/extraction machinery. In yeast, this complex consists of Yos9p, Kar2p and Hrd3p proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "luminal surveillance complex"^^xsd:string, + oboInOwl:id "GO:0034099"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005788, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0034098 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Cdc48p-Npl4p-Ufd1p AAA ATPase complex"^^xsd:string, + oboInOwl:id "GO:0034098"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11813000"^^xsd:string, + oboInOwl:hasDbXref "PMID:16179952"^^xsd:string + obo:IAO_0000115 "A multiprotein ATPase complex required for the efficient dislocation of ER-lumenal degradation substrates, and their subsequent proteolysis by the proteasome. In budding yeast, this complex includes Cdc48p, Npl4p and Ufd1p proteins."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0005879 + + Annotations: + rdfs:label "axonemal microtubule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A microtubule in the axoneme of a cilium or flagellum; an axoneme contains nine modified doublet microtubules surrounding a pair of single microtubules."^^xsd:string, + oboInOwl:id "GO:0005879"^^xsd:string + + EquivalentTo: + obo:GO_0005874 + and (obo:BFO_0000050 some obo:GO_0005930) + + SubClassOf: + obo:GO_0044447, + obo:GO_0005874 + + +Class: obo:GO_0031480 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing one or more class X myosin heavy chains and associated light chains."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031480"^^xsd:string, + rdfs:label "myosin X complex"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0031481 + + Annotations: + rdfs:label "myosin XI complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031481"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a dimer of class XI myosin heavy chains and associated light chains. Myosin XI heavy chain sizes are similar in molecular structure to the class V myosins with 5 to 6 IQ motifs and tail regions with predicted coiled coil domains (forming dimeric molecules) and large C-terminal regions."^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0031482 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing one or more class XII myosin heavy chains and associated light chains; myosin XII contains a large tail region with two MyTH4 domains and a short region of coiled coil."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "myosin XII complex"^^xsd:string, + oboInOwl:id "GO:0031482"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005876 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "spindle microtubule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Any microtubule that is part of a mitotic or meiotic spindle; anchored at one spindle pole."^^xsd:string, + oboInOwl:id "GO:0005876"^^xsd:string + + EquivalentTo: + obo:GO_0005874 + and (obo:BFO_0000050 some obo:GO_0005819) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005819, + obo:GO_0005874 + + +Class: obo:GO_0031483 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing one or more class XIII myosin heavy chains and associated light chains."^^xsd:string, + oboInOwl:id "GO:0031483"^^xsd:string, + rdfs:label "myosin XIII complex"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005875 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any multimeric complex connected to a microtubule."^^xsd:string, + oboInOwl:id "GO:0005875"^^xsd:string, + rdfs:label "microtubule associated complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430, + obo:GO_0043234 + + +Class: obo:GO_0031484 + + Annotations: + oboInOwl:id "GO:0031484"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class XIV myosin heavy chain and associated light chains; myosin XIV heavy chains are the simplest known, containing a motor domain, no classic IQ motif and variable length tails."^^xsd:string, + rdfs:label "myosin XIV complex"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005874 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "Any of the long, generally straight, hollow tubes of internal diameter 12-15 nm and external diameter 24 nm found in a wide variety of eukaryotic cells; each consists (usually) of 13 protofilaments of polymeric tubulin, staggered in such a manner that the tubulin monomers are arranged in a helical pattern on the microtubular surface, and with the alpha/beta axes of the tubulin subunits parallel to the long axis of the tubule; exist in equilibrium with pool of tubulin monomers and can be rapidly assembled or disassembled in response to physiological stimuli; concerned with force generation, e.g. in the spindle."^^xsd:string, + oboInOwl:hasExactSynonym "microtubulus"^^xsd:string, + oboInOwl:id "GO:0005874"^^xsd:string, + oboInOwl:hasExactSynonym "microtubuli"^^xsd:string, + rdfs:label "microtubule"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1846835077"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Microtubule"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430, + obo:GO_0043234 + + +Class: obo:GO_0031485 + + Annotations: + oboInOwl:id "GO:0031485"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "myosin XV complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class XV myosin heavy chain and associated light chains. Myosin XV is single headed, and has a large extension (1200aa) at the N-terminus of the motor domain, two IQ motifs and a tail with a similar domain structure to that of the tail of myosin VII."^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005873 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plus-end kinesin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex that includes a dimer of molecules from the kinesin superfamily and any associated proteins, and moves towards the plus end of a microtubule."^^xsd:string, + oboInOwl:id "GO:0005873"^^xsd:string + + SubClassOf: + obo:GO_0005871 + + +Class: obo:GO_0031486 + + Annotations: + oboInOwl:id "GO:0031486"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "myosin XVI complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11294886"^^xsd:string, + oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class XVI myosin heavy chains and associated light chains; myosin XVI heavy chains contain ankyrin repeat."^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005872 + + Annotations: + rdfs:label "minus-end kinesin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005872"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex that includes a dimer of molecules from the kinesin superfamily and any associated proteins, and moves towards the minus end of a microtubule."^^xsd:string + + SubClassOf: + obo:GO_0005871 + + +Class: obo:GO_0031487 + + Annotations: + rdfs:label "myosin XVII complex"^^xsd:string, + oboInOwl:id "GO:0031487"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing one or more class XVII myosin heavy chains and associated light chains."^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0046658 + + Annotations: + rdfs:label "anchored to plasma membrane"^^xsd:string, + oboInOwl:id "GO:0046658"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Tethered to the plasma membrane by a covalently attached anchor, such as a lipid group, that is embedded in the membrane. When used to describe a protein, indicates that the peptide sequence does not span the membrane."^^xsd:string, + oboInOwl:hasNarrowSynonym "plasma membrane, GPI-anchored"^^xsd:string + + SubClassOf: + obo:GO_0031226, + obo:GO_0031225 + + +Class: obo:GO_0031478 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031478"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a dimer of class VIII myosin heavy chains and associated light chains. Myosin VIII is predicted to be dimeric, and contain an unusual 100-190 residue N-terminal extension prior to their motor domains, 3-4 IQ motifs, a short region (~70 residues) of predicted alpha-helical coiled coil and a C-terminal domain."^^xsd:string, + rdfs:label "myosin VIII complex"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0032921 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A complex consisting of 4 protein subunits as a heterotetramer, that possesses sarcosine oxidase activity."^^xsd:string, + oboInOwl:id "GO:0032921"^^xsd:string, + rdfs:label "sarcosine oxidase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0031477 + + Annotations: + rdfs:label "myosin VII complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a dimer of class VII myosin heavy chains and associated light chains. Myosin VII (240 kDa) is predicted to be a dimeric molecule with 5 IQ motifs and a tail region with a short stretch of coiled coil followed by two myosin-tail homology (MyTH4) domains, two talin-binding (FERM) domains and an SH3-domain."^^xsd:string, + oboInOwl:id "GO:0031477"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0031479 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class IX myosin heavy chain and associated light chains. Myosin IX is monomeric with a motor domain containing an N-terminal extension and an insert in the actin binding interface, followed by four to six IQ motifs and a tail region that contains a zinc binding motif and a domain with homology to GTPase activating proteins (GAPs) of the Rho family of G-proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "myosin IX complex"^^xsd:string, + oboInOwl:id "GO:0031479"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005869 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005869"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A 20S multiprotein assembly of total mass about 1.2 MDa that activates dynein-based activity in vivo. A large structural component of the complex is an actin-like 40 nm filament composed of actin-related protein, to which other components attach."^^xsd:string, + rdfs:label "dynactin complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0005875 + + +Class: obo:GO_0032541 + + Annotations: + oboInOwl:hasExactSynonym "peripheral endoplasmic reticulum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:se"^^xsd:string, + oboInOwl:hasDbXref "PMID:10931860"^^xsd:string, + oboInOwl:hasDbXref "PMID:17686782"^^xsd:string + obo:IAO_0000115 "A cortical network of highly dynamic tubules that are juxtaposed to the plasma membrane and undergo ring closure and tubule-branching movements."^^xsd:string, + rdfs:label "cortical endoplasmic reticulum"^^xsd:string, + oboInOwl:hasExactSynonym "cortical ER"^^xsd:string, + oboInOwl:id "GO:0032541"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral ER"^^xsd:string + + SubClassOf: + obo:GO_0044448, + obo:GO_0044432 + + +Class: obo:GO_0005865 + + Annotations: + rdfs:label "striated muscle thin filament"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Filaments formed of actin and associated proteins; attached to Z discs at either end of sarcomeres in myofibrils."^^xsd:string, + oboInOwl:id "GO:0005865"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0030017 + + +Class: obo:GO_0005868 + + Annotations: + oboInOwl:hasNarrowSynonym "cytoplasmic dynein light chain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "cytoplasmic dynein intermediate chain"^^xsd:string, + oboInOwl:hasNarrowSynonym "cytoplasmic dynein heavy chain"^^xsd:string, + rdfs:label "cytoplasmic dynein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12600311"^^xsd:string + obo:IAO_0000115 "Any dynein complex that catalyzes movement along a cytoplasmic microtubule; cytoplasmic dynein complexes participates in many transport activities in eukaryotes, such as mRNA localization, intermediate filament transport, nuclear envelope breakdown, apoptosis, transport of centrosomal proteins, mitotic spindle assembly, virus transport, kinetochore functions, and movement of signaling and spindle checkpoint proteins. Subunits associated with the dynein heavy chain mediate association between dynein heavy chain and cargoes,and may include light chains and light intermediate chains."^^xsd:string, + oboInOwl:hasNarrowSynonym "cytoplasmic dynein intermediate light chain"^^xsd:string, + oboInOwl:id "GO:0005868"^^xsd:string + + EquivalentTo: + obo:GO_0030286 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0030286, + obo:GO_0044444 + + +Class: obo:GO_0005862 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A form of the tropomyosin dimer found associated with actin and the troponin complex in muscle thin filaments."^^xsd:string, + oboInOwl:id "GO:0005862"^^xsd:string, + rdfs:label "muscle thin filament tropomyosin"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005865, + obo:GO_0044430, + obo:GO_0044449 + + +Class: obo:GO_0005861 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005861"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A complex of accessory proteins (typically troponin T, troponin I and troponin C) found associated with actin in muscle thin filaments; involved in calcium regulation of muscle contraction."^^xsd:string, + rdfs:label "troponin complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005865, + obo:GO_0044430, + obo:GO_0044449, + obo:GO_0043234 + + +Class: obo:GO_0005863 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Bipolar filaments formed of polymers of a muscle-specific myosin II isoform, found in the middle of sarcomeres in myofibrils."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005863"^^xsd:string, + rdfs:label "striated muscle myosin thick filament"^^xsd:string + + SubClassOf: + obo:GO_0005859, + obo:GO_0032982, + obo:BFO_0000050 some obo:GO_0030017 + + +Class: obo:GO_0071598 + + Annotations: + oboInOwl:id "GO:0071598"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "neuronal ribonucleoprotein granule"^^xsd:string, + oboInOwl:hasNarrowSynonym "neuronal RNA granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19015237"^^xsd:string, + oboInOwl:hasDbXref "PMID:20368989"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that is found in the cytoplasm of axons and dendrites, and transports translationally silenced mRNAs to dendritic synapses, where they are released and translated in response to specific exogenous stimuli."^^xsd:string, + oboInOwl:hasExactSynonym "neuronal RNP granule"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043005, + obo:GO_0044463, + obo:GO_0035770, + obo:BFO_0000050 some obo:GO_0032838 + + +Class: obo:GO_0031488 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "myosin XVIII complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11294886"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class XVIII myosin heavy chain and associated light chains; myosin XVIII heavy chains contain an N-terminal PDZ domain."^^xsd:string, + oboInOwl:id "GO:0031488"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005858 + + Annotations: + oboInOwl:hasNarrowSynonym "axonemal dynein light chain"^^xsd:string, + oboInOwl:id "GO:0005858"^^xsd:string, + oboInOwl:hasNarrowSynonym "axonemal dynein intermediate chain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "axonemal dynein intermediate light chain"^^xsd:string, + rdfs:label "axonemal dynein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A dynein complex found in eukaryotic cilia and flagella; the motor domain heads interact with adjacent microtubules to generate a sliding force which is converted to a bending motion. May contain two or three dynein heavy chains as well as several light chains."^^xsd:string, + oboInOwl:hasNarrowSynonym "axonemal dynein heavy chain"^^xsd:string + + EquivalentTo: + obo:GO_0030286 + and (obo:BFO_0000050 some obo:GO_0005930) + + SubClassOf: + obo:GO_0044447, + obo:GO_0030286 + + +Class: obo:GO_0010494 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284590"^^xsd:string, + oboInOwl:hasDbXref "PMID:17601829"^^xsd:string, + oboInOwl:hasDbXref "PMID:17967451"^^xsd:string, + oboInOwl:hasDbXref "PMID:20368989"^^xsd:string + obo:IAO_0000115 "A dense aggregation in the cytosol composed of proteins and RNAs that appear when the cell is under stress."^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic mRNP granule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "P-body"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Stress_granule"^^xsd:string, + oboInOwl:id "GO:0010494"^^xsd:string, + oboInOwl:hasExactSynonym "stress granule"^^xsd:string, + rdfs:label "cytoplasmic stress granule"^^xsd:string + + SubClassOf: + obo:GO_0035770 + + +Class: obo:GO_0071597 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16672383"^^xsd:string, + oboInOwl:hasDbXref "PMID:7730409"^^xsd:string + obo:IAO_0000115 "Crater-like ring of chitinous scar tissue located on the surface of the daughter cell, in budding fungi, at the site of separation from the mother cell. It is formed after the newly emerged daughter cell separates, thereby marking the site of cytokinesis and septation."^^xsd:string, + oboInOwl:id "GO:0071597"^^xsd:string, + rdfs:label "cellular birth scar"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009277 + + +Class: obo:GO_0005859 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005859"^^xsd:string, + rdfs:label "muscle myosin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A filament of myosin found in a muscle cell of any type."^^xsd:string + + EquivalentTo: + obo:GO_0016460 + and (obo:BFO_0000050 some obo:GO_0043292) + + SubClassOf: + obo:GO_0016460, + obo:GO_0044449 + + +Class: obo:GO_0071595 + + Annotations: + rdfs:label "Nem1-Spo7 phosphatase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9822591"^^xsd:string + obo:IAO_0000115 "A protein serine/threonine phosphatase complex that is involved in nuclear envelope organization, and contains proteins known in budding yeast as Nem1p and Spo7p."^^xsd:string, + oboInOwl:id "GO:0071595"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0042175, + obo:GO_0008287 + + +Class: obo:GO_0032936 + + Annotations: + rdfs:label "SREBP-SCAP complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Sre1-Scp1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12923525"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of sterol regulatory element binding protein (SREBP) and SREBP-cleavage-activating protein (SCAP) in the ER membrane; in the absence of sterols, the SREBP-SCAP complex is packaged into COPII vesicles and travels to the Golgi apparatus to be processed."^^xsd:string, + oboInOwl:id "GO:0032936"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0032937 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12923525"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of sterol regulatory element binding protein (SREBP), SREBP-cleavage-activating protein (SCAP), and an Insig protein (Insig-1 or Insig-2) the ER membrane."^^xsd:string, + oboInOwl:id "GO:0032937"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SREBP-SCAP-Insig complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030176, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0016580 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Sin3 complex"^^xsd:string, + oboInOwl:id "GO:0016580"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10589671"^^xsd:string, + oboInOwl:hasDbXref "PMID:11743021"^^xsd:string, + oboInOwl:hasDbXref "PMID:12865422"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that functions broadly in eukaryotic organisms as a transcriptional repressor of protein-coding genes, through the gene-specific deacetylation of histones. Amongst its subunits, the Sin3 complex contains Sin3-like proteins, and a number of core proteins that are shared with the NuRD complex (including histone deacetylases and histone binding proteins). The Sin3 complex does not directly bind DNA itself, but is targeted to specific genes through protein-protein interactions with DNA-binding proteins."^^xsd:string + + SubClassOf: + obo:GO_0070822 + + +Class: obo:GO_0032517 + + Annotations: + rdfs:label "SOD1-calcineurin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17324120"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of superoxide dismutase 1 (SOD1) with calcineurin; complex formation is implicated in activation of calcineurin by SOD1."^^xsd:string, + oboInOwl:id "GO:0032517"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0016581 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10589671"^^xsd:string, + oboInOwl:hasDbXref "PMID:11743021"^^xsd:string, + oboInOwl:hasDbXref "PMID:17289569"^^xsd:string + obo:IAO_0000115 "An approximately 2 MDa multi-subunit complex that exhibits ATP-dependent chromatin remodeling activity in addition to histone deacetylase (HDAC) activity, and has been shown to establish transcriptional repression of a number of target genes in vertebrates, invertebrates and fungi. Amongst its subunits, the NuRD complex contains histone deacetylases, histone binding proteins and Mi-2-like proteins."^^xsd:string, + oboInOwl:id "GO:0016581"^^xsd:string, + rdfs:label "NuRD complex"^^xsd:string, + oboInOwl:hasExactSynonym "Mi-2 complex"^^xsd:string, + oboInOwl:hasExactSynonym "nucleosome remodeling and histone deacetylation complex"^^xsd:string, + oboInOwl:hasExactSynonym "NRD complex"^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:GO_0017053 + + +Class: obo:GO_0005893 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:3116143"^^xsd:string, + oboInOwl:hasDbXref "PMID:8266078"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-2; comprises alpha, beta, and gamma subunits."^^xsd:string, + oboInOwl:id "GO:0005893"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-2 receptor complex"^^xsd:string, + rdfs:label "interleukin-2 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0005892 + + Annotations: + oboInOwl:id "GO:0005892"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "acetylcholine-gated channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12381728"^^xsd:string, + oboInOwl:hasDbXref "PMID:15579462"^^xsd:string + obo:IAO_0000115 "A homo- or hetero-pentameric protein complex that forms a transmembrane channel through which ions may pass in response to acetylcholine binding."^^xsd:string, + oboInOwl:hasBroadSynonym "nicotinic acetylcholine receptor"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "nicotinic acetylcholine-gated receptor-channel complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235, + obo:GO_0034702 + + +Class: obo:GO_0016585 + + Annotations: + rdfs:label "chromatin remodeling complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chromatin remodelling complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0005679"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex that mediates dynamic changes in eukaryotic chromatin."^^xsd:string, + oboInOwl:id "GO:0016585"^^xsd:string, + oboInOwl:hasExactSynonym "nucleosome remodeling complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0005891 + + Annotations: + oboInOwl:id "GO:0005891"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "voltage gated calcium channel complex"^^xsd:string, + oboInOwl:hasExactSynonym "voltage-sensitive calcium channel complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "voltage-dependent calcium channel complex"^^xsd:string, + rdfs:label "voltage-gated calcium channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a transmembrane channel through which calcium ions may pass in response to changes in membrane potential."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0034704 + + +Class: obo:GO_0005890 + + Annotations: + rdfs:label "sodium:potassium-exchanging ATPase complex"^^xsd:string, + oboInOwl:id "GO:0005890"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Sodium:potassium-exchanging ATPases are tetrameric proteins, consisting of two large alpha subunits and two smaller beta subunits. The alpha subunits bear the active site and penetrate the membrane, while the beta subunits carry oligosaccharide groups and face the cell exterior."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "sodium/potassium-exchanging ATPase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "sodium pump"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0005897 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-9 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10642536"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-9; comprises an alpha and a beta subunit. The alpha chain is specific to the interleukin-9 receptor, whereas the beta chain is shared with the receptors for several other interleukins."^^xsd:string, + rdfs:label "interleukin-9 receptor complex"^^xsd:string, + oboInOwl:id "GO:0005897"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0031462 + + Annotations: + rdfs:label "Cul2-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "CDL2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031462"^^xsd:string, + oboInOwl:hasBroadSynonym "ECS complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul2 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by an elongin-BC adaptor and a SOCS/BC box protein."^^xsd:string, + oboInOwl:hasBroadSynonym "EC2S complex"^^xsd:string, + oboInOwl:hasExactSynonym "CRL2 complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "SCF2 complex"^^xsd:string, + oboInOwl:hasBroadSynonym "CBC complex"^^xsd:string, + oboInOwl:hasExactSynonym "cullin-RING ligase 2"^^xsd:string, + oboInOwl:hasNarrowSynonym "VBC complex"^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0005896 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:8083235"^^xsd:string + obo:IAO_0000115 "A hexameric protein complex consisting of two molecules each of interleukin-6, interleukin-6 receptor alpha chain, and gp-130."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-6 receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005896"^^xsd:string, + rdfs:label "interleukin-6 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0016589 + + Annotations: + oboInOwl:id "GO:0016589"^^xsd:string, + oboInOwl:hasExactSynonym "nucleosome remodeling factor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10779516"^^xsd:string, + oboInOwl:hasDbXref "PMID:11279013"^^xsd:string + obo:IAO_0000115 "A four subunit ISWI-containing protein complex that facilitates nucleosome mobility and transcriptional activation in an ATP-dependent manner. In contrast to other chromatin remodeling complexes, the ATPase activity of NURF requires nucleosomes rather than free DNA or histones."^^xsd:string, + rdfs:label "NURF complex"^^xsd:string + + SubClassOf: + obo:GO_0031010 + + +Class: obo:GO_0031463 + + Annotations: + oboInOwl:hasExactSynonym "BCR3 complex"^^xsd:string, + rdfs:label "Cul3-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031463"^^xsd:string, + oboInOwl:hasExactSynonym "BC3B complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "SCF3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul3 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a BTB-domain-containing protein."^^xsd:string, + oboInOwl:hasExactSynonym "CDL3 complex"^^xsd:string, + oboInOwl:hasExactSynonym "CRL3 complex"^^xsd:string, + oboInOwl:hasExactSynonym "cullin-RING ligase 3"^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0005895 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-5 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11312115"^^xsd:string, + oboInOwl:hasDbXref "PMID:11839579"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-3; comprises an alpha and a beta subunit. The alpha chain is specific to the interleukin-5 receptor, whereas the beta chain is shared with the receptors for granulocyte-macrophage colony-stimulating factor and interleukin-3."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005895"^^xsd:string, + rdfs:label "interleukin-5 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0016586 + + Annotations: + rdfs:label "RSC complex"^^xsd:string, + oboInOwl:id "GO:0016586"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11937489"^^xsd:string, + oboInOwl:hasDbXref "PMID:12672490"^^xsd:string, + oboInOwl:hasDbXref "PMID:15870268"^^xsd:string, + oboInOwl:hasDbXref "PMID:8980231"^^xsd:string + obo:IAO_0000115 "A protein complex similar to, but more abundant than, the Swi/Snf complex. The RSC complex is generally recruited to RNA polymerase III promoters and is specifically recruited to RNA polymerase II promoters by transcriptional activators and repressors; it is also involved in non-homologous end joining."^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0031464 + + Annotations: + oboInOwl:hasExactSynonym "CRL4 complex"^^xsd:string, + oboInOwl:hasExactSynonym "CDL4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul4A subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by an adaptor protein."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "SCF4 complex"^^xsd:string, + oboInOwl:id "GO:0031464"^^xsd:string, + oboInOwl:hasExactSynonym "cullin-RING ligase 4A"^^xsd:string, + oboInOwl:hasExactSynonym "DCX complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "VDC complex"^^xsd:string, + rdfs:label "Cul4A-RING ubiquitin ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0080008 + + +Class: obo:GO_0005894 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11839579"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-3; comprises an alpha and a beta subunit. The alpha chain is specific to the interleukin-3 receptor, whereas the beta chain is shared with the receptors for granulocyte-macrophage colony-stimulating factor and interleukin-5."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "interleukin-3 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-3 receptor complex"^^xsd:string, + oboInOwl:id "GO:0005894"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0016587 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15020051"^^xsd:string + obo:IAO_0000115 "A protein complex that contains an ISWI-family ATPase such as Saccharomyces Isw1p, and acts to modify chromatin structure."^^xsd:string, + oboInOwl:id "GO:0016587"^^xsd:string, + rdfs:label "ISW1 complex"^^xsd:string + + SubClassOf: + obo:GO_0031010 + + +Class: obo:GO_0031465 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul4B subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by unknown subunits."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cullin-RING ligase 4B"^^xsd:string, + oboInOwl:id "GO:0031465"^^xsd:string, + rdfs:label "Cul4B-RING ubiquitin ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0080008 + + +Class: obo:GO_0005899 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A disulfide-bonded, heterotetrameric receptor complex. The alpha chains are entirely extracellular, while each beta chain has one transmembrane domain. The ligand binds to the alpha subunit extracellular domain and the kinase is associated with the beta subunit intracellular domain."^^xsd:string, + rdfs:label "insulin receptor complex"^^xsd:string, + oboInOwl:id "GO:0005899"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0005898 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "interleukin-13 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8552669"^^xsd:string, + oboInOwl:hasDbXref "PMID:9013879"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-13; consists of two chains, interleukin-13 receptor alpha1 chain and interleukin-4 receptor alpha chain."^^xsd:string, + oboInOwl:id "GO:0005898"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-13 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0031461 + + Annotations: + oboInOwl:hasRelatedSynonym "cullin-RING ligase"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031461"^^xsd:string, + oboInOwl:hasExactSynonym "CRL complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "Any ubiquitin ligase complex in which the catalytic core consists of a member of the cullin family and a RING domain protein; the core is associated with one or more additional proteins that confer substrate specificity."^^xsd:string, + rdfs:label "cullin-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "cullin complex"^^xsd:string + + SubClassOf: + obo:GO_0000151 + + +Class: obo:GO_0005880 + + Annotations: + oboInOwl:id "GO:0005880"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear microtubule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any microtubule in the nucleus of a cell."^^xsd:string + + EquivalentTo: + obo:GO_0005874 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:GO_0005874 + + +Class: obo:GO_0005882 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Intermediate_filament"^^xsd:string, + oboInOwl:id "GO:0005882"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intermediate filament"^^xsd:string, + oboInOwl:hasRelatedSynonym "intermediate filament associated protein"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao952483289"^^xsd:string, + oboInOwl:hasRelatedSynonym "type II intermediate filament associated protein"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "http://www.cytochemistry.net/Cell-biology/intermediate_filaments.htm"^^xsd:string + obo:IAO_0000115 "A cytoskeletal structure that forms a distinct elongated structure, characteristically 10 nm in diameter, that occurs in the cytoplasm of eukaryotic cells. Intermediate filaments form a fibrous system, composed of chemically heterogeneous subunits and involved in mechanically integrating the various components of the cytoplasmic space. Intermediate filaments may be divided into five chemically distinct classes: Type I, acidic keratins; Type II, basic keratins; Type III, including desmin, vimentin and others; Type IV, neurofilaments and related filaments; and Type V, lamins."^^xsd:string, + oboInOwl:hasRelatedSynonym "type I intermediate filament associated protein"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0045111, + obo:GO_0043234 + + +Class: obo:GO_0005881 + + Annotations: + oboInOwl:id "GO:0005881"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any microtubule in the cytoplasm of a cell."^^xsd:string, + oboInOwl:hasNarrowSynonym "non-spindle-associated astral microtubule"^^xsd:string, + rdfs:label "cytoplasmic microtubule"^^xsd:string + + EquivalentTo: + obo:GO_0005874 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0005874, + obo:GO_0044444 + + +Class: obo:GO_0005884 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1588493326"^^xsd:string, + oboInOwl:hasExactSynonym "microfilament"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Actin"^^xsd:string, + rdfs:label "actin filament"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "PMID:10666339"^^xsd:string + obo:IAO_0000115 "A filamentous structure formed of a two-stranded helical polymer of the protein actin and associated proteins. Actin filaments are a major component of the contractile apparatus of skeletal muscle and the microfilaments of the cytoskeleton of eukaryotic cells. The filaments, comprising polymerized globular actin molecules, appear as flexible structures with a diameter of 5-9 nm. They are organized into a variety of linear bundles, two-dimensional networks, and three dimensional gels. In the cytoskeleton they are most highly concentrated in the cortex of the cell just beneath the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0005884"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0043234 + + +Class: obo:GO_0031475 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031475"^^xsd:string, + rdfs:label "myosin V complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a dimer of class V myosin heavy chains and associated light chains; involved in intracellular transport. Myosin V is a dimeric molecule consisting of conserved motor domains followed by 6 IQ motifs which bind specific light chains and calmodulin. The tail domain is important for cellular localization and cargo binding and can be divided into an alpha-helical coiled coil region and a C-terminal globular region."^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005883 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "type IV intermediate filament"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A type of intermediate filament found in the core of neuronal axons. Neurofilaments are heteropolymers composed of three type IV polypeptides: NF-L, NF-M, and NF-H (for low, middle, and high molecular weight). Neurofilaments are responsible for the radial growth of an axon and determine axonal diameter."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Neurofilament"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1316272517"^^xsd:string, + oboInOwl:id "GO:0005883"^^xsd:string, + rdfs:label "neurofilament"^^xsd:string + + EquivalentTo: + obo:GO_0005882 + and (obo:BFO_0000050 some obo:GO_0030424) + + SubClassOf: + obo:GO_0033267, + obo:GO_0005882, + obo:BFO_0000050 some obo:GO_0060053 + + +Class: obo:GO_0031476 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing one or more class VI myosin heavy chains and associated light chains. Myosin VI has a single IQ motif in the neck and a tail region with a coiled coil domain followed by a unique globular domain; a unique insertion that enables myosin VI to move towards the pointed or minus end of actin filaments."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031476"^^xsd:string, + rdfs:label "myosin VI complex"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0005886 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "The membrane surrounding a cell that separates the cell from its external environment. It consists of a phospholipid bilayer and associated proteins."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasBroadSynonym "juxtamembrane"^^xsd:string, + oboInOwl:hasNarrowSynonym "inner endospore membrane"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1663586795"^^xsd:string, + oboInOwl:hasExactSynonym "cell membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "plasmalemma"^^xsd:string, + oboInOwl:hasNarrowSynonym "bacterial inner membrane"^^xsd:string, + rdfs:label "plasma membrane"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cell_membrane"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic membrane"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "plasma membrane lipid bilayer"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0005904"^^xsd:string, + oboInOwl:id "GO:0005886"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:BFO_0000050 some obo:GO_0071944, + obo:GO_0016020 + + +Class: obo:GO_0005885 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:12479800"^^xsd:string + obo:IAO_0000115 "A stable protein complex that contains two actin-related proteins, Arp2 and Arp3, and five novel proteins (ARPC1-5), and functions in the nucleation of branched actin filaments."^^xsd:string, + rdfs:label "Arp2/3 protein complex"^^xsd:string, + oboInOwl:id "GO:0005885"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0043234 + + +Class: obo:GO_0031474 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "myosin IV complex"^^xsd:string, + oboInOwl:id "GO:0031474"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing one or more class IV myosin heavy chains and associated light chains; myosin IV is relatively uncharacterized, but is predicted to have a single motor domain, one IQ motif and a tail with a Myosin Tail Homology (myTH4) domain homologous to that in the tails of myosins VII and XV."^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0031471 + + Annotations: + oboInOwl:id "GO:0031471"^^xsd:string, + oboInOwl:hasRelatedSynonym "ethanolamine metabolosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:js"^^xsd:string, + oboInOwl:hasDbXref "PMID:11844753"^^xsd:string + obo:IAO_0000115 "An organelle found in bacteria consisting of a proteinaceous coat containing enzymes for the degradation of ethanolamine whose purpose is the protection of the rest of the cell from the toxic acetaldehyde product of the enzyme ethanolamine ammonia lyase."^^xsd:string, + rdfs:label "ethanolamine degradation polyhedral organelle"^^xsd:string + + SubClassOf: + obo:GO_0031469 + + +Class: obo:GO_0005887 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to plasma membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a plasma membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:id "GO:0005887"^^xsd:string + + SubClassOf: + obo:GO_0031226, + obo:GO_0016021 + + +Class: obo:GO_0031472 + + Annotations: + oboInOwl:id "GO:0031472"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "propanediol degradation polyhedral organelle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:js"^^xsd:string, + oboInOwl:hasDbXref "PMID:10498708"^^xsd:string, + oboInOwl:hasDbXref "PMID:11844753"^^xsd:string, + oboInOwl:hasDbXref "PMID:12923081"^^xsd:string + obo:IAO_0000115 "An organelle found in bacteria consisting of a proteinaceous coat containing enzymes for the degradation of 1,2-propanediol whose purpose is the protection of the rest of the cell from the toxic propionaldehyde product of the enzyme diol dehydratase."^^xsd:string + + SubClassOf: + obo:GO_0031469 + + +Class: obo:GO_0005889 + + Annotations: + oboInOwl:hasExactSynonym "hydrogen/potassium-exchanging ATPase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "proton pump"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "hydrogen:potassium-exchanging ATPase complex"^^xsd:string, + oboInOwl:id "GO:0005889"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11756431"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses hydrogen:potassium-exchanging ATPase activity; characterized in animal cells, where it maintains ionic gradients of Na+ and K+ at the expense of ATP hydrolysis; The complex contains two obligatory subunits, the catalytic alpha subunit and a glycosylated beta subunit; two additional subunits, gamma and channel-inducing factor (CHIF), may also be present."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031470 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031470"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:js"^^xsd:string, + oboInOwl:hasDbXref "PMID:8157606"^^xsd:string, + oboInOwl:hasDbXref "PMID:8491708"^^xsd:string + obo:IAO_0000115 "An organelle found in the Cyanobacteria consisting of a proteinaceous coat and enzymes for the fixation of carbon dioxide including mechanisms for the concentration of carbonate to increase the efficiency of fixation under low-carbon dioxide conditions."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Carboxysome"^^xsd:string, + rdfs:label "carboxysome"^^xsd:string + + SubClassOf: + obo:GO_0031469 + + +Class: obo:GO_0071575 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of the plasma membrane, with the bulk of the gene product located on the side opposite to the side that faces the cytoplasm."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071575"^^xsd:string, + rdfs:label "integral to external side of plasma membrane"^^xsd:string + + SubClassOf: + obo:GO_0031233, + obo:GO_0005887 + + +Class: obo:GO_0031469 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:js"^^xsd:string, + oboInOwl:hasDbXref "PMID:10498708"^^xsd:string, + oboInOwl:hasDbXref "PMID:11844753"^^xsd:string, + oboInOwl:hasDbXref "PMID:12923081"^^xsd:string + obo:IAO_0000115 "An organelle found in bacteria consisting of a proteinaceous coat containing metabolic enzymes whose purpose is the sequestration or concentration of metabolites and which has the appearance of a polygonal granule by electron microscopy."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0031469"^^xsd:string, + rdfs:label "polyhedral organelle"^^xsd:string + + SubClassOf: + obo:GO_0043232 + + +Class: obo:GO_0031467 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Cul7-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "CDL7 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul7 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 linker and an F-box protein."^^xsd:string, + oboInOwl:hasExactSynonym "SCF7 complex"^^xsd:string, + oboInOwl:id "GO:0031467"^^xsd:string, + oboInOwl:hasExactSynonym "cullin-RING ligase 7"^^xsd:string, + oboInOwl:hasExactSynonym "CRL7 complex"^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0031466 + + Annotations: + oboInOwl:hasExactSynonym "CDL5 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Cul5-RING ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "SCF5 complex"^^xsd:string, + oboInOwl:hasBroadSynonym "EC2S complex"^^xsd:string, + oboInOwl:id "GO:0031466"^^xsd:string, + oboInOwl:hasExactSynonym "CRL5 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul5 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by an elongin-BC adaptor and a SOCS/BC box protein."^^xsd:string, + oboInOwl:hasExactSynonym "cullin-RING ligase 5"^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0005834 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "Any of a family of heterotrimeric GTP-binding and hydrolyzing proteins; they belong to a superfamily of GTPases that includes monomeric proteins such as EF-Tu and RAS. Heterotrimeric G-proteins consist of three subunits; the alpha subunit contains the guanine nucleotide binding site and possesses GTPase activity; the beta and gamma subunits are tightly associated and function as a beta-gamma heterodimer; extrinsic plasma membrane proteins (cytoplasmic face) that function as a complex to transduce signals from G-protein coupled receptors to an effector protein."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "heterotrimeric G-protein GTPase, gamma-subunit"^^xsd:string, + oboInOwl:hasNarrowSynonym "heterotrimeric G-protein GTPase, beta-subunit"^^xsd:string, + rdfs:label "heterotrimeric G-protein complex"^^xsd:string, + oboInOwl:id "GO:0005834"^^xsd:string, + oboInOwl:hasNarrowSynonym "heterotrimeric G-protein GTPase, alpha-subunit"^^xsd:string, + rdfs:comment "See also the molecular function term 'G-protein coupled receptor activity ; GO:0004930'."^^xsd:string, + oboInOwl:hasRelatedSynonym "heterotrimeric G-protein GTPase activity"^^xsd:string + + SubClassOf: + obo:GO_0031234, + obo:GO_0043234 + + +Class: obo:GO_0005835 + + Annotations: + oboInOwl:hasAlternativeId "GO:0031373"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031374"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "fatty acid synthase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "holo-[acyl-carrier-protein] synthase complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Fatty_acid_synthetase_complex"^^xsd:string, + oboInOwl:id "GO:0005835"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pde"^^xsd:string, + oboInOwl:hasDbXref "GOC:sgd_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716746840"^^xsd:string + obo:IAO_0000115 "A multienzyme complex that catalyses the synthesis of fatty acids from acetyl CoA."^^xsd:string, + oboInOwl:hasExactSynonym "cytosolic FAS complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "fatty acid synthetase complex"^^xsd:string, + oboInOwl:hasExactSynonym "cytosolic type I FAS complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "cytosolic type I fatty acid synthase complex"^^xsd:string, + oboInOwl:hasExactSynonym "FAS complex"^^xsd:string, + oboInOwl:hasExactSynonym "cytosolic fatty acid synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0033593 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BRCA2-MAGE-D1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15930293"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex formed of BRCA2 and MAGE-D1; may mediate the synergistic activities of the two proteins in regulating cell growth."^^xsd:string, + oboInOwl:id "GO:0033593"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005832 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sgd_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:11580267"^^xsd:string + obo:IAO_0000115 "A multisubunit ring-shaped complex that mediates protein folding in the cytosol without a cofactor."^^xsd:string, + oboInOwl:hasExactSynonym "CCT particle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chaperonin-containing T-complex"^^xsd:string, + oboInOwl:id "GO:0005832"^^xsd:string, + oboInOwl:hasExactSynonym "TriC"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0005833 + + Annotations: + rdfs:label "hemoglobin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005833"^^xsd:string, + oboInOwl:hasExactSynonym "haemoglobin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "An iron-containing, oxygen carrying complex. In vertebrates it is made up of two pairs of associated globin polypeptide chains, each chain carrying a noncovalently bound heme prosthetic group."^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0005831 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005831"^^xsd:string, + rdfs:label "steroid hormone aporeceptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7493981"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of a steroid receptor associated with nonreceptor proteins, minimally a dimer of Hsp90 and a monomer of hsp56/FKBP59; forms in the absence of bound ligand."^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0033597 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10704439"^^xsd:string, + oboInOwl:hasDbXref "PMID:11535616"^^xsd:string, + oboInOwl:hasDbXref "PMID:11726501"^^xsd:string, + oboInOwl:hasDbXref "PMID:17650307"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that functions as a mitotic checkpoint inhibitor of the anaphase-promoting complex/cyclosome (APC/C). In budding yeast this complex consists of Mad2p, Mad3p, Bub3p and Cdc20p, and in mammalian cells it consists of MAD2, BUBR1, BUB3, and CDC20."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitotic checkpoint complex"^^xsd:string, + oboInOwl:hasExactSynonym "MCC"^^xsd:string, + oboInOwl:id "GO:0033597"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0033596 + + Annotations: + rdfs:label "TSC1-TSC2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "tuberous sclerosis complex"^^xsd:string, + oboInOwl:hasExactSynonym "tuberin-hamartin complex "^^xsd:string, + oboInOwl:id "GO:0033596"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10585443"^^xsd:string, + oboInOwl:hasDbXref "PMID:17121544"^^xsd:string, + oboInOwl:hasDbXref "PMID:9580671"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of tumerin and hamartin; its formation may regulate hamartin homomultimer formation. The complex acts as a GTPase activating protein (GAP) for the small GTPase (Rheb), and inhibits the TOR signaling pathway."^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0032579 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032579"^^xsd:string, + rdfs:label "apical lamina of hyaline layer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:2060714"^^xsd:string, + oboInOwl:hasDbXref "PMID:7608987"^^xsd:string, + oboInOwl:hasDbXref "PMID:9638331"^^xsd:string + obo:IAO_0000115 "A fibrous network that is part of the hyalin layer extracellular matrix. The apical lamina is thought to be principally composed of the glycoproteins fibropellins. This matrix has been found in echinoderms."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033166, + obo:GO_0044420 + + +Class: obo:GO_0072687 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0072687"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:11408572"^^xsd:string, + oboInOwl:hasDbXref "PMID:18367542"^^xsd:string, + oboInOwl:hasDbXref "PMID:8027178"^^xsd:string + obo:IAO_0000115 "A spindle that forms as part of meiosis. Several proteins, such as budding yeast Spo21p, fission yeast Spo2 and Spo13, and C. elegans mei-1, localize specifically to the meiotic spindle and are absent from the mitotic spindle."^^xsd:string, + rdfs:label "meiotic spindle"^^xsd:string + + SubClassOf: + obo:GO_0005819 + + +Class: obo:GO_0032578 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an aleurone grain."^^xsd:string, + oboInOwl:id "GO:0032578"^^xsd:string, + rdfs:label "aleurone grain membrane"^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0033095 + + +Class: obo:GO_0072686 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitotic spindle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:11408572"^^xsd:string, + oboInOwl:hasDbXref "PMID:18367542"^^xsd:string, + oboInOwl:hasDbXref "PMID:8027178"^^xsd:string + obo:IAO_0000115 "A spindle that forms as part of mitosis. Mitotic and meiotic spindles contain distinctive complements of proteins associated with microtubules."^^xsd:string, + oboInOwl:id "GO:0072686"^^xsd:string + + SubClassOf: + obo:GO_0005819 + + +Class: obo:GO_0033185 + + Annotations: + oboInOwl:hasExactSynonym "dolichyl-phosphate beta-D-mannosyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10835346"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses dolichyl-phosphate beta-D-mannosyltransferase activity; contains a catalytic subunit, a regulatory subunit, and a third subunit that stabilizes the complex. In human and several other metazoa, the subunits are named DPM1, DPM2 and DPM3, respectively."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "DPM synthase complex"^^xsd:string, + rdfs:label "dolichol-phosphate-mannose synthase complex"^^xsd:string, + oboInOwl:id "GO:0033185"^^xsd:string + + SubClassOf: + obo:GO_0031501 + + +Class: obo:GO_0033186 + + Annotations: + rdfs:label "CAF-1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chromatin assembly factor 1 complex"^^xsd:string, + oboInOwl:id "GO:0033186"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17065558"^^xsd:string, + oboInOwl:hasDbXref "PMID:17083276"^^xsd:string + obo:IAO_0000115 "A conserved heterotrimeric protein complex that promotes histone H3 and H4 deposition onto newly synthesized DNA during replication or DNA repair; specifically facilitates replication-dependent nucleosome assembly with the major histone H3 (H3.1). In many species the CAF-1 subunits are designated p150, p60, and p48."^^xsd:string + + SubClassOf: + obo:GO_0005678 + + +Class: obo:GO_0032580 + + Annotations: + oboInOwl:id "GO:0032580"^^xsd:string, + rdfs:label "Golgi cisterna membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi stack membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the thin, flattened compartments that form the central portion of the Golgi complex."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031985, + obo:GO_0000139 + + +Class: obo:GO_0032587 + + Annotations: + oboInOwl:hasRelatedSynonym "membrane ruffle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032587"^^xsd:string, + rdfs:label "ruffle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a ruffle."^^xsd:string + + SubClassOf: + obo:GO_0031256, + obo:BFO_0000050 some obo:GO_0001726, + obo:GO_0031253 + + +Class: obo:GO_0032586 + + Annotations: + rdfs:label "protein storage vacuole membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032586"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a protein storage vacuole."^^xsd:string + + SubClassOf: + obo:GO_0009705 + + +Class: obo:GO_0032585 + + Annotations: + oboInOwl:hasExactSynonym "MVB membrane"^^xsd:string, + rdfs:label "multivesicular body membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032585"^^xsd:string, + oboInOwl:hasExactSynonym "MVE membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a multivesicular body."^^xsd:string, + oboInOwl:hasExactSynonym "multivesicular endosome membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005771, + obo:GO_0031902 + + +Class: obo:GO_0032584 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032584"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a growth cone."^^xsd:string, + rdfs:label "growth cone membrane"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030426, + obo:GO_0044459 + + +Class: obo:GO_0071565 + + Annotations: + oboInOwl:id "GO:0071565"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:ss"^^xsd:string, + oboInOwl:hasDbXref "PMID:17640523"^^xsd:string + obo:IAO_0000115 "A SWI/SNF-type complex that is found in post-mitotic neurons, and in human contains actin and proteins encoded by the ARID1A/BAF250A or ARID1B/BAF250B, SMARCD1/BAF60A, SMARCD3/BAF60C, SMARCA2/BRM/BAF190B, SMARCA4/BRG1/BAF190A, SMARCB1/BAF47, SMARCC1/BAF155, SMARCE1/BAF57, SMARCC2/BAF170, DPF1/BAF45B, DPF3/BAF45C, ACTL6B/BAF53B genes. The nBAF complex along with CREST plays a role regulating the activity of genes essential for dendrite growth."^^xsd:string, + rdfs:label "nBAF complex"^^xsd:string + + SubClassOf: + obo:GO_0070603 + + +Class: obo:GO_0033180 + + Annotations: + oboInOwl:id "GO:0033180"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "proton-transporting V-type ATPase, V1 domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of a proton-transporting V-type ATPase and catalyzes ATP hydrolysis. The V1 complex consists of: (1) a globular headpiece with three alternating copies of subunits A and B that form a ring, (2) a central rotational stalk composed of single copies of subunits D and F, and (3) a peripheral stalk made of subunits C, E, G and H. Subunits A and B mediate the hydrolysis of ATP at three reaction sites associated with subunit A."^^xsd:string + + SubClassOf: + obo:GO_0033178, + obo:BFO_0000050 some obo:GO_0033176 + + +Class: obo:GO_0018444 + + Annotations: + rdfs:label "translation release factor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "eukaryotic peptide chain release factor"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A heterodimeric complex involved in the release of a nascent polypeptide chain from a ribosome."^^xsd:string, + oboInOwl:id "GO:0018444"^^xsd:string, + oboInOwl:hasBroadSynonym "peptide chain release factor"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005829 + + Annotations: + oboInOwl:id "GO:0005829"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hgd"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The part of the cytoplasm that does not contain organelles but which does contain other particulate matter, such as protein complexes."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytosol"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao101633890"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Cytosol"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0031436 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12787778"^^xsd:string + obo:IAO_0000115 "A heterodimeric complex comprising BRCA1 and BARD1, which possesses ubiquitin ligase activity and is involved in genome maintenance, possibly by functioning in surveillance for DNA damage."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BRCA1-BARD1 complex"^^xsd:string, + oboInOwl:id "GO:0031436"^^xsd:string + + SubClassOf: + obo:GO_0000152 + + +Class: obo:GO_0032969 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + oboInOwl:hasExactSynonym "endosomal adaptor complex"^^xsd:string, + oboInOwl:id "GO:0032969"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "MP1-p14 scaffolding complex"^^xsd:string, + rdfs:label "endosomal scaffold complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15263099"^^xsd:string, + oboInOwl:hasDbXref "PMID:16227978"^^xsd:string, + oboInOwl:hasDbXref "PMID:17496910"^^xsd:string + obo:IAO_0000115 "A protein complex that contains MAPKSP1 (MP1, Map2k1ip1) and ROBLD3 (p14, Mapbpip), is anchored to late endosomes, and is involved in selective activation of the ERK1 in ERK/MAPK signaling."^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0031902, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0005828 + + Annotations: + rdfs:label "kinetochore microtubule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Any of the spindle microtubules that attach to the kinetochores of chromosomes by their plus ends, and maneuver the chromosomes during mitotic or meiotic chromosome segregation."^^xsd:string, + oboInOwl:id "GO:0005828"^^xsd:string, + oboInOwl:hasExactSynonym "pole-to-kinetochore microtubule"^^xsd:string + + SubClassOf: + obo:GO_0005876 + + +Class: obo:GO_0071561 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string, + oboInOwl:hasDbXref "PMID:16709156"^^xsd:string, + oboInOwl:hasDbXref "PMID:16806880"^^xsd:string + obo:IAO_0000115 "An organelle membrane contact site formed between the vacuole membrane and the outer nuclear membrane. In S. cerevisiae these contacts are mediated through direct physical interaction between Vac8p and Nvj1p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071561"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "nucleus-vacuole membrane contact site"^^xsd:string, + rdfs:label "nucleus-vacuole junction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16806880"^^xsd:string + oboInOwl:hasExactSynonym "NVJ"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string, + oboInOwl:hasDbXref "PMID:16709156"^^xsd:string + oboInOwl:hasExactSynonym "NV junction"^^xsd:string + + SubClassOf: + obo:GO_0044232 + + +Class: obo:GO_0005827 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005827"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Any of the spindle microtubules that come from each pole and overlap at the spindle midzone. This interdigitating structure consisting of antiparallel microtubules is responsible for pushing the poles of the spindle apart."^^xsd:string, + oboInOwl:hasExactSynonym "pole-to-pole microtubule"^^xsd:string, + rdfs:label "polar microtubule"^^xsd:string + + EquivalentTo: + obo:GO_0005876 + and (obo:BFO_0000050 some obo:GO_0000922) + + SubClassOf: + obo:GO_0005876, + obo:BFO_0000050 some obo:GO_0000922 + + +Class: obo:GO_0071564 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071564"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:ss"^^xsd:string, + oboInOwl:hasDbXref "PMID:17640523"^^xsd:string + obo:IAO_0000115 "A SWI/SNF-type complex that is found in neural stem or progenitor cells, and in human contains actin and proteins encoded by the ARID1A/BAF250A or ARID1B/BAF250B, SMARCD1/BAF60A, SMARCD3/BAF60C, SMARCA2/BRM/BAF190B, SMARCA4/BRG1/BAF190A, SMARCB1/BAF47, SMARCC1/BAF155, SMARCE1/BAF57, SMARCC2/BAF170, PHF10/BAF45A, ACTL6A/BAF53A genes. The npBAF complex is essential for the self-renewal/proliferative capacity of the multipotent neural stem cells."^^xsd:string, + rdfs:label "npBAF complex"^^xsd:string + + SubClassOf: + obo:GO_0070603 + + +Class: obo:GO_0033181 + + Annotations: + oboInOwl:hasExactSynonym "plasma membrane hydrogen ion-transporting ATPase"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A proton-transporting two-sector ATPase complex found in the plasma membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033181"^^xsd:string, + rdfs:label "plasma membrane proton-transporting V-type ATPase complex"^^xsd:string + + EquivalentTo: + obo:GO_0033176 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0033176, + obo:GO_0044459 + + +Class: obo:GO_0005826 + + Annotations: + oboInOwl:hasAlternativeId "GO:0030480"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "constriction ring"^^xsd:string, + oboInOwl:hasNarrowSynonym "cytokinetic ring"^^xsd:string, + oboInOwl:hasExactSynonym "CAR"^^xsd:string, + oboInOwl:id "GO:0005826"^^xsd:string, + oboInOwl:hasExactSynonym "contractile actomyosin ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_jrp"^^xsd:string, + oboInOwl:hasDbXref "GOC:sgd_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0805319409"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A cytoskeletal structure composed of actin filaments and myosin that forms beneath the plasma membrane of many cells, including animal cells and yeast cells, in a plane perpendicular to the axis of the spindle, i.e. the cell division plane. Ring contraction is associated with centripetal growth of the membrane that divides the cytoplasm of the two daughter cells. In animal cells, the contractile ring is located inside the plasma membrane at the location of the cleavage furrow. In budding fungal cells, e.g. mitotic S. cerevisiae cells, the contractile ring forms beneath the plasma membrane at the mother-bud neck before mitosis."^^xsd:string, + rdfs:label "actomyosin contractile ring"^^xsd:string, + oboInOwl:hasRelatedSynonym "actomyosin ring"^^xsd:string + + SubClassOf: + obo:GO_0070938, + obo:GO_0044430, + obo:GO_0032155, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0044448 + + +Class: obo:GO_0071563 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string, + oboInOwl:hasDbXref "PMID:12594460"^^xsd:string + obo:IAO_0000115 "A protein complex that is involved in transport of vacuoles to a newly formed daughter cell. In yeast, this complex is composed of Myo2p, Vac17p, and Vac8p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071563"^^xsd:string, + rdfs:label "Myo2p-Vac17p-Vac8p transport complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005825 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005825"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "Structure adjacent to the plaques of the spindle pole body."^^xsd:string, + rdfs:label "half bridge of spindle pole body"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005816 + + +Class: obo:GO_0046696 + + Annotations: + rdfs:label "lipopolysaccharide receptor complex"^^xsd:string, + oboInOwl:id "GO:0046696"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11706042"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that consists of at least three proteins, CD14, TLR4, and MD-2, each of which is glycosylated."^^xsd:string, + oboInOwl:hasExactSynonym "LPS receptor complex"^^xsd:string, + rdfs:comment "Note that this term should not be used to refer to CD14 alone, but the multiprotein receptor complex that it is part of."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016021, + obo:GO_0044425, + obo:GO_0043235 + + +Class: obo:GO_0005821 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:9215630"^^xsd:string + obo:IAO_0000115 "Structure between the central and outer plaques of the spindle pole body."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005821"^^xsd:string, + rdfs:label "intermediate layer of spindle pole body"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005816 + + +Class: obo:GO_0046695 + + Annotations: + oboInOwl:hasExactSynonym "SALSA complex"^^xsd:string, + oboInOwl:hasExactSynonym "SLIK/SALSA complex"^^xsd:string, + oboInOwl:id "GO:0046695"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the cellular component term 'SAGA complex ; GO:0000124'."^^xsd:string, + rdfs:label "SLIK (SAGA-like) complex"^^xsd:string, + oboInOwl:hasExactSynonym "SAGA (alt) complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12101232"^^xsd:string, + oboInOwl:hasDbXref "PMID:12186975"^^xsd:string, + oboInOwl:hasDbXref "PMID:17337012"^^xsd:string + obo:IAO_0000115 "A SAGA-type histone acetyltransferase complex that contains Rtg2 and a smaller form of Spt7 than the fungal SAGA complex, and lacks Spt8. The complex is involved in the yeast retrograde response pathway, which is important for gene expression changes during mitochondrial dysfunction."^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0071819, + obo:GO_0070461 + + +Class: obo:GO_0005822 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "One of three laminate structures that form the spindle pole body; the inner plaque is in the nucleus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inner plaque of spindle pole body"^^xsd:string, + oboInOwl:id "GO:0005822"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005816 + + +Class: obo:GO_0005823 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "central plaque of spindle pole body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "One of three laminate structures that form the spindle pole body; the central plaque is embedded in the nuclear envelope."^^xsd:string, + oboInOwl:id "GO:0005823"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005816 + + +Class: obo:GO_0033583 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "rhabdomere membrane"^^xsd:string, + oboInOwl:id "GO:0033583"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding the rhabdomere."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016028, + obo:GO_0031253 + + +Class: obo:GO_0005824 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "One of three laminate structures that form the spindle pole body; the outer plaque is in the cytoplasm."^^xsd:string, + rdfs:label "outer plaque of spindle pole body"^^xsd:string, + oboInOwl:id "GO:0005824"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005816 + + +Class: obo:GO_0033588 + + Annotations: + oboInOwl:hasRelatedSynonym "Elongator core complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:11689709"^^xsd:string, + oboInOwl:hasDbXref "PMID:15769872"^^xsd:string, + oboInOwl:hasDbXref "PMID:17018299"^^xsd:string, + oboInOwl:hasDbXref "PMID:18755837"^^xsd:string + obo:IAO_0000115 "A heterohexameric protein complex that is involved in modification of wobble nucleosides in tRNA, and exerts direct effects on transcriptional elongation and exocytosis. The complex can associate physically with hyperphosphorylated RNA polymerase II; it contains two discrete heterotrimeric subcomplexes."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0033589"^^xsd:string, + oboInOwl:id "GO:0033588"^^xsd:string, + rdfs:label "Elongator holoenzyme complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0032982 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "myosin thick filament"^^xsd:string, + oboInOwl:hasRelatedSynonym "thick filament"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex containing myosin heavy chains, plus associated light chains and other proteins, in which the myosin heavy chains are arranged into a filament."^^xsd:string, + rdfs:label "myosin filament"^^xsd:string, + oboInOwl:id "GO:0032982"^^xsd:string + + SubClassOf: + obo:GO_0016459 + + +Class: obo:GO_0010445 + + Annotations: + rdfs:label "nuclear dicing body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010445"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17442570"^^xsd:string + obo:IAO_0000115 "A small round nuclear body, measuring 0.2-0.8 microns in diameter that is diffusely distributed throughout the nucleoplasm. Several proteins known to be involved in miRNA processing have been localized to these structures. D-bodies are thought to be involved in primary-miRNA processing and/or storage/assembly of miRNA processing complexes."^^xsd:string, + oboInOwl:hasExactSynonym "D body"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0032983 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.bris.ac.uk/Depts/Synaptic/info/glutamate.html"^^xsd:string + obo:IAO_0000115 "An assembly of four or five subunits which form a structure with an extracellular N-terminus and a large loop that together form the ligand binding domain. The C-terminus is intracellular. The ionotropic glutamate receptor complex itself acts as a ligand gated ion channel; on binding glutamate, charged ions pass through a channel in the center of the receptor complex. Kainate receptors are multimeric assemblies of GluR5-7 and KA-1/2 subunits."^^xsd:string, + rdfs:label "kainate selective glutamate receptor complex"^^xsd:string, + oboInOwl:id "GO:0032983"^^xsd:string + + SubClassOf: + obo:GO_0008328 + + +Class: obo:GO_0016593 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:cjk"^^xsd:string + oboInOwl:hasExactSynonym "Paf1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016593"^^xsd:string, + rdfs:label "Cdc73/Paf1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cjk"^^xsd:string + oboInOwl:hasExactSynonym "Paf1p complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11884586"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that associates with RNA polymerase II and general RNA polymerase II transcription factor complexes and may be involved in both transcriptional initiation and elongation. In Saccharomyces the complex contains Paf1p, Cdc73p, Ctr9p, Rtf1p, and Leo1p."^^xsd:string + + SubClassOf: + obo:GO_0008023, + obo:BFO_0000050 some obo:GO_0016591 + + +Class: obo:GO_0016590 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:12192034"^^xsd:string + obo:IAO_0000115 "A chromatin-remodeling complex that catalyzes the ATP-dependent assembly of periodic nucleosome arrays. In Drosophila, the complex comprises ACF1 and ISWI."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016590"^^xsd:string, + oboInOwl:hasExactSynonym "ATP-utilizing chromatin assembly and remodeling factor complex"^^xsd:string, + rdfs:label "ACF complex"^^xsd:string + + SubClassOf: + obo:GO_0005678 + + +Class: obo:GO_0046691 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721662544"^^xsd:string, + oboInOwl:hasDbXref "PMID:10700045"^^xsd:string + obo:IAO_0000115 "An apical plasma membrane part that forms a narrow enfolded luminal membrane channel, lined with numerous microvilli, that appears to extend into the cytoplasm of the cell. A specialized network of intracellular canaliculi is a characteristic feature of parietal cells of the gastric mucosa in vertebrates."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intracellular canaliculus"^^xsd:string, + oboInOwl:id "GO:0046691"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0016324 + + +Class: obo:GO_0016592 + + Annotations: + oboInOwl:hasExactSynonym "L mediator complex"^^xsd:string, + rdfs:label "mediator complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016592"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000119"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11454195"^^xsd:string, + oboInOwl:hasDbXref "PMID:16168358"^^xsd:string, + oboInOwl:hasDbXref "PMID:17870225"^^xsd:string + obo:IAO_0000115 "A protein complex that interacts with the carboxy-terminal domain of the largest subunit of RNA polymerase II and plays an active role in transducing the signal from a transcription factor to the transcriptional machinery. The mediator complex is required for activation of transcription of most protein-coding genes, but can also act as a transcriptional corepressor. The Saccharomyces complex contains several identifiable subcomplexes: a head domain comprising Srb2, -4, and -5, Med6, -8, and -11, and Rox3 proteins; a middle domain comprising Med1, -4, and -7, Nut1 and -2, Cse2, Rgr1, Soh1, and Srb7 proteins; a tail consisting of Gal11p, Med2p, Pgd1p, and Sin4p; and a regulatory subcomplex comprising Ssn2, -3, and -8, and Srb8 proteins. Metazoan mediator complexes have similar modular structures and include homologs of yeast Srb and Med proteins."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Mediator_(coactivator)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Srb-mediator complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "CDK8-containing TRAP/mediator complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "TRAP complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:BFO_0000051 some obo:GO_0070847, + obo:GO_0043234 + + +Class: obo:GO_0016591 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016591"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:15196470"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Rna_polymerase_ii"^^xsd:string + obo:IAO_0000115 "Large protein complex composed of the RNA polymerase core complex and a variety of other proteins including transcription factor complexes TFIIA, D, E, F, and H which are required for promoter recognition, and the Mediator subcomplex. Catalyzes the synthesis of eukaryotic pre-mRNA."^^xsd:string, + rdfs:label "DNA-directed RNA polymerase II, holoenzyme"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0005819 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "spindle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The array of microtubules and associated molecules that forms between opposite poles of a eukaryotic cell during mitosis or meiosis and serves to move the duplicated chromosomes apart."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Spindle_apparatus"^^xsd:string, + oboInOwl:id "GO:0005819"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430, + obo:GO_0043232 + + +Class: obo:GO_0071556 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "integral to ER membrane, lumenal side"^^xsd:string, + rdfs:label "integral to lumenal side of endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:id "GO:0071556"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of the endoplasmic reticulum membrane, with the bulk of the gene product located on the side that faces the lumen."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "integral to lumenal side of ER membrane"^^xsd:string + + SubClassOf: + obo:GO_0030176 + + +Class: obo:GO_0005818 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "An array of microtubules emanating from a spindle pole MTOC that do not connect to kinetochores."^^xsd:string, + rdfs:label "aster"^^xsd:string, + oboInOwl:id "GO:0005818"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0005819, + obo:GO_0043232 + + +Class: obo:GO_0005815 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "MTOC"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Microtubule_organizing_center"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string, + oboInOwl:hasDbXref "PMID:17245416"^^xsd:string + obo:IAO_0000115 "A cytoplasmic structure that can catalyze gamma-tubulin-dependent microtubule nucleation and that can anchor microtubules by interacting with their minus ends, plus ends or sides."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0005815"^^xsd:string, + rdfs:label "microtubule organizing center"^^xsd:string, + oboInOwl:hasExactSynonym "microtubule organising centre"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430, + obo:GO_0044444 + + +Class: obo:GO_0033193 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033193"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17440621"^^xsd:string + oboInOwl:hasExactSynonym "Swm complex"^^xsd:string, + rdfs:label "Lsd1/2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17440621"^^xsd:string + oboInOwl:hasRelatedSynonym "Swm1/2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17371846"^^xsd:string + oboInOwl:hasExactSynonym "SAPHIRE complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17371846"^^xsd:string, + oboInOwl:hasDbXref "PMID:17434129"^^xsd:string, + oboInOwl:hasDbXref "PMID:17440621"^^xsd:string + obo:IAO_0000115 "A nucleosome-binding protein complex that comprises two SWIRM domain histone demethylases and two PHD finger proteins. The complex is involved in transcriptional regulation via heterochromatic silencing and the regulation of chromatin boundary formation, and was first identified in fission yeast."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0005814 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "centriole"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao95019936"^^xsd:string, + oboInOwl:id "GO:0005814"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A cellular organelle, found close to the nucleus in many eukaryotic cells, consisting of a small cylinder with microtubular walls, 300-500 nm long and 150-250 nm in diameter. It contains nine short, parallel, peripheral microtubular fibrils, each fibril consisting of one complete microtubule fused to two incomplete microtubules. Cells usually have two centrioles, lying at right angles to each other. At division, each pair of centrioles generates another pair and the twin pairs form the pole of the mitotic spindle."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Centriole"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005813, + obo:GO_0043232 + + +Class: obo:GO_0005816 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "spindle pole body"^^xsd:string, + oboInOwl:id "GO:0005816"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "The microtubule organizing center in fungi; functionally homologous to the animal cell centrosome."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Spindle_pole_body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "SPB"^^xsd:string + + SubClassOf: + obo:GO_0005815, + obo:BFO_0000050 some obo:GO_0000922 + + +Class: obo:GO_0034519 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoplasmic RNA cap binding complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16405910"^^xsd:string + obo:IAO_0000115 "A protein complex found in the cytoplasm that binds the 5' cap structure of an mRNA, and typically consists of the cap-binding protein eIF4E, the adaptor protein eIF4G, and a multi-factor complex comprising eIF1, eIF2, eIF3 and eIF5. This complex mediates recruitment of the 40S subunit to mRNA."^^xsd:string, + oboInOwl:id "GO:0034519"^^xsd:string + + SubClassOf: + obo:GO_0034518 + + +Class: obo:GO_0005852 + + Annotations: + oboInOwl:hasExactSynonym "eIF3"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15904532"^^xsd:string + obo:IAO_0000115 "A complex of several polypeptides that plays at least two important roles in protein synthesis: First, eIF3 binds to the 40S ribosome and facilitates loading of the Met-tRNA/eIF2.GTP ternary complex to form the 43S preinitiation complex. Subsequently, eIF3 apparently assists eIF4 in recruiting mRNAs to the 43S complex. The eIF3 complex contains five conserved core subunits, and may contain several additional proteins; the non-core subunits are thought to mediate association of the complex with specific sets of mRNAs."^^xsd:string, + oboInOwl:id "GO:0005852"^^xsd:string, + oboInOwl:hasExactSynonym "eIF-3"^^xsd:string, + rdfs:label "eukaryotic translation initiation factor 3 complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005853 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10216950"^^xsd:string + obo:IAO_0000115 "A multisubunit nucleotide exchange complex that binds GTP and aminoacyl-tRNAs, and catalyzes their codon-dependent placement at the A-site of the ribosome. In humans, the complex is composed of four subunits, alpha, beta, delta and gamma."^^xsd:string, + oboInOwl:id "GO:0005853"^^xsd:string, + rdfs:label "eukaryotic translation elongation factor 1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0005850 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "eIF2"^^xsd:string, + oboInOwl:hasExactSynonym "eIF-2"^^xsd:string, + oboInOwl:id "GO:0005850"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:EIF-2"^^xsd:string, + rdfs:label "eukaryotic translation initiation factor 2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10216940"^^xsd:string + obo:IAO_0000115 "Complex of three heterogeneous polypeptide chains, that form a ternary complex with initiator methionyl-tRNA and GTP. This ternary complex binds to free 40S subunit, which subsequently binds the 5' end of mRNA."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0031421 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11114897"^^xsd:string, + oboInOwl:hasDbXref "PMID:9732277"^^xsd:string + obo:IAO_0000115 "A complex formed by a recombinase, a regulatory protein, and the DNA sequences bound by each protein; catalyzes a reversible site-specific recombination reaction that results in the alternate expression of one or more genes in various contexts."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031421"^^xsd:string, + rdfs:label "invertasome"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0032993 + + +Class: obo:GO_0072669 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "tRNA splicing ligase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:ENTMULTI-CPLX"^^xsd:string, + oboInOwl:id "GO:0072669"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:21311021"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the ligation of cleaved pre-tRNAs by directly joining spliced tRNA halves to mature-sized tRNAs by incorporating the precursor-derived splice junction phosphate into the mature tRNA as a canonical 3',5'-phosphodiester."^^xsd:string, + rdfs:label "tRNA-splicing ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005851 + + Annotations: + oboInOwl:hasExactSynonym "eIF-2B"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "eukaryotic translation initiation factor 2B complex"^^xsd:string, + oboInOwl:id "GO:0005851"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9438375"^^xsd:string + obo:IAO_0000115 "A multisubunit guanine nucleotide exchange factor which catalyzes the exchange of GDP bound to initiation factor eIF2 for GTP, generating active eIF2-GTP. In humans, it is composed of five subunits, alpha, beta, delta, gamma and epsilon."^^xsd:string, + oboInOwl:hasExactSynonym "eif2B"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0034518 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "RNA cap binding complex"^^xsd:string, + oboInOwl:id "GO:0034518"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any protein complex that binds to a specialized RNA cap structure at any time in the lifetime of the RNA."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0034515 + + Annotations: + oboInOwl:hasExactSynonym "PSG"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:18504300"^^xsd:string + obo:IAO_0000115 "A multisubunit proteasome complex that localizes in the cytoplasm as dot-like structures when cells are in a quiescent state."^^xsd:string, + oboInOwl:id "GO:0034515"^^xsd:string, + rdfs:label "proteasome storage granule"^^xsd:string + + SubClassOf: + obo:GO_0031597 + + +Class: obo:GO_0033573 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string, + oboInOwl:hasDbXref "PMID:16522632"^^xsd:string, + oboInOwl:hasDbXref "PMID:8599111"^^xsd:string + obo:IAO_0000115 "A protein complex composed of a multicopper ferroxidase that oxidizes Fe(II) to Fe(III), and a ferric iron permease that transports the produced Fe(III) into the cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "high affinity iron permease complex"^^xsd:string, + oboInOwl:id "GO:0033573"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0005856 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Cytoskeleton"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "PMID:16959967"^^xsd:string + obo:IAO_0000115 "Any of the various filamentous elements that form the internal framework of cells, and typically remain after treatment of the cells with mild detergent to remove membrane constituents and soluble components of the cytoplasm. The term embraces intermediate filaments, microfilaments, microtubules, the microtrabecular lattice, and other structures characterized by a polymeric filamentous nature and long-range order within the cell. The various elements of the cytoskeleton not only serve in the maintenance of cellular shape but also have roles in other cellular functions, including cellular movement, cell division, endocytosis, and movement of organelles."^^xsd:string, + rdfs:label "cytoskeleton"^^xsd:string, + oboInOwl:id "GO:0005856"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0043232 + + +Class: obo:GO_0005854 + + Annotations: + rdfs:label "nascent polypeptide-associated complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "NACA"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12475173"^^xsd:string, + oboInOwl:hasDbXref "PMID:7568149"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that can reversibly bind to ribosomes, and is located in direct proximity to newly synthesized polypeptide chains as they emerge from the ribosome."^^xsd:string, + oboInOwl:hasExactSynonym "NAC"^^xsd:string, + oboInOwl:id "GO:0005854"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0043083 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "http://synapses.mcg.edu/anatomy/chemical/synapse.stm"^^xsd:string + obo:IAO_0000115 "The narrow gap that separates the presynaptic and postsynaptic membranes, into which neurotransmitter is released."^^xsd:string, + rdfs:label "synaptic cleft"^^xsd:string, + oboInOwl:id "GO:0043083"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao243541954"^^xsd:string + + SubClassOf: + obo:GO_0044456, + obo:GO_0044420 + + +Class: obo:GO_0043082 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The nucleus of a plant egg cell. This nucleus is found at the micropylar end of the embryo."^^xsd:string, + rdfs:label "megagametophyte egg cell nucleus"^^xsd:string, + oboInOwl:id "GO:0043082"^^xsd:string + + SubClassOf: + obo:GO_0043076 + + +Class: obo:GO_0019028 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Capsid"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0046728"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019028"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The protein coat that surrounds the infective nucleic acid in some virus particles. It comprises numerous regularly arranged subunits, or capsomeres."^^xsd:string, + rdfs:label "viral capsid"^^xsd:string + + SubClassOf: + obo:GO_0044423 + + +Class: obo:GO_0071547 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "piP-body"^^xsd:string, + oboInOwl:id "GO:0071547"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20011505"^^xsd:string + obo:IAO_0000115 "A P granule that contains the PIWIL4-TDRD9 module, a set of proteins that act in the secondary piRNA pathway."^^xsd:string + + SubClassOf: + obo:GO_0043186 + + +Class: obo:GO_0043494 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "CLRC complex"^^xsd:string, + oboInOwl:hasExactSynonym "Rik1 E3 ubiquitin ligase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:16127433"^^xsd:string, + oboInOwl:hasDbXref "PMID:20211136"^^xsd:string + obo:IAO_0000115 "An active cullin-dependent E3 ubiquitin ligase complex essential for heterochromatin assembly by RNAi and histone H3K9 methylation."^^xsd:string, + oboInOwl:hasExactSynonym "Clr4-Rik1-Cul4 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Rik1-E3 ubiquitin ligase complex"^^xsd:string, + oboInOwl:id "GO:0043494"^^xsd:string, + rdfs:label "CLRC ubiquitin ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0031465 + + +Class: obo:GO_0019029 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "helical viral capsid"^^xsd:string, + oboInOwl:id "GO:0019029"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:071673706X"^^xsd:string + obo:IAO_0000115 "The protein coat that surrounds the infective nucleic acid in some virus particles; the subunits are arranged to form a protein helix with the genetic material contained within. Tobacco mosaic virus has such a capsid structure."^^xsd:string + + SubClassOf: + obo:GO_0019028 + + +Class: obo:GO_0043493 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "phage terminase complex"^^xsd:string, + oboInOwl:id "GO:0043493"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A complex of a large and small subunit which catalyze the packaging of DNA into phage heads. Note that not all phage terminases have this structure, some exist as single polypeptides."^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:GO_0043234 + + +Class: obo:GO_0033167 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17310250"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains members of the Argonaute family of proteins, additional protein subunits, and duplex siRNA; required for heterochromatin assembly and siRNA generation. Possibly involved in the conversion of ds siRNA to ss siRNA."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ARC complex"^^xsd:string, + oboInOwl:id "GO:0033167"^^xsd:string, + oboInOwl:hasExactSynonym "argonaute siRNA chaperone complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0031332 + + +Class: obo:GO_0033165 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1862095"^^xsd:string, + oboInOwl:hasDbXref "PMID:2194288"^^xsd:string, + oboInOwl:hasDbXref "http://www.glycoforum.gr.jp/science/hyaluronan/HA17/HA17E.html"^^xsd:string + obo:IAO_0000115 "A specialized extracellularc matrix that surrounds the photoreceptors of the retina and lies between them and the apical surface of the retinal pigment epithelium. The IPM has been implicated in several important activities required for photoreceptor function and maintenance."^^xsd:string, + rdfs:label "interphotoreceptor matrix"^^xsd:string, + oboInOwl:id "GO:0033165"^^xsd:string + + SubClassOf: + obo:GO_0005578 + + +Class: obo:GO_0033166 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1721506"^^xsd:string, + oboInOwl:hasDbXref "PMID:9473317"^^xsd:string, + oboInOwl:hasDbXref "http://worms.zoology.wisc.edu/urchins/SUgast_ECM3.html"^^xsd:string + obo:IAO_0000115 "A multilayered extraembryonic matrix that functions as a substrate for cell adhesion through early development. It is thought to protect and lubricate the embryo, stabilize the blastomeres during morphogenesis, and regulate nutrient intake. The major constituent of the hyaline layer is the protein hyalin. This matrix has been found in echinoderms."^^xsd:string, + rdfs:label "hyaline layer"^^xsd:string, + oboInOwl:id "GO:0033166"^^xsd:string + + SubClassOf: + obo:GO_0005578 + + +Class: obo:GO_0033163 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "microneme membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a microneme."^^xsd:string, + oboInOwl:id "GO:0033163"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0020009 + + +Class: obo:GO_0071540 + + Annotations: + oboInOwl:id "GO:0071540"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15904532"^^xsd:string, + oboInOwl:hasDbXref "PMID:19061185"^^xsd:string + obo:IAO_0000115 "An eukaryotic translation initiation factor 3 complex that contains the PCI-domain protein eIF3e."^^xsd:string, + rdfs:label "eukaryotic translation initiation factor 3 complex, eIF3e"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "eIF3e-containing eukaryotic translation initiation factor 3 complex"^^xsd:string + + SubClassOf: + obo:GO_0005852 + + +Class: obo:GO_0019020 + + Annotations: + rdfs:label "multipartite viral genome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A segmented viral genome consisting of more than three sub-genomic nucleic acids but each nucleic acid is packaged into a different virion."^^xsd:string, + oboInOwl:id "GO:0019020"^^xsd:string + + SubClassOf: + obo:GO_0019017 + + +Class: obo:GO_0031415 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12890471"^^xsd:string + obo:IAO_0000115 "A conserved complex that catalyzes the transfer of an acetyl group to an N-terminal Ser, Ala, Gly, or Thr residue of a protein acceptor molecule. In Saccharomyces the complex includes Nat1p and Ard1p, and may contain additional proteins."^^xsd:string, + oboInOwl:hasExactSynonym "N-terminal acetyltransferase A complex"^^xsd:string, + oboInOwl:id "GO:0031415"^^xsd:string, + rdfs:label "NatA complex"^^xsd:string + + SubClassOf: + obo:GO_0031414 + + +Class: obo:GO_0033162 + + Annotations: + oboInOwl:id "GO:0033162"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a melanosome."^^xsd:string, + rdfs:label "melanosome membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042470, + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0045009 + + +Class: obo:GO_0005849 + + Annotations: + oboInOwl:id "GO:0005849"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mRNA cleavage factor complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10357856"^^xsd:string + obo:IAO_0000115 "Any macromolecular complex involved in cleavage or polyadenylation of mRNA molecules."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0019021 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A viral genome composed of deoxyribonucleic acid."^^xsd:string, + rdfs:label "DNA viral genome"^^xsd:string, + oboInOwl:id "GO:0019021"^^xsd:string + + SubClassOf: + obo:GO_0019015 + + +Class: obo:GO_0031416 + + Annotations: + rdfs:label "NatB complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "N-terminal acetyltransferase B complex"^^xsd:string, + oboInOwl:id "GO:0031416"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12890471"^^xsd:string + obo:IAO_0000115 "A conserved complex that catalyzes the transfer of an acetyl group to the N-terminal residue of a protein acceptor molecule that has a Met-Glu, Met-Asp, Met-Asn, or Met-Met N-terminus. In Saccharomyces the complex includes Nat3p and Mdm20p."^^xsd:string + + SubClassOf: + obo:GO_0031414 + + +Class: obo:GO_0005848 + + Annotations: + rdfs:label "mRNA cleavage stimulating factor complex"^^xsd:string, + oboInOwl:id "GO:0005848"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "cleavage stimulation factor activity"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10357856"^^xsd:string + obo:IAO_0000115 "A protein complex required for mRNA cleavage but not for poly(A) addition."^^xsd:string, + oboInOwl:hasNarrowSynonym "CstF complex"^^xsd:string + + SubClassOf: + obo:GO_0005849 + + +Class: obo:GO_0019022 + + Annotations: + rdfs:label "RNA viral genome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019022"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A viral genome composed of ribonucleic acid. This results in genome replication and expression of genetic information being inextricably linked."^^xsd:string + + SubClassOf: + obo:GO_0019015 + + +Class: obo:GO_0031417 + + Annotations: + rdfs:label "NatC complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12890471"^^xsd:string + obo:IAO_0000115 "A conserved complex that catalyzes the transfer of an acetyl group to the N-terminal residue of a protein acceptor molecule that has a Met-Ile, Met-Leu, Met-Trp, or Met-Phe N-terminus. In Saccharomyces the complex includes Mak3p, Mak10p, and Mak31p."^^xsd:string, + oboInOwl:hasExactSynonym "N-terminal acetyltransferase C complex"^^xsd:string, + oboInOwl:id "GO:0031417"^^xsd:string + + SubClassOf: + obo:GO_0031414 + + +Class: obo:GO_0071541 + + Annotations: + rdfs:label "eukaryotic translation initiation factor 3 complex, eIF3m"^^xsd:string, + oboInOwl:id "GO:0071541"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "eIF3m-containing eukaryotic translation initiation factor 3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15904532"^^xsd:string, + oboInOwl:hasDbXref "PMID:19061185"^^xsd:string + obo:IAO_0000115 "An eukaryotic translation initiation factor 3 complex that contains the PCI-domain protein eIF3m."^^xsd:string + + SubClassOf: + obo:GO_0005852 + + +Class: obo:GO_0005847 + + Annotations: + oboInOwl:hasNarrowSynonym "CPF complex"^^xsd:string, + oboInOwl:id "GO:0005847"^^xsd:string, + oboInOwl:hasNarrowSynonym "CPSF complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mRNA cleavage and polyadenylation specificity factor complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "cleavage and polyadenylylation specificity factor activity"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14749727"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that binds to the canonical AAUAAA hexamer and to U-rich upstream sequence elements on the pre-mRNA, thereby stimulating the otherwise weakly active and nonspecific polymerase to elongate efficiently RNAs containing a poly(A) signal."^^xsd:string, + oboInOwl:hasRelatedSynonym "CFII complex"^^xsd:string + + SubClassOf: + obo:GO_0005849 + + +Class: obo:GO_0019023 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A viral genome composed of double stranded RNA."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "dsRNA viral genome"^^xsd:string, + oboInOwl:id "GO:0019023"^^xsd:string + + SubClassOf: + obo:GO_0019022 + + +Class: obo:GO_0019024 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ssRNA viral genome"^^xsd:string, + oboInOwl:id "GO:0019024"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A viral genome composed of single stranded RNA of either positive or negative sense."^^xsd:string + + SubClassOf: + obo:GO_0019022 + + +Class: obo:GO_0031411 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "gas vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8177173"^^xsd:string + obo:IAO_0000115 "A hollow structure made of protein, which usually has the form of a cylindrical tube closed by conical end caps. By regulating their relative gas vesicle content aquatic microbes are able to perform vertical migrations."^^xsd:string, + oboInOwl:id "GO:0031411"^^xsd:string + + SubClassOf: + obo:GO_0043232, + obo:GO_0031410 + + +Class: obo:GO_0019025 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "positive sense viral genome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A single stranded RNA genome with the same nucleotide polarity as mRNA."^^xsd:string, + oboInOwl:id "GO:0019025"^^xsd:string + + SubClassOf: + obo:GO_0019024 + + +Class: obo:GO_0071546 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071546"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20011505"^^xsd:string + obo:IAO_0000115 "A P granule that contains the PIWIL2-TDRD1 module, a set of proteins that act in the primary piRNA pathway. The pi-body corresponds to the cementing material between mitochondria found in gonocytes."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string + oboInOwl:hasExactSynonym "intermitochondrial cement"^^xsd:string, + rdfs:label "pi-body"^^xsd:string + + SubClassOf: + obo:GO_0043186 + + +Class: obo:GO_0019026 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019026"^^xsd:string, + rdfs:label "negative sense viral genome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A single stranded RNA genome with the opposite nucleotide polarity as mRNA."^^xsd:string + + SubClassOf: + obo:GO_0019024 + + +Class: obo:GO_0019027 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019027"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "A RNA genome that contains coding regions that are either positive sense or negative sense on the same RNA molecule."^^xsd:string, + rdfs:label "ambisense viral genome"^^xsd:string + + SubClassOf: + obo:GO_0019024 + + +Class: obo:GO_0031414 + + Annotations: + oboInOwl:hasExactSynonym "NAT complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031414"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A complex that catalyzes the transfer of an acetyl group to the N-terminal residue of a protein acceptor molecule."^^xsd:string, + rdfs:label "N-terminal protein acetyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0031248, + obo:GO_0044444 + + +Class: obo:GO_0034506 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "chromosome, centric core region"^^xsd:string, + oboInOwl:id "GO:0034506"^^xsd:string, + rdfs:label "chromosome, centromeric core region"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "The innermost portion of the centromeric region of a chromosome, encompassing the core region of a chromosome centromere and the proteins that bind to it."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000775 + + +Class: obo:GO_0034507 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + obo:IAO_0000115 "The portion of the centromeric region of a chromosome that flanks the core region, encompassing repeated regions of a chromosome centromere and the proteins that bind to it."^^xsd:string, + oboInOwl:id "GO:0034507"^^xsd:string, + rdfs:label "chromosome, centromeric outer repeat region"^^xsd:string, + oboInOwl:hasRelatedSynonym "chromosome, centric outer repeat region"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000775 + + +Class: obo:GO_0005840 + + Annotations: + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:label "ribosome"^^xsd:string, + oboInOwl:hasRelatedSynonym "ribosomal RNA"^^xsd:string, + oboInOwl:id "GO:0005840"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Ribosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1429207766"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0033279"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "An intracellular organelle, about 200 A in diameter, consisting of RNA and protein. It is the site of protein biosynthesis resulting from translation of messenger RNA (mRNA). It consists of two subunits, one large and one small, each containing only protein and RNA. Both the ribosome and its subunits are characterized by their sedimentation coefficients, expressed in Svedberg units (symbol: S). Hence, the prokaryotic ribosome (70S) comprises a large (50S) subunit and a small (30S) subunit, while the eukaryotic ribosome (80S) comprises a large (60S) subunit and a small (40S) subunit. Two sites on the ribosomal large subunit are involved in translation, namely the aminoacyl site (A site) and peptidyl site (P site). Ribosomes from prokaryotes, eukaryotes, mitochondria, and chloroplasts have characteristically distinct ribosomal proteins."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0030529, + obo:GO_0043232, + obo:GO_0044444 + + +Class: obo:GO_0031431 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "DDK"^^xsd:string, + oboInOwl:hasNarrowSynonym "Cdc7-Dbf4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12045100"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex required for the activation of DNA replication origins; comprises a catalytic subunit and a regulatory subunit (in Saccharomyces, Cdc7p and Dbf4p, respectively); complexes identified in other species generally contain proteins related to the Saccharomyces proteins."^^xsd:string, + oboInOwl:id "GO:0031431"^^xsd:string, + oboInOwl:hasNarrowSynonym "Hsk1-Dfp1 kinase complex"^^xsd:string, + rdfs:label "Dbf4-dependent protein kinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031430 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The midline of aligned thick filaments in a sarcomere; location of specific proteins that link thick filaments. Depending on muscle type the M band consists of different numbers of M lines."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sarcomere#bands"^^xsd:string, + rdfs:label "M band"^^xsd:string, + oboInOwl:hasExactSynonym "mesophragma"^^xsd:string, + oboInOwl:hasBroadSynonym "midline"^^xsd:string, + oboInOwl:id "GO:0031430"^^xsd:string, + oboInOwl:hasNarrowSynonym "M line"^^xsd:string, + oboInOwl:hasExactSynonym "M disc"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031672, + obo:GO_0044449 + + +Class: obo:GO_0033565 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ESCRT-0 complex"^^xsd:string, + oboInOwl:id "GO:0033565"^^xsd:string, + oboInOwl:hasExactSynonym "Hrs/STAM complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12055639"^^xsd:string, + oboInOwl:hasDbXref "PMID:17543868"^^xsd:string + obo:IAO_0000115 "A protein complex required for the recycling of Golgi proteins, formation of lumenal membranes and sorting of ubiquitinated proteins into those membranes. This complex includes Vps1p and Hse1p in yeast and the Hrs and STAM proteins in mammals."^^xsd:string, + oboInOwl:hasExactSynonym "Vps27p-Hse1p complex"^^xsd:string + + SubClassOf: + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0019030 + + Annotations: + oboInOwl:id "GO:0019030"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "ISBN:071673706X"^^xsd:string + obo:IAO_0000115 "The protein coat that surrounds the infective nucleic acid in some virus particles; the subunits are arranged to form an icosahedron, a solid with 20 faces and 12 vertices. Tobacco satellite necrosis virus has such a capsid structure."^^xsd:string, + oboInOwl:hasExactSynonym "quasispherical viral capsid"^^xsd:string, + rdfs:label "icosahedral viral capsid"^^xsd:string + + SubClassOf: + obo:GO_0019028 + + +Class: obo:GO_0005844 + + Annotations: + rdfs:label "polysome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Several ribosomes bound to one mRNA."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Polysome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "polyribosome"^^xsd:string, + oboInOwl:id "GO:0005844"^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0005845 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "mRNA cap complex"^^xsd:string, + rdfs:label "mRNA cap binding complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "Any protein complex that binds to an mRNA cap at any time in the lifetime of the mRNA."^^xsd:string, + oboInOwl:id "GO:0005845"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0034518 + + +Class: obo:GO_0005846 + + Annotations: + rdfs:label "nuclear cap binding complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "CBC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16043498"^^xsd:string + obo:IAO_0000115 "A conserved heterodimeric protein complex that binds to the 5' terminal cap structure m7G(5')ppp(5')N of nascent eukaryotic RNA polymerase II transcripts such as pre-mRNA and U snRNA. The consists of proteins known as CBP20 and CBP80, binds to cap structures in the nucleus, and is involved in pre-mRNA splicing, 3'-end formation, and RNA nuclear export."^^xsd:string, + oboInOwl:hasNarrowSynonym "NCBP-NIP1 complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "mRNA cap binding complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "snRNA cap binding complex"^^xsd:string, + oboInOwl:id "GO:0005846"^^xsd:string, + rdfs:comment "Note that this complex can be found in the cytoplasm as well as the nucleus."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0034518 + + +Class: obo:GO_0032545 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:17452446"^^xsd:string + obo:IAO_0000115 "A protein complex that is involved in the transcription of ribosomal genes. In Saccharomyces this complex consists of Ckb2p, Utp22p, Rrp7p andIfh1p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032545"^^xsd:string, + rdfs:label "CURI complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0033178 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of a proton-transporting two-sector ATPase complex and catalyzes ATP hydrolysis or synthesis. The catalytic domain (F1, V1, or A1) comprises a hexameric catalytic core and a central stalk, and is peripherally associated with the membrane when the two-sector ATPase is assembled."^^xsd:string, + oboInOwl:id "GO:0033178"^^xsd:string, + rdfs:label "proton-transporting two-sector ATPase complex, catalytic domain"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0016469, + obo:GO_0043234 + + +Class: obo:GO_0033179 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033179"^^xsd:string, + rdfs:label "proton-transporting V-type ATPase, V0 domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of a proton-transporting V-type ATPase and mediates proton transport across a membrane. The V0 complex consists of at least four different subunits (a,c,d and e); six or more c subunits form a proton-binding rotor ring."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033176, + obo:GO_0033177 + + +Class: obo:GO_0033174 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pj"^^xsd:string, + oboInOwl:hasDbXref "PMID:11032839"^^xsd:string + obo:IAO_0000115 "The catalytic sector of the mitochondrial hydrogen-transporting ATP synthase; it comprises the catalytic core and central stalk, and is peripherally associated with the chloroplast thylakoid membrane when the entire ATP synthase is assembled. The chloroplast F0 domain contains three alpha, three beta, one gamma, one delta, and one epsilon subunits."^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast proton-transporting F-type ATPase complex, catalytic core CF(1)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast proton-transporting ATP synthase complex, catalytic core CF(1)"^^xsd:string, + oboInOwl:id "GO:0033174"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0045261, + obo:GO_0044434, + obo:BFO_0000050 some obo:GO_0045320 + + +Class: obo:GO_0033175 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "All non-F1 subunits of the chloroplast hydrogen-transporting ATP synthase, including integral and peripheral chloroplast thylakoid membrane proteins."^^xsd:string, + rdfs:label "chloroplast proton-transporting ATP synthase complex, coupling factor CF(o)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast proton-transporting ATP synthase complex, coupling factor CF(0)"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast proton-transporting F-type ATPase complex, coupling factor CF(o)"^^xsd:string, + oboInOwl:id "GO:0033175"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:BFO_0000050 some obo:GO_0045320, + obo:GO_0044434, + obo:GO_0045263 + + +Class: obo:GO_0033176 + + Annotations: + oboInOwl:hasExactSynonym "hydrogen-translocating V-type ATPase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "proton-transporting V-type ATPase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "A proton-transporting two-sector ATPase complex that couples ATP hydrolysis to the transport of protons across a concentration gradient. The resulting transmembrane electrochemical potential of H+ is used to drive a variety of (i) secondary active transport systems via H+-dependent symporters and antiporters and (ii) channel-mediated transport systems. The complex comprises a membrane sector (V0) that carries out proton transport and a cytoplasmic compartment sector (V1) that catalyzes ATP hydrolysis. V-type ATPases are found in the membranes of organelles such as vacuoles, endosomes, and lysosomes, and in the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0033176"^^xsd:string + + SubClassOf: + obo:GO_0016469 + + +Class: obo:GO_0033177 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of a proton-transporting two-sector ATPase complex and carries out proton transport across a membrane. The proton-transporting domain (F0, V0, or A0) includes integral and peripheral membrane proteins."^^xsd:string, + rdfs:label "proton-transporting two-sector ATPase complex, proton-transporting domain"^^xsd:string, + oboInOwl:id "GO:0033177"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0016469, + obo:GO_0043234 + + +Class: obo:GO_0019033 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0721662544"^^xsd:string + obo:IAO_0000115 "A structure lying between the capsid and envelope of a virus, varying in thickness and often distributed asymmetrically."^^xsd:string, + rdfs:label "viral tegument"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Viral_tegument"^^xsd:string, + oboInOwl:id "GO:0019033"^^xsd:string + + SubClassOf: + obo:GO_0044423 + + +Class: obo:GO_0031428 + + Annotations: + oboInOwl:id "GO:0031428"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17284456"^^xsd:string + oboInOwl:hasExactSynonym "box C/D snoRNP ribose 2'-O methylase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "box C/D snoRNP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284456"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex containing small nucleolar RNA of the box C/D type that can carry out ribose-2'-O-methylation of target RNAs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17284456"^^xsd:string + oboInOwl:hasExactSynonym "box C/D snoRNP ribose-2'-O-methyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:GO_0005732 + + +Class: obo:GO_0005836 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "fatty acyl CoA synthase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that fatty acid synthetases of vertebrates and yeast are stable enzyme complexes of multifunctional polypeptide chains, whereas the fatty acid synthetases of plants and E. coli consist of non-associated individual enzymes."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:2.3.1.86"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses fatty-acyl-CoA synthase activity."^^xsd:string, + rdfs:label "fatty-acyl-CoA synthase complex"^^xsd:string, + oboInOwl:id "GO:0005836"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0019034 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0781718325"^^xsd:string + obo:IAO_0000115 "Specific locations and structures in the virus infected cell involved in replicating the viral genome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral replication complex"^^xsd:string, + oboInOwl:id "GO:0019034"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031429 + + Annotations: + rdfs:label "box H/ACA snoRNP complex"^^xsd:string, + oboInOwl:id "GO:0031429"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284456"^^xsd:string + oboInOwl:hasExactSynonym "box H/ACA snoRNP pseudouridylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "PMID:17284456"^^xsd:string, + oboInOwl:hasDbXref "PMID:20227365"^^xsd:string + obo:IAO_0000115 "A box H/ACA RNP complex that is located in the nucleolus."^^xsd:string + + SubClassOf: + obo:GO_0072588, + obo:GO_0044452 + + +Class: obo:GO_0033172 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033172"^^xsd:string, + oboInOwl:hasExactSynonym "gas vesicle wall"^^xsd:string, + rdfs:label "gas vesicle shell"^^xsd:string, + oboInOwl:hasRelatedSynonym "gas vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The proteinaceous structure surrounding a gas vesicle."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031411, + obo:GO_0044433 + + +Class: obo:GO_0005839 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:194"^^xsd:string + oboInOwl:hasNarrowSynonym "PA28gamma-20S proteasome"^^xsd:string, + rdfs:label "proteasome core complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "macropain"^^xsd:string, + oboInOwl:id "GO:0005839"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cjk"^^xsd:string + oboInOwl:hasNarrowSynonym "20S proteasome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:10806206"^^xsd:string + obo:IAO_0000115 "A multisubunit barrel shaped endoprotease complex, which is the core of the proteasome complex."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000503"^^xsd:string, + oboInOwl:hasNarrowSynonym "20S core complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0000502, + obo:GO_0043234 + + +Class: obo:GO_0019031 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0781718325"^^xsd:string + obo:IAO_0000115 "The lipid bilayer and associated glycoproteins that surround many types of virus particle."^^xsd:string, + oboInOwl:hasRelatedSynonym "viral glycoprotein"^^xsd:string, + rdfs:label "viral envelope"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Viral_envelope"^^xsd:string, + oboInOwl:id "GO:0019031"^^xsd:string, + oboInOwl:hasExactSynonym "viral membrane"^^xsd:string + + SubClassOf: + obo:GO_0044423 + + +Class: obo:GO_0005838 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:28"^^xsd:string + oboInOwl:hasExactSynonym "PA700-dependent proteasome activator"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005838"^^xsd:string, + oboInOwl:hasNarrowSynonym "19S regulatory particle"^^xsd:string, + oboInOwl:hasNarrowSynonym "PA700 proteasome activator"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string + obo:IAO_0000115 "A multisubunit complex, which caps one or both ends of the proteasome core complex. This complex recognizes and unfolds ubiquitinated proteins, and translocates them to the proteasome core complex."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:28"^^xsd:string + oboInOwl:hasRelatedSynonym "modulator complex"^^xsd:string, + rdfs:label "proteasome regulatory particle"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0022624, + obo:GO_0043234 + + +Class: obo:GO_0019037 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral assembly intermediate"^^xsd:string, + oboInOwl:id "GO:0019037"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0781718325"^^xsd:string + obo:IAO_0000115 "Specific locations and structures in the virus infected cell involved in assembling new virions."^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0033557 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033557"^^xsd:string, + rdfs:label "Slx1-Slx4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14528010"^^xsd:string, + oboInOwl:hasDbXref "PMID:16467377"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that possesses an endonuclease activity that specifically cleaves certain types of branched DNA structures; because such structures often form during the replication ribosomal DNA (rDNA) repeats, the complex plays a role in the maintenance of rDNA. The subunits are known as Slx1 and Slx 4 in budding and fission yeasts, and are conserved in eukaryotes."^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:GO_0043234 + + +Class: obo:GO_0019038 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "provirus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0121585336"^^xsd:string + obo:IAO_0000115 "The name given to a viral genome after it has been integrated into the host genome; particularly applies to retroviruses and is a required part of the retroviral replication cycle."^^xsd:string, + oboInOwl:id "GO:0019038"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Provirus"^^xsd:string + + EquivalentTo: + obo:GO_0019015 + and (obo:BFO_0000050 some obo:GO_0005694) + + SubClassOf: + obo:GO_0044427, + obo:GO_0019015 + + +Class: obo:GO_0019035 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0781718325"^^xsd:string + obo:IAO_0000115 "Virus-specific complex of protein required for integrating viral genomes into the host genome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral integration complex"^^xsd:string, + oboInOwl:id "GO:0019035"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0031422 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15889139"^^xsd:string + obo:IAO_0000115 "A complex containing a RecQ family helicase and a topoisomerase III homologue; may also include one or more additional proteins; conserved from E. coli to human."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031422"^^xsd:string, + rdfs:label "RecQ helicase-Topo III complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Sgs1-Top3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0019036 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0781718325"^^xsd:string + obo:IAO_0000115 "Specific locations and structures in the virus infected cell involved in transcribing the viral genome."^^xsd:string, + oboInOwl:id "GO:0019036"^^xsd:string, + rdfs:label "viral transcriptional complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0043845 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "IMG:01721"^^xsd:string, + oboInOwl:hasDbXref "PMID:16973612"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Pol_III"^^xsd:string + obo:IAO_0000115 "A subcomplex of DNA polymerase III composed of the epsilon subunit which has proofreading activity, and the theta subunit which enhances the epsilon subunit's proofreading activity."^^xsd:string, + rdfs:label "DNA polymerase III, proofreading complex"^^xsd:string, + oboInOwl:hasExactSynonym "DNA polymerase III, proof-reading complex"^^xsd:string, + oboInOwl:id "GO:0043845"^^xsd:string, + oboInOwl:hasExactSynonym "DNA polymerase III, proofreading subcomplex"^^xsd:string, + oboInOwl:hasExactSynonym "DNA polymerase III, proof-reading subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0009360, + obo:GO_0043234 + + +Class: obo:GO_0043846 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "DNA polymerase III, clamp loader complex"^^xsd:string, + oboInOwl:hasBroadSynonym "clamp loader complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12940977"^^xsd:string + obo:IAO_0000115 "A heptamer that includes the tau and gamma products of the dnaX gene and the chi/psi subcomplex. Confers structural asymmetry that allows the polymerase to replicate both leading and lagging strands."^^xsd:string, + rdfs:label "DNA polymerase III, DnaX complex"^^xsd:string, + oboInOwl:id "GO:0043846"^^xsd:string, + oboInOwl:hasExactSynonym "DNA polymerase III, DnaX subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0009360, + obo:GO_0043234 + + +Class: obo:GO_0032019 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:6541166"^^xsd:string + obo:IAO_0000115 "A prominent mass in the cytoplasm of previtellogenic oocytes. The cloud contains both mitochondria and electron-dense granulofibrillar material (GFM) and is the source of germinal granule material."^^xsd:string, + oboInOwl:hasExactSynonym "Balbiani body"^^xsd:string, + oboInOwl:id "GO:0032019"^^xsd:string, + rdfs:label "mitochondrial cloud"^^xsd:string + + SubClassOf: + obo:GO_0043232, + obo:GO_0044444 + + +Class: obo:GO_0071521 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Ras1-Scd1-Scd2-Cdc42-Shk1 complex"^^xsd:string, + rdfs:label "Cdc42 GTPase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:10567532"^^xsd:string, + oboInOwl:hasDbXref "PMID:7923372"^^xsd:string, + oboInOwl:hasDbXref "PMID:8943016"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of the small GTPase Cdc42 with additional proteins. In Schizosaccharomyces the complex contains the Cdc42, Ras1, Scd1, Scd2, andShk1 proteins, and functions in the Ras1-Scd GTPase signalling pathway."^^xsd:string, + oboInOwl:id "GO:0071521"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0043847 + + Annotations: + oboInOwl:hasExactSynonym "DNA polymerase III, clamp loader chi/psi subcomplex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "IMG:01719"^^xsd:string, + oboInOwl:hasDbXref "PMID:12940977"^^xsd:string + obo:IAO_0000115 "A dimer composed of the chi and psi subunits which is a subassembly of the DNA polymerase III DnaX complex and serves as a bridge between the DnaX complex and the single-stranded DNA-binding protein (SSB)."^^xsd:string, + rdfs:label "DNA polymerase III, DnaX complex, chi/psi subcomplex"^^xsd:string, + oboInOwl:id "GO:0043847"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0043846, + obo:GO_0043234 + + +Class: obo:GO_0031010 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15020051"^^xsd:string + obo:IAO_0000115 "Any chromatin remodeling complex that contains an ATPase subunit of the ISWI family."^^xsd:string, + rdfs:label "ISWI complex"^^xsd:string, + oboInOwl:id "GO:0031010"^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0071120 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha4-beta1 integrin-CD47 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2423"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-CB47 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15292185"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to the cell surface antigen CD47."^^xsd:string, + oboInOwl:id "GO:0071120"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031012 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extracellular matrix"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Extracellular_matrix"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A structure lying external to one or more cells, which provides structural support for cells or tissues; may be completely external to the cell (as in animals) or be part of the cell (as in plants)."^^xsd:string, + oboInOwl:id "GO:0031012"^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0031011 + + Annotations: + rdfs:label "Ino80 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "INO80 chromatin remodeling complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex that contains the Ino80p ATPase; exhibits chromatin remodeling activity and 3' to 5' DNA helicase activity."^^xsd:string, + oboInOwl:id "GO:0031011"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454, + obo:GO_0016585, + obo:GO_0033202 + + +Class: obo:GO_0071117 + + Annotations: + oboInOwl:id "GO:0071117"^^xsd:string, + rdfs:label "alpha5-beta1 integrin-fibronectin-NOV complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12902636"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta1 integrin complex bound to fibronectin and the extracellular matrix protein NOV."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2850"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1-FN-1-NOV complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071116 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12826661"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta1 integrin complex bound to CYR61, a cysteine-rich protein involved in angiogenesis."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2437"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB1-CYR61 complex"^^xsd:string, + oboInOwl:id "GO:0071116"^^xsd:string, + rdfs:label "alpha6-beta1 integrin-CYR61 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071115 + + Annotations: + oboInOwl:id "GO:0071115"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2853"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1-CAL4A3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12682293"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta1 integrin complex bound to endostatin, the NC1 domain of the alpha1 chain of type XVIII collagen."^^xsd:string, + rdfs:label "alpha5-beta1 integrin-endostatin complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031004 + + Annotations: + oboInOwl:id "GO:0031004"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10608856"^^xsd:string, + oboInOwl:hasDbXref "PMID:9858692"^^xsd:string, + oboInOwl:hasDbXref "TIGR_TIGRFAMS:TIGR01497"^^xsd:string + obo:IAO_0000115 "Protein complex that carries out the reaction: ATP + H2O + K+(out) = ADP + phosphate + K+(in). It is a high affinity potassium uptake system. The E. coli complex consists of 4 proteins: KdpA is the potassium ion translocase, KdpB is the ATPase, and KdpC and KdpF seem to be involved in assembly and stabilization of the complex."^^xsd:string, + rdfs:label "potassium ion-transporting ATPase complex"^^xsd:string, + oboInOwl:hasExactSynonym "Kdp system complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0097165 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:10359787"^^xsd:string, + oboInOwl:hasDbXref "PMID:12865437"^^xsd:string + obo:IAO_0000115 "A dense aggregation in the nucleus composed of proteins and RNAs that appear when the cell is under stress."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097165"^^xsd:string, + rdfs:label "nuclear stress granule"^^xsd:string + + SubClassOf: + obo:GO_0035770 + + +Class: obo:GO_0071114 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071114"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12682293"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to tumstatin, the NC1 domain of the alpha3 chain of type IV collagen."^^xsd:string, + rdfs:label "alphaV-beta3 integrin-tumstatin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2365"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-COL4A3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071113 + + Annotations: + rdfs:label "alphaIIb-beta3 integrin-ICAM-4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12477717"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaIIb-beta3 integrin complex bound to the cell adhesion molecule ICAM-4."^^xsd:string, + oboInOwl:id "GO:0071113"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3115"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAIIb-ITGB3-ICAM4 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071112 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2417"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB4-EMILIN1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071112"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12456677"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta4 integrin complex bound to EMILIN-1 (ElastinMicrofibril Interface Located ProteIN)."^^xsd:string, + rdfs:label "alpha4-beta4 integrin-EMILIN-1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031009 + + Annotations: + rdfs:label "plastid ADPG pyrophosphorylase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031009"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ADPG pyrophosphorylase complex found in a plastid."^^xsd:string + + EquivalentTo: + obo:GO_0030929 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0030931 + + +Class: obo:GO_0032021 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12612062"^^xsd:string + obo:IAO_0000115 "A complex of five proteins, designated NELF-A, -B, -C, -D, and -E in human, that can physically associate with RNP polymerase II to induce transcriptional pausing."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032021"^^xsd:string, + rdfs:label "NELF complex"^^xsd:string, + oboInOwl:hasExactSynonym "negative elongation factor complex"^^xsd:string + + SubClassOf: + obo:GO_0008023 + + +Class: obo:GO_0043850 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043850"^^xsd:string, + rdfs:label "RecFOR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "IMG:01764"^^xsd:string, + oboInOwl:hasDbXref "PMID:12769856"^^xsd:string + obo:IAO_0000115 "A heterotrimeric complex composed of the subunits RecF, RecO and RecR. Mediates the loading of RecA protein specifically onto SSB-coated gapped DNA during DNA repair."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0071119 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12941630"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha7-beta1 integrin complex bound to nicotinamide riboside kinase 2 (also known as muscle integrin binding protein, MIBP)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2397"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA7-ITGB1-ITGB1BP3 complex"^^xsd:string, + rdfs:label "alpha7-beta1 integrin-nicotinamide riboside kinase complex"^^xsd:string, + oboInOwl:id "GO:0071119"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071118 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2849"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-FN-1-NOV complex"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-NOV complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12902636"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to the extracellular matrix protein NOV."^^xsd:string, + oboInOwl:id "GO:0071118"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071513 + + Annotations: + rdfs:comment "See also the molecular function term 'acetolactate synthase activity ; GO:0003984'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:19915539"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes decarboxylation of 4'-phosphopantothenoylcysteine to yield 4'-phosphopantetheine; this is the third step in the biosynthesis of Coenzyme A. The complex is homotrimeric in many eukaryotes, but is a heterotrimer in Saccharomyces."^^xsd:string, + rdfs:label "phosphopantothenoylcysteine decarboxylase complex"^^xsd:string, + oboInOwl:id "GO:0071513"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0032009 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12388753"^^xsd:string + obo:IAO_0000115 "A membrane-bounded intracellular vesicle as initially formed upon the ingestion of particulate material by phagocytosis."^^xsd:string, + rdfs:label "early phagosome"^^xsd:string, + oboInOwl:id "GO:0032009"^^xsd:string, + oboInOwl:hasExactSynonym "early phagocytic vesicle"^^xsd:string + + SubClassOf: + obo:GO_0045335 + + +Class: obo:GO_0033150 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12243744"^^xsd:string, + oboInOwl:hasDbXref "PMID:9184090"^^xsd:string + obo:IAO_0000115 "A large cytoskeletal structure located at the posterior end of the perinuclear theca of a mammalian sperm head. The nucleus is tightly associated with the calyx, which contains calicin and basic cylicin proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoskeletal calyx"^^xsd:string, + oboInOwl:id "GO:0033150"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033011, + obo:GO_0044430, + obo:GO_0044444 + + +Class: obo:GO_0001917 + + Annotations: + rdfs:label "photoreceptor inner segment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:12019563"^^xsd:string + obo:IAO_0000115 "The inner segment of a vertebrate photoreceptor containing mitochondria, ribosomes and membranes where opsin molecules are assembled and passed to be part of the outer segment discs."^^xsd:string, + oboInOwl:id "GO:0001917"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0071130 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2386"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1-PPAP2B complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16099422"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta1 integrin complex bound to lipid phosphate phosphohydrolase-3."^^xsd:string, + oboInOwl:id "GO:0071130"^^xsd:string, + rdfs:label "alpha5-beta1 integrin-LPP3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071131 + + Annotations: + rdfs:label "alphaV-beta3 integrin-laminin alpha-4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16824487"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to laminin alpha-4."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2374"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-LAMA4 complex"^^xsd:string, + oboInOwl:id "GO:0071131"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0097169 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097169"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20303873"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of AIM2, ASC, and caspase-1. AIM2 is a member of the HN-200 protein family that appears to be the sensor of cytosolic double-stranded DNA."^^xsd:string, + rdfs:label "AIM2 inflammasome complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031003 + + Annotations: + rdfs:label "actin tubule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kp"^^xsd:string + obo:IAO_0000115 "A cellular structure, approximately 13 nm in diameter, consisting of three actin filaments bundled together."^^xsd:string, + oboInOwl:id "GO:0031003"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0031002 + + +Class: obo:GO_0031002 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "actin rod"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kp"^^xsd:string + obo:IAO_0000115 "A cellular structure consisting of parallel, hexagonally arranged actin tubules, comprising filamentous actin and associated proteins. Found in the germinating spores of Dictyostelium discoideum."^^xsd:string, + oboInOwl:id "GO:0031002"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629 + + +Class: obo:GO_0071126 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071126"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2352"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB6-SPP1 complex"^^xsd:string, + rdfs:label "alphaV-beta6 integrin-osteopontin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16005200"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta6 integrin complex bound to osteopontin."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0043073 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043073"^^xsd:string, + rdfs:label "germ cell nucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CL:0000586"^^xsd:string, + oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The nucleus of a germ cell, a reproductive cell in multicellular organisms."^^xsd:string, + oboInOwl:hasExactSynonym "germ-cell nucleus"^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0071125 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-EGFR complex"^^xsd:string, + oboInOwl:id "GO:0071125"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2369"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-EGFR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15834425"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to epidermal growth factor receptor."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0097179 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:6323392"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains a protease inhibitor and a protease; formation of the complex inhibits protease activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097179"^^xsd:string, + rdfs:label "protease inhibitor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string + oboInOwl:hasExactSynonym "peptidase inhibitor complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0071128 + + Annotations: + rdfs:label "alpha5-beta1 integrin-osteopontin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071128"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3112"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA5-ITGB1-SPP1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16005200"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha5-beta1 integrin complex bound to osteopontin."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071127 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071127"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16005200"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to osteopontin."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3111"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-SPP1 complex"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-osteopontin complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071122 + + Annotations: + oboInOwl:id "GO:0071122"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17363377"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to vascular endothelial growth factor A."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-VEGF-A complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2972"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-VEGFA complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0071121 + + Annotations: + oboInOwl:id "GO:0071121"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-VEGF-D complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2446"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-FIGF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15590642"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to vascular endothelial growth factor D."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031900 + + Annotations: + oboInOwl:id "GO:0031900"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the chromoplast envelope."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chromoplast outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0046862, + obo:GO_0009527 + + +Class: obo:GO_0071124 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15592458"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha1-beta1 integrin complex bound to tyrosine-protein phosphatase non-receptor type 2."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2435"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA1-ITGB1-PTPN2 complex"^^xsd:string, + oboInOwl:id "GO:0071124"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha1-beta1 integrin-tyrosine-protein phosphatase non-receptor type 2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031901 + + Annotations: + rdfs:label "early endosome membrane"^^xsd:string, + oboInOwl:id "GO:0031901"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an early endosome."^^xsd:string + + SubClassOf: + obo:GO_0010008, + obo:BFO_0000050 some obo:GO_0005769 + + +Class: obo:GO_0071123 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2971"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA9-ITGB1-VEGFC complex"^^xsd:string, + oboInOwl:id "GO:0071123"^^xsd:string, + rdfs:label "alpha9-beta1 integrin-VEGF-C complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15590642"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha9-beta1 integrin complex bound to vascular endothelial growth factor C."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031902 + + Annotations: + oboInOwl:id "GO:0031902"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a late endosome."^^xsd:string, + rdfs:label "late endosome membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005770, + obo:GO_0010008 + + +Class: obo:GO_0031903 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a microbody."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "microbody membrane"^^xsd:string, + oboInOwl:id "GO:0031903"^^xsd:string + + SubClassOf: + obo:GO_0031090, + obo:GO_0042579 + + +Class: obo:GO_0031904 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an endosome."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1547508851"^^xsd:string, + oboInOwl:id "GO:0031904"^^xsd:string, + rdfs:label "endosome lumen"^^xsd:string + + SubClassOf: + obo:GO_0044440, + obo:GO_0070013 + + +Class: obo:GO_0043079 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043079"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CL:0000537"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The nucleus of an antipodal cell, one of three cells of the embryo sac in angiosperms, found at the chalazal end of the embryo away from the point of entry of the pollen tube, and its descendents."^^xsd:string, + rdfs:label "antipodal cell nucleus"^^xsd:string + + SubClassOf: + obo:GO_0043076 + + +Class: obo:GO_0031905 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "early endosome lumen"^^xsd:string, + oboInOwl:id "GO:0031905"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an early endosome."^^xsd:string + + SubClassOf: + obo:GO_0031904, + obo:BFO_0000050 some obo:GO_0005769 + + +Class: obo:GO_0043078 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "polar nucleus"^^xsd:string, + oboInOwl:id "GO:0043078"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0618254153"^^xsd:string + obo:IAO_0000115 "Either of two nuclei located centrally in a flowering plant embryo sac that eventually fuse to form the endosperm nucleus."^^xsd:string + + SubClassOf: + obo:GO_0043076 + + +Class: obo:GO_0032010 + + Annotations: + oboInOwl:id "GO:0032010"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Phagolysosome"^^xsd:string, + oboInOwl:hasRelatedSynonym "late phagosome"^^xsd:string, + rdfs:label "phagolysosome"^^xsd:string, + oboInOwl:hasRelatedSynonym "late phagocytic vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12388753"^^xsd:string + obo:IAO_0000115 "A membrane-bounded intracellular vesicle formed by maturation of an early phagosome following the ingestion of particulate material by phagocytosis; during maturation, phagosomes acquire markers of late endosomes and lysosomes."^^xsd:string + + SubClassOf: + obo:GO_0005767, + obo:GO_0045335 + + +Class: obo:GO_0031906 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a late endosome."^^xsd:string, + rdfs:label "late endosome lumen"^^xsd:string, + oboInOwl:id "GO:0031906"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005770, + obo:GO_0031904 + + +Class: obo:GO_0031907 + + Annotations: + rdfs:label "microbody lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of a microbody."^^xsd:string, + oboInOwl:id "GO:0031907"^^xsd:string + + SubClassOf: + obo:GO_0044438, + obo:GO_0070013 + + +Class: obo:GO_0071129 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16099422"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta3 integrin complex bound to lipid phosphate phosphohydrolase-3."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2366"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB3-PPAP2B complex"^^xsd:string, + oboInOwl:id "GO:0071129"^^xsd:string, + rdfs:label "alphaV-beta3 integrin-LPP3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0043076 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "megasporocyte nucleus"^^xsd:string, + oboInOwl:hasExactSynonym "megaspore mother cell nucleus"^^xsd:string, + oboInOwl:id "GO:0043076"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0618254153"^^xsd:string + obo:IAO_0000115 "The nucleus of a megasporocyte, a diploid cell that undergoes meiosis to produce four megaspores, and its descendents."^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0031908 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of a glyoxysome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031908"^^xsd:string, + rdfs:label "glyoxysomal lumen"^^xsd:string + + SubClassOf: + obo:GO_0005782 + + +Class: obo:GO_0031410 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031410"^^xsd:string, + rdfs:label "cytoplasmic vesicle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao180601769"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A vesicle formed of membrane or protein, found in the cytoplasm of a cell."^^xsd:string + + EquivalentTo: + obo:GO_0031982 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0031982, + obo:GO_0043229, + obo:GO_0044444 + + +Class: obo:GO_0035267 + + Annotations: + oboInOwl:hasExactSynonym "TIP60 histone acetyltransferase complex"^^xsd:string, + oboInOwl:id "GO:0035267"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:10966108"^^xsd:string, + oboInOwl:hasDbXref "PMID:14966270"^^xsd:string + obo:IAO_0000115 "A complex having histone acetylase activity on chromatin, as well as ATPase, DNA helicase and structural DNA binding activities. The complex is thought to be involved in double-strand DNA break repair. Subunits of the human complex include HTATIP/TIP60, TRRAP, RUVBL1, BUVBL2, beta-actin and BAF53/ACTL6A. In yeast, the complex has 13 subunits, including the catalytic subunit Esa1 (homologous to human Tip60)."^^xsd:string, + oboInOwl:hasExactSynonym "TIP60 histone acetylase complex"^^xsd:string, + rdfs:label "NuA4 histone acetyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0043189 + + +Class: obo:GO_0031912 + + Annotations: + oboInOwl:id "GO:0031912"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "oral apparatus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10503189"^^xsd:string + obo:IAO_0000115 "Complex basket- or funnel-like structure used by the cell to collect food and channel it to the cytostome; includes specialized sub-structures made up of closely-spaced cilia and underlying basal bodies and fibrillar systems."^^xsd:string, + rdfs:comment "Note that this term refers to a subcellular structure characteristic of ciliate protozoans, and should not be confused with oral anatomical structures of multicellular animals."^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0031913 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10503189"^^xsd:string + obo:IAO_0000115 "Stable structure that regulates the flow of liquid between the contractile vacuole and the surrounding medium."^^xsd:string, + oboInOwl:id "GO:0031913"^^xsd:string, + rdfs:label "contractile vacuole pore"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005884, + obo:GO_0044437, + obo:GO_0044430, + obo:GO_0044459, + obo:GO_0044433, + obo:BFO_0000050 some obo:GO_0031164, + obo:GO_0043234 + + +Class: obo:GO_0008541 + + Annotations: + rdfs:label "proteasome regulatory particle, lid subcomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008541"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + obo:IAO_0000115 "The subcomplex of the proteasome regulatory particle that forms the peripheral lid, which is added on top of the base subcomplex."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0005838, + obo:GO_0043234 + + +Class: obo:GO_0031910 + + Annotations: + oboInOwl:id "GO:0031910"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytostome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cytostome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10503189"^^xsd:string + obo:IAO_0000115 "Stable, specialized structure for the ingestion of food by the cell into phagosomes."^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0097183 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-coagulation factor XI complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-coagulation factor XI complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:2844223"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and coagulation factor XI (F11); formation of the complex inhibits the serine protease activity of coagulation factor XI."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-coagulation factor XI complex"^^xsd:string, + oboInOwl:id "GO:0097183"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000007295"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-F11 complex"^^xsd:string, + rdfs:label "protein C inhibitor-coagulation factor XI complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-coagulation factor XI complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0031911 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031911"^^xsd:string, + rdfs:label "cytoproct"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10503189"^^xsd:string + obo:IAO_0000115 "Stable, specialized structure for extrusion of waste by the cell into the surrounding medium."^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0033116 + + Annotations: + rdfs:label "endoplasmic reticulum-Golgi intermediate compartment membrane"^^xsd:string, + oboInOwl:id "GO:0033116"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string, + oboInOwl:hasDbXref "PMID:16723730"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the compartments of the endoplasmic reticulum (ER)-Golgi intermediate compartment system."^^xsd:string, + oboInOwl:hasExactSynonym "ER-Golgi intermediate compartment membrane"^^xsd:string + + SubClassOf: + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0005793, + obo:GO_0044444 + + +Class: obo:GO_0097189 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_apoptosis"^^xsd:string, + oboInOwl:hasDbXref "http://en.wikipedia.org/wiki/Apoptosis"^^xsd:string, + oboInOwl:hasDbXref "http://en.wikipedia.org/wiki/Bleb_(cell_biology)"^^xsd:string + obo:IAO_0000115 "A fragment containing parts of a dying cell. Apoptotic bodies can be formed during the execution phase of the apoptotic process, when the cell's cytoskeleton breaks up and causes the membrane to bulge outward. These bulges may separate from the cell, taking a portion of cytoplasm with them, to become apoptotic bodies. These are then engulfed by phagocytic cells, and their components recycled."^^xsd:string, + oboInOwl:id "GO:0097189"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "apoptotic body"^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0033117 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:2307702"^^xsd:string + obo:IAO_0000115 "A vesicle filled with crystalline protein that shows sequence similarities with various esterases."^^xsd:string, + rdfs:label "esterosome"^^xsd:string, + oboInOwl:id "GO:0033117"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0008540 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string + obo:IAO_0000115 "The subcomplex of the proteasome regulatory particle that directly associates with the proteasome core complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008540"^^xsd:string, + rdfs:label "proteasome regulatory particle, base subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0005838, + obo:GO_0043234 + + +Class: obo:GO_0033118 + + Annotations: + oboInOwl:id "GO:0033118"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "esterosome membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:2307702"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an esterosome. This membrane has characteristics of rough endoplasmic reticulum (RER) membranes."^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0033117 + + +Class: obo:GO_0032992 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032992"^^xsd:string, + rdfs:label "protein-carbohydrate complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A macromolecular complex containing both protein and carbohydrate molecules."^^xsd:string + + SubClassOf: + obo:GO_0032991 + + +Class: obo:GO_0032991 + + Annotations: + oboInOwl:id "GO:0032991"^^xsd:string, + oboInOwl:hasExactSynonym "macromolecule complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which the constituent parts function together."^^xsd:string, + rdfs:label "macromolecular complex"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0032994 + + Annotations: + oboInOwl:id "GO:0032994"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A macromolecular complex containing both protein and lipid molecules."^^xsd:string, + rdfs:label "protein-lipid complex"^^xsd:string + + SubClassOf: + obo:GO_0032991 + + +Class: obo:GO_0032002 + + Annotations: + oboInOwl:id "GO:0032002"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-28 and interleukin-29. Composed of two subunits, IL-28R alpha and IL-10R beta."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-28 receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "interleukin-28 receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0032993 + + Annotations: + oboInOwl:id "GO:0032993"^^xsd:string, + rdfs:label "protein-DNA complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "DNA-protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A macromolecular complex containing both protein and DNA molecules."^^xsd:string + + SubClassOf: + obo:GO_0032991 + + +Class: obo:GO_0097182 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-coagulation factor Xa complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-coagulation factor Xa complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:6323392"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and coagulation factor Xa (F10); formation of the complex inhibits the serine protease activity of coagulation factor Xa."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-coagulation factor Xa complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-coagulation factor Xa complex"^^xsd:string, + rdfs:label "protein C inhibitor-coagulation factor Xa complex"^^xsd:string, + oboInOwl:id "GO:0097182"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0005811 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "adiposome"^^xsd:string, + rdfs:label "lipid particle"^^xsd:string, + oboInOwl:id "GO:0005811"^^xsd:string, + oboInOwl:hasExactSynonym "lipid body"^^xsd:string, + rdfs:comment "Note that this term does not refer to vesicles, but instead to structures in which lipids do not necessarily form bilayers."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any particle of coalesced lipids in the cytoplasm of a cell. May include associated proteins."^^xsd:string, + oboInOwl:hasExactSynonym "lipid droplet"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0097181 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-coagulation factor V complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein C inhibitor-coagulation factor V complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-coagulation factor V complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000007300"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-F5 complex"^^xsd:string, + oboInOwl:id "GO:0097181"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-coagulation factor V complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:6323392"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and coagulation factor V (F5); formation of the complex inhibits the serine protease activity of coagulation factor V."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-coagulation factor V complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0097180 + + Annotations: + rdfs:label "serine protease inhibitor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string + oboInOwl:hasExactSynonym "serine-type endopeptidase inhibitor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097180"^^xsd:string, + oboInOwl:hasExactSynonym "serpin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:6323392"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains a serine protease inhibitor and a protease; formation of the complex inhibits serine protease activity."^^xsd:string + + SubClassOf: + obo:GO_0097179 + + +Class: obo:GO_0005813 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005813"^^xsd:string, + rdfs:label "centrosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Centrosome"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A structure comprised of a core structure (in most organisms, a pair of centrioles) and peripheral material from which a microtubule-based structure, such as a spindle apparatus, is organized. Centrosomes occur close to the nucleus during interphase in many eukaryotic cells, though in animal cells it changes continually during the cell-division cycle."^^xsd:string + + SubClassOf: + obo:GO_0005815, + obo:GO_0043232 + + +Class: obo:GO_0032999 + + Annotations: + rdfs:label "Fc-alpha receptor I complex"^^xsd:string, + oboInOwl:hasBroadSynonym "IgA receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:12524384"^^xsd:string + obo:IAO_0000115 "A protein complex composed of an Fc-alpha R alpha chain and an Fc-epsilon RI gamma chain dimer with or without additional signaling components. The complex functions primarily as an activating receptor for IgA."^^xsd:string, + oboInOwl:hasExactSynonym "FcaRI complex"^^xsd:string, + oboInOwl:hasBroadSynonym "immunoglobulin A receptor complex"^^xsd:string, + oboInOwl:id "GO:0032999"^^xsd:string + + SubClassOf: + obo:GO_0032997 + + +Class: obo:GO_0043853 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasDbXref "MetaCyc:CPLX-421"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "methanol-coenzyme M methyltransferase complex"^^xsd:string, + oboInOwl:hasExactSynonym "methanol: coenzyme M methyltransferase complex"^^xsd:string, + rdfs:label "methanol-CoM methyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "IMG:01437"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CPLX-421"^^xsd:string, + oboInOwl:hasDbXref "PMID:9363780"^^xsd:string + obo:IAO_0000115 "A heterotrimeric protein complex composed of a methanol methyltransferase subunit, a corrinoid protein and a methanol-specific corrinoid:coenzyme M methyltransferase subunit. Catalyzes the transfer of a methyl group from methanol to coenzyme M as part of the pathway of methanogenesis from methanol."^^xsd:string, + oboInOwl:hasExactSynonym "methanol:coenzyme M methyltransferase complex"^^xsd:string, + oboInOwl:id "GO:0043853"^^xsd:string, + oboInOwl:hasExactSynonym "methanol:CoM methyltransferase complex"^^xsd:string, + oboInOwl:hasExactSynonym "methanol: CoM methyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0034708 + + +Class: obo:GO_0032997 + + Annotations: + oboInOwl:hasExactSynonym "FcR complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "Fc receptor complex"^^xsd:string, + oboInOwl:hasBroadSynonym "immunoglobulin receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "Fc-receptor complex"^^xsd:string, + oboInOwl:id "GO:0032997"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A protein complex composed of a subunit or subunits capable of binding the Fc portion of an immunoglobulin with additional signaling components. The complex functions as a receptor for immunoglobulin."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0032998 + + Annotations: + oboInOwl:hasBroadSynonym "immunoglobulin E receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A protein complex composed of an Fc-epsilon RI alpha chain and an Fc-epsilon RI gamma chain dimer with or without an Fc-episilon RI beta chain and additional signaling components. The complex functions primarily as an activating receptor for IgE."^^xsd:string, + oboInOwl:hasBroadSynonym "IgE receptor complex"^^xsd:string, + rdfs:label "Fc-epsilon receptor I complex"^^xsd:string, + oboInOwl:hasExactSynonym "FceRI complex"^^xsd:string, + oboInOwl:id "GO:0032998"^^xsd:string + + SubClassOf: + obo:GO_0032997 + + +Class: obo:GO_0032996 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Bcl3-Bcl10 complex"^^xsd:string, + oboInOwl:id "GO:0032996"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16280327"^^xsd:string + obo:IAO_0000115 "A protein complex containing Bcl3 and Bcl10, which forms when Akt1 is activated by TNF-alpha to phosphorylate Bcl10; the Bcl3-Bcl10 complex is translocated to the nucleus."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0071100 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071100"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11970960"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphaV-beta8 integrin complex bound to matrix metalloproteinase 14 and transforming growth factor beta-1 (TGFbeta-1)."^^xsd:string, + rdfs:label "alphaV-beta8 integrin-MMP14-TGFbeta-1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2342"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB8-MMP14-TGFB1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0097197 + + Annotations: + oboInOwl:hasExactSynonym "membrane tetraspanin-enriched microdomain"^^xsd:string, + rdfs:label "tetraspanin-enriched microdomain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097197"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:19709882"^^xsd:string, + oboInOwl:hasDbXref "PMID:21930792"^^xsd:string + obo:IAO_0000115 "A pre-organized unit composed either of adhesion molecules (mainly integrins and members of the Ig superfamily), signaling receptors and/or enzyme-enriched plasma membrane domains that compartmentalizes cellular processes. Tetraspanin-enriched microdomains might be specially suited for the regulation of avidity of adhesion receptors and the compartmentalization of enzymatic activities."^^xsd:string, + oboInOwl:hasExactSynonym "TEM"^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0071102 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2425"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-PXN complex"^^xsd:string, + oboInOwl:id "GO:0071102"^^xsd:string, + rdfs:label "alpha4-beta1 integrin-paxillin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12221126"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to paxillin."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0097196 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:15654096"^^xsd:string, + oboInOwl:hasDbXref "PMID:19496932"^^xsd:string + obo:IAO_0000115 "A protein complex involved in error-free DNA post-replication repair (PRR). In Saccharomyces cerevisiae the complex contains Csm2p, Psy3p, Shu1p, and Shu2p."^^xsd:string, + oboInOwl:id "GO:0097196"^^xsd:string, + rdfs:label "Shu complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0071101 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12070135"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha4-beta1 integrin complex bound to the cell adhesion molecule JAM2."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha4-beta1 integrin-JAM2 complex"^^xsd:string, + oboInOwl:id "GO:0071101"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2422"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA4-ITGB1-JAM2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0005802 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The network of interconnected tubular and cisternal structures located at the side of the Golgi apparatus distal to the endoplasmic reticulum, from which secretory vesicles emerge. The trans-Golgi network is important in the later stages of protein secretion where it is thought to play a key role in the sorting and targeting of secreted proteins to the correct destination."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi trans face"^^xsd:string, + oboInOwl:hasRelatedSynonym "maturing face"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "late Golgi"^^xsd:string, + oboInOwl:id "GO:0005802"^^xsd:string, + oboInOwl:hasExactSynonym "trans Golgi network"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao9456487"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi trans-face"^^xsd:string, + oboInOwl:hasExactSynonym "TGN"^^xsd:string, + rdfs:label "trans-Golgi network"^^xsd:string + + SubClassOf: + obo:GO_0044431 + + +Class: obo:GO_0005801 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The network of interconnected tubular and cisternal structures located at the convex side of the Golgi apparatus, which abuts the endoplasmic reticulum."^^xsd:string, + oboInOwl:id "GO:0005801"^^xsd:string, + oboInOwl:hasRelatedSynonym "forming face"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi cis-face"^^xsd:string, + rdfs:label "cis-Golgi network"^^xsd:string, + oboInOwl:hasExactSynonym "cis Golgi network"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi cis face"^^xsd:string + + SubClassOf: + obo:GO_0044431 + + +Class: obo:GO_0008537 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008537"^^xsd:string, + rdfs:label "proteasome activator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that activates the hydrolysis of small nonubiquitinated peptides by binding to the proteasome core complex."^^xsd:string, + oboInOwl:hasNarrowSynonym "PA28"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0022624, + obo:GO_0043234 + + +Class: obo:GO_0033100 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10817755"^^xsd:string, + oboInOwl:hasDbXref "PMID:17157260"^^xsd:string + obo:IAO_0000115 "A Gcn5-independent multisubunit complex that catalyzes the acetylation of histone H3. The budding yeast complex includes Sas3p, Taf30p, and Yng1p."^^xsd:string, + oboInOwl:id "GO:0033100"^^xsd:string, + rdfs:label "NuA3 histone acetyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0070775 + + +Class: obo:GO_0033101 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cellular bud membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a cellular bud."^^xsd:string, + oboInOwl:hasExactSynonym "cellular bud plasma membrane"^^xsd:string, + oboInOwl:id "GO:0033101"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0005933 + + +Class: obo:GO_0033102 + + Annotations: + rdfs:label "acidocalcisome membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:11378195"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an acidocalcisome."^^xsd:string, + oboInOwl:id "GO:0033102"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020022, + obo:GO_0031090, + obo:GO_0044444 + + +Class: obo:GO_0048353 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "Nucleus resulting from the fusion of the male gamete and two polar nuclei in the central cell of the embryo sac."^^xsd:string, + rdfs:label "primary endosperm nucleus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0048353"^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0033104 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "type VI protein secretion system complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "PMID:16432199"^^xsd:string, + oboInOwl:hasDbXref "PMID:16763151"^^xsd:string + obo:IAO_0000115 "A complex of proteins that permits the transfer of proteins into the extracellular milieu or directly into host cells via the type VI secretion system. Proteins secreted by this complex do not require an N-terminal signal sequence."^^xsd:string, + oboInOwl:hasExactSynonym "T6SS complex"^^xsd:string, + oboInOwl:id "GO:0033104"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0070719 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2551"^^xsd:string + oboInOwl:hasNarrowSynonym "PDGFRA-PLC-gamma-1-PI3K-SHP-2 complex, PDGF stimulated"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8943348"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the platelet-derived growth factor alpha receptor (alphaPDGFR; PDGFRA), phospholipase C-gamma-1 (PLC-gamma-1), phosphatidylinositol 3-kinase (PI3K) and the adaptor protein SHP-2, and is involved signaling via the PDGFR signaling pathway."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070719"^^xsd:string, + rdfs:label "alphaPDGFR-PLC-gamma-1-PI3K-SHP-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070718 + + Annotations: + oboInOwl:id "GO:0070718"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphaPDGFR-SHP-2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8943348"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the platelet-derived growth factor alpha receptor (alphaPDGFR; PDGFRA) and the adaptor protein SHP-2, and is involved signaling via the PDGFR signaling pathway."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3183"^^xsd:string + oboInOwl:hasNarrowSynonym "PDGFRA-SHP-2 complex, PDGF stimulated"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0043025 + + Annotations: + rdfs:comment "Note that 'cell body' and 'cell soma' are not used in the literature for cells that lack projections, nor for some cells (e.g. yeast with mating projections) that do have projections."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1044911821"^^xsd:string, + oboInOwl:id "GO:0043025"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "neuronal cell soma"^^xsd:string, + rdfs:label "neuronal cell body"^^xsd:string, + oboInOwl:hasExactSynonym "neuron cell body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The portion of a neuron that includes the nucleus, but excludes all cell projections such as axons and dendrites."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Soma_(biology)"^^xsd:string + + SubClassOf: + obo:GO_0044297 + + +Class: obo:GO_0043020 + + Annotations: + oboInOwl:hasRelatedSynonym "respiratory-burst oxidase"^^xsd:string, + oboInOwl:hasNarrowSynonym "flavocytochrome b558"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043020"^^xsd:string, + rdfs:label "NADPH oxidase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11483596"^^xsd:string, + oboInOwl:hasDbXref "PMID:12440767"^^xsd:string + obo:IAO_0000115 "A enzyme complex of which the core is a heterodimer composed of a light (alpha) and heavy (beta) chain, and requires several other water-soluble proteins of cytosolic origin for activity. Functions in superoxide generation by the NADPH-dependent reduction of O2."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0032068 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Type IV restriction enzyme complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12654995"^^xsd:string + obo:IAO_0000115 "A complex consisting of two proteins which acts as an endonuclease in DNA sequences containing a specific modified recognition site. Modifications may include methylation, hydroxymethylation, and glucosyl-hydroxymethylation."^^xsd:string, + rdfs:label "Type IV site-specific deoxyribonuclease complex"^^xsd:string, + oboInOwl:id "GO:0032068"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0097123 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin A1 and cyclin-dependent kinase 2 (CDK2). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyclin A1-CDK2 complex"^^xsd:string, + oboInOwl:id "GO:0097123"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0097124 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin A2 and cyclin-dependent kinase 2 (CDK2). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + rdfs:label "cyclin A2-CDK2 complex"^^xsd:string, + oboInOwl:id "GO:0097124"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0097121 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin A1 and cyclin-dependent kinase 1 (CDK1). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097121"^^xsd:string, + rdfs:label "cyclin A1-CDK1 complex"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0097122 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin A2 and cyclin-dependent kinase 1 (CDK1). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + rdfs:label "cyclin A2-CDK1 complex"^^xsd:string, + oboInOwl:id "GO:0097122"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033110 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033110"^^xsd:string, + rdfs:label "CVT vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer surrounding a CVT vesicle."^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0033107 + + +Class: obo:GO_0097129 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin D2 and cyclin-dependent kinase 4 (CDK4). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:id "GO:0097129"^^xsd:string, + rdfs:label "cyclin D2-CDK4 complex"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033111 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an attachment organelle."^^xsd:string, + rdfs:label "attachment organelle membrane"^^xsd:string, + oboInOwl:id "GO:0033111"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0033099, + obo:GO_0031090 + + +Class: obo:GO_0097126 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097126"^^xsd:string, + rdfs:label "cyclin B2-CDK1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin B2 and cyclin-dependent kinase 1 (CDK1). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033114 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by a cyanelle thylakoid membrane."^^xsd:string, + rdfs:label "cyanelle thylakoid lumen"^^xsd:string, + oboInOwl:id "GO:0033114"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009843, + obo:GO_0031978 + + +Class: obo:GO_0097125 + + Annotations: + rdfs:label "cyclin B1-CDK1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097125"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin B1 and cyclin-dependent kinase 1 (CDK1). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033115 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyanelle thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer membrane of any thylakoid within a cyanelle."^^xsd:string, + oboInOwl:id "GO:0033115"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009843, + obo:GO_0055035 + + +Class: obo:GO_0097128 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string, + oboInOwl:hasDbXref "PR:000026740"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin D1 and cyclin-dependent kinase 4 (CDK4). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097128"^^xsd:string, + rdfs:label "cyclin D1-CDK4 complex"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033112 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyanelle envelope"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the cyanelle and separating its contents from the rest of the cytoplasm; includes the intermembrane space."^^xsd:string, + oboInOwl:id "GO:0033112"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009842, + obo:GO_0009526 + + +Class: obo:GO_0002095 + + Annotations: + rdfs:label "caveolar macromolecular signaling complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "caveolar macromolecular signalling complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16648270"^^xsd:string + obo:IAO_0000115 "A complex composed of proteins required for beta adrenergic receptor activation of protein kinase A. It includes the Cav 12. subunit of L-type calcium channel, protein kinase A regulatory subunit 2(PKAR2), adenyl cyclase, beta-adrenergic receptor, G-alpha-S, protein phosphatase 2A (PP2A) and caveolin 3 (CAV3)."^^xsd:string, + oboInOwl:id "GO:0002095"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005901, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0097127 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097127"^^xsd:string, + rdfs:label "cyclin B3-CDK2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin B3 and cyclin-dependent kinase 2 (CDK2). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033113 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround a cyanelle and form the cyanelle envelope."^^xsd:string, + rdfs:label "cyanelle membrane"^^xsd:string, + oboInOwl:id "GO:0033113"^^xsd:string + + SubClassOf: + obo:GO_0042170, + obo:BFO_0000050 some obo:GO_0033112 + + +Class: obo:GO_0002096 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that polkadots also contains some amount of MALT1. Interaction with MALT1 is required for formation of the polkadots."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14724296"^^xsd:string, + oboInOwl:hasDbXref "PMID:16495340"^^xsd:string + obo:IAO_0000115 "A punctate, filamentous structure composed of Bcl10 that appears in the cytoplasm of T-cells shortly after T-cell receptor stimulation. Polkadots stands for Punctate Oligomeric Killing and Activating DOmains Transducing Signals."^^xsd:string, + rdfs:label "polkadots"^^xsd:string, + oboInOwl:id "GO:0002096"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0035253 + + Annotations: + oboInOwl:id "GO:0035253"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ciliary rootlet"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12427867"^^xsd:string + obo:IAO_0000115 "A cytoskeleton-like structure, originating from the basal body at the proximal end of a cilium, and extending proximally toward the cell nucleus. Rootlets are typically 80-100 nm in diameter and contain cross striae distributed at regular intervals of approximately 55-70 nm."^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0044441 + + +Class: obo:GO_0043036 + + Annotations: + oboInOwl:id "GO:0043036"^^xsd:string, + oboInOwl:hasExactSynonym "starch granule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "starch grain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11217978"^^xsd:string + obo:IAO_0000115 "Plant storage body for amylose and amylopectin, 1-100um in diameter. Also contains small amounts of enzymes, amino acids, lipids and nucleic acids. The shape of the grain varies widely amongst species, but is often spherical or disk-shaped."^^xsd:string + + SubClassOf: + obo:GO_0044435 + + +Class: obo:GO_0043034 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "PMID:6405378"^^xsd:string + obo:IAO_0000115 "Regular periodic sub membranous arrays of vinculin in skeletal and cardiac muscle cells, these arrays link Z-discs to the sarcolemma and are associated with links to extracellular matrix."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Costamere"^^xsd:string, + oboInOwl:id "GO:0043034"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "costamere"^^xsd:string + + SubClassOf: + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0030016 + + +Class: obo:GO_0070701 + + Annotations: + oboInOwl:id "GO:0070701"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mm2"^^xsd:string, + oboInOwl:hasDbXref "PMID:18806221"^^xsd:string, + oboInOwl:hasDbXref "PMID:19432394"^^xsd:string + obo:IAO_0000115 "An extracellular region part that consists of a protective layer of mucus secreted by epithelial cells lining tubular organs of the body such as the colon. Mucus is a viscous slimy secretion consisting of mucins and various inorganic salts dissolved in water, with suspended epithelial cells and leukocytes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mucus layer"^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0043033 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10333591"^^xsd:string + obo:IAO_0000115 "A protein complex whose composition varies amongst species; in rice it probably exists in a homo-tetramer to homo-hexamer form and in Gram-negative bacteria as a dimer. Functions in the hydrolysis of alpha-(1,6)-D-glucosidic branch linkages."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043033"^^xsd:string, + oboInOwl:hasBroadSynonym "debranching enzyme complex"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "isoamylase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0070703 + + Annotations: + oboInOwl:id "GO:0070703"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "outer mucus layer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mm2"^^xsd:string, + oboInOwl:hasDbXref "PMID:18806221"^^xsd:string, + oboInOwl:hasDbXref "PMID:19432394"^^xsd:string + obo:IAO_0000115 "The outer of two mucus layers secreted by epithelial cells in the colon; the outer mucus layer is loosely packed and can be colonized by bacteria."^^xsd:string + + SubClassOf: + obo:GO_0070701 + + +Class: obo:GO_0070702 + + Annotations: + oboInOwl:id "GO:0070702"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inner mucus layer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mm2"^^xsd:string, + oboInOwl:hasDbXref "PMID:18806221"^^xsd:string, + oboInOwl:hasDbXref "PMID:19432394"^^xsd:string + obo:IAO_0000115 "The inner of two mucus layers secreted by epithelial cells in the colon; the inner mucus layer is firmly attached to the epithelium, is densely packed with a compact stratified appearance and is devoid of bacteria."^^xsd:string + + SubClassOf: + obo:GO_0070701 + + +Class: obo:GO_0032059 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Bleb_(cell_biology)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "bleb"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12083798"^^xsd:string, + oboInOwl:hasDbXref "PMID:16624291"^^xsd:string + obo:IAO_0000115 "A cell extension characterized by rapid formation, rounded shape, and scarcity of organelles within the protrusions."^^xsd:string, + oboInOwl:id "GO:0032059"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0097132 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097132"^^xsd:string, + rdfs:label "cyclin D2-CDK6 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin D2 and cyclin-dependent kinase 6 (CDK6). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0097133 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin D3 and cyclin-dependent kinase 6 (CDK6). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyclin D3-CDK6 complex"^^xsd:string, + oboInOwl:id "GO:0097133"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033107 + + Annotations: + oboInOwl:id "GO:0033107"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "CVT vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:15138258"^^xsd:string + obo:IAO_0000115 "A cytosolic vesicle that is enclosed by a double membrane and is implicated in the cytoplasm to vacuole targeting pathway. These vesicles are found in the yeast S. cerevisiae, and contain vacuolar hydrolases, aminopeptidase I (Ape1p) and alpha-mannosidase (Ams1p)."^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0097134 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string, + oboInOwl:hasDbXref "PR:000026745"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin E1 and cyclin-dependent kinase 2 (CDK2). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:id "GO:0097134"^^xsd:string, + rdfs:label "cyclin E1-CDK2 complex"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033106 + + Annotations: + oboInOwl:hasRelatedSynonym "Golgi cis face membrane"^^xsd:string, + oboInOwl:id "GO:0033106"^^xsd:string, + oboInOwl:hasExactSynonym "cis Golgi network membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cis-Golgi network membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the compartments that make up the cis-Golgi network."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005801, + obo:GO_0000139 + + +Class: obo:GO_0097135 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string, + oboInOwl:hasDbXref "PR:000026746"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin E2 and cyclin-dependent kinase 2 (CDK2). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:id "GO:0097135"^^xsd:string, + rdfs:label "cyclin E2-CDK2 complex"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0033105 + + Annotations: + rdfs:comment "Note that the chlorosome envelope is not a single or double lipid bilayer, so this term is not a child of 'organelle membrane ; GO:0031090' or 'organelle envelope ; GO:0031967'."^^xsd:string, + oboInOwl:id "GO:0033105"^^xsd:string, + oboInOwl:hasExactSynonym "chlorosome membrane"^^xsd:string, + rdfs:label "chlorosome envelope"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14507718"^^xsd:string, + oboInOwl:hasDbXref "PMID:14729689"^^xsd:string, + oboInOwl:hasDbXref "PMID:17303128"^^xsd:string + obo:IAO_0000115 "The structure, composed of a monolayer of glycolipids with embedded proteins, that encloses the pigments and other contents of the chlorosome."^^xsd:string + + SubClassOf: + obo:GO_0034646, + obo:BFO_0000050 some obo:GO_0046858 + + +Class: obo:GO_0097130 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin D3 and cyclin-dependent kinase 4 (CDK4). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyclin D3-CDK4 complex"^^xsd:string, + oboInOwl:id "GO:0097130"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0097131 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:15935619"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of cyclin D1 and cyclin-dependent kinase 6 (CDK6). Cyclins are characterized by periodicity in protein abundance throughout the cell cycle. Cyclin-dependent kinases represent a family of serine/threonine protein kinases that become active upon binding to a cyclin regulatory partner."^^xsd:string, + rdfs:label "cyclin D1-CDK6 complex"^^xsd:string, + oboInOwl:id "GO:0097131"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0097139 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BID-BCL-2 complex"^^xsd:string, + oboInOwl:id "GO:0097139"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of BID and BCL-2, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097138 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097138"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of BAD and BCL-2, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + rdfs:label "BAD-BCL-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097137 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of BAD and BCL-xl, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + rdfs:label "BAD-BCL-xl complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097137"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097136 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097136"^^xsd:string, + rdfs:label "Bcl-2 family protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of members of the Bcl-2 family of anti- and proapoptotic regulators. Bcl-2 proteins respond to cues from various forms of intracellular stress, such as DNA damage or cytokine deprivation, and interact with opposing family members to determine whether or not the caspase proteolytic cascade should be unleashed."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0002080 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The membrane that surrounds the acrosomal lumen. The acrosome is a special type of lysosome in the head of a spermatozoon that contains acid hydrolases and is concerned with the breakdown of the outer membrane of the ovum during fertilization."^^xsd:string, + oboInOwl:id "GO:0002080"^^xsd:string, + rdfs:label "acrosomal membrane"^^xsd:string + + SubClassOf: + obo:GO_0030667, + obo:BFO_0000050 some obo:GO_0001669 + + +Class: obo:GO_0002081 + + Annotations: + rdfs:comment "Note that this term is not a descendant of 'organelle outer membrane ; GO:0031968' because the outer acrosomal membrane is a portion of the acrosomal membrane; the latter is a single lipid bilayer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "outer acrosomal membrane"^^xsd:string, + oboInOwl:id "GO:0002081"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "PMID:8936405"^^xsd:string + obo:IAO_0000115 "The acrosomal membrane region that underlies the plasma membrane of the sperm. This membrane fuses with the sperm plasma membrane as part of the acrosome reaction."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0002080, + obo:GO_0044425, + obo:GO_0044433 + + +Class: obo:GO_0060293 + + Annotations: + oboInOwl:id "GO:0060293"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Differentiated cytoplasm associated with a pole of an oocyte, egg or early embryo that will be inherited by the cells that will give rise to the germ line."^^xsd:string, + rdfs:label "germ plasm"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Germ_plasm"^^xsd:string + + SubClassOf: + obo:GO_0045495 + + +Class: obo:GO_0032039 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032039"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16239144"^^xsd:string + obo:IAO_0000115 "A protein complex that stably associates with the C-terminus of RNA polymerase II and mediates 3'-end processing of small nuclear RNAs generated by RNA polymerase II."^^xsd:string, + rdfs:label "integrator complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0043234 + + +Class: obo:GO_0032047 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Mitosome"^^xsd:string, + oboInOwl:id "GO:0032047"^^xsd:string, + oboInOwl:hasExactSynonym "crypton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10361303"^^xsd:string, + oboInOwl:hasDbXref "PMID:14614504"^^xsd:string + obo:IAO_0000115 "A double-membrane-bounded organelle that functions in iron-sulfur protein maturation; evolutionarily derived from mitochondria."^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0032045 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that stimulates the exchange of guanyl nucleotides associated with a GTPase."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "guanyl-nucleotide exchange factor complex"^^xsd:string, + oboInOwl:id "GO:0032045"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0032046 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15563611"^^xsd:string + obo:IAO_0000115 "A membrane-bounded flattened sac that is formed during micropexophagy between the membrane tips of an engulfing vacuole, completing the engulfment and sequestration of peroxisomes from the cytosol, and forming a micropexophagic body within the lumen of the vacuole."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "micropexophagic apparatus"^^xsd:string, + rdfs:label "micropexophagy-specific membrane apparatus"^^xsd:string, + oboInOwl:id "GO:0032046"^^xsd:string, + oboInOwl:hasExactSynonym "MIPA"^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0031984 + + +Class: obo:GO_0032044 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12242279"^^xsd:string, + oboInOwl:hasDbXref "PMID:12653964"^^xsd:string, + oboInOwl:hasDbXref "PMID:12676794"^^xsd:string, + oboInOwl:hasDbXref "PMID:16581788"^^xsd:string, + oboInOwl:hasDbXref "PMID:19460865"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex formed of Spt4 and Spt5 proteins which is expressed in eukaryotes from yeast to man. DSIF is an inhibitory elongation factor that promotes RNA polymerase II transcriptional pausing, but can also stimulate transcriptional elongation under certain conditions, and may play a role in RNA processing via its physical association with mRNA capping enzymes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "DRB sensitivity inducing factor complex"^^xsd:string, + rdfs:label "DSIF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Spt5-Spt4 complex"^^xsd:string, + oboInOwl:id "GO:0032044"^^xsd:string, + oboInOwl:hasExactSynonym "5,6-Dichloro-1-beta-D-ribofuranosylbenzimidazole sensitivity inducing factor complex"^^xsd:string, + oboInOwl:hasExactSynonym "Spt4-Spt5 complex"^^xsd:string + + SubClassOf: + obo:GO_0008023 + + +Class: obo:GO_0097141 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of BIM and BCL-2, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097141"^^xsd:string, + rdfs:label "BIM-BCL-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097142 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097142"^^xsd:string, + rdfs:label "PUMA-BCL-2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of PUMA and BCL-2, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0032040 + + Annotations: + oboInOwl:id "GO:0032040"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "small subunit processome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12068309"^^xsd:string, + oboInOwl:hasDbXref "PMID:12957375"^^xsd:string, + oboInOwl:hasDbXref "PMID:15120992"^^xsd:string, + oboInOwl:hasDbXref "PMID:15590835"^^xsd:string + obo:IAO_0000115 "A large ribonucleoprotein complex that is an early preribosomal complex. In S. cerevisiae, it has a size of 80S and consists of the 35S pre-rRNA, early-associating ribosomal proteins most of which are part of the small ribosomal subunit, the U3 snoRNA and associated proteins."^^xsd:string, + oboInOwl:hasExactSynonym "SSU processome"^^xsd:string, + rdfs:label "small-subunit processome"^^xsd:string + + SubClassOf: + obo:GO_0030684 + + +Class: obo:GO_0097140 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of BIM and BCL-xl, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097140"^^xsd:string, + rdfs:label "BIM-BCL-xl complex"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097145 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "An oligomeric protein complex consisting of BAK, a member of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + rdfs:label "BAK complex"^^xsd:string, + oboInOwl:id "GO:0097145"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0001950 + + Annotations: + oboInOwl:id "GO:0001950"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "PME fraction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasma membrane enriched fraction"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mgi_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:11562363"^^xsd:string, + oboInOwl:hasDbXref "PMID:15601832"^^xsd:string + obo:IAO_0000115 "The fraction of cells, prepared by disruptive biochemical methods, that is enriched for plasma membranes."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005624, + obo:GO_0000267 + + +Class: obo:GO_0097146 + + Annotations: + rdfs:label "NOXA-BCL-xl complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of NOXA and BCL-xl, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097146"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097143 + + Annotations: + rdfs:label "PUMA-BCL-xl complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of PUMA and BCL-xl, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:id "GO:0097143"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097144 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BAX complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "An oligomeric protein complex consisting of BAX, a member of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:id "GO:0097144"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097148 + + Annotations: + oboInOwl:id "GO:0097148"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A homodimeric protein complex consisting of BAK, a member of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BCL-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0097147 + + Annotations: + oboInOwl:id "GO:0097147"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:so"^^xsd:string, + oboInOwl:hasDbXref "PMID:14634621"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex consisting of NOXA and BCL-2, members of the Bcl-2 family of anti- and proapoptotic regulators."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "NOXA-BCL-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0097136 + + +Class: obo:GO_0001931 + + Annotations: + rdfs:label "uropod"^^xsd:string, + oboInOwl:hasExactSynonym "uropodium"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0001931"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:12714569"^^xsd:string, + oboInOwl:hasDbXref "PMID:12787750"^^xsd:string + obo:IAO_0000115 "A membrane projection with related cytoskeletal components at the trailing edge of a cell in the process of migrating or being activated, found on the opposite side of the cell from the leading edge or immunological synapse, respectively."^^xsd:string, + oboInOwl:hasRelatedSynonym "distal pole complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "retractile pole"^^xsd:string + + EquivalentTo: + obo:GO_0042995 + and (obo:BFO_0000050 some obo:GO_0031254) + + SubClassOf: + obo:GO_0042995, + obo:BFO_0000050 some obo:GO_0031254 + + +Class: obo:GO_0097149 + + Annotations: + oboInOwl:id "GO:0097149"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "centralspindlin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:11782313"^^xsd:string, + oboInOwl:hasDbXref "PMID:16236794"^^xsd:string + obo:IAO_0000115 "A heterotetrameric protein complex playing a key role in the formation of the central spindle in mitosis. Made up of two molecules each of a mitotic kinesin (ZEN-4 in Caenorhabditis elegans or MKLP1 in mammals) and of two molecules each of a GTPase activating protein (GAP) factor (CYK-4 in Caenorhabditis elegans or MgcRacGAP in mammals)."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0072686, + obo:GO_0043234 + + +Class: obo:GO_0035230 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoneme"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10367889"^^xsd:string, + oboInOwl:hasDbXref "PMID:10675901"^^xsd:string + obo:IAO_0000115 "A long, thin, polarized cell projection that contains actin and can extend for distances many times the diameter of the cell. Cytonemes represent extensions of cell cytoplasm and typically have a diameter of approximately 0.2um."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Wikipedia:Membrane_nanotube"^^xsd:string + oboInOwl:hasExactSynonym "membrane nanotube"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Membrane_nanotube"^^xsd:string, + oboInOwl:id "GO:0035230"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0001939 + + Annotations: + rdfs:label "female pronucleus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0001939"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The pronucleus originating from the ovum that is being fertilized."^^xsd:string + + SubClassOf: + obo:GO_0045120 + + +Class: obo:GO_0043005 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "http://www.cogsci.princeton.edu/~wn/"^^xsd:string + obo:IAO_0000115 "A prolongation or process extending from a nerve cell, e.g. an axon or dendrite."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao-867568886"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "neuronal cell projection"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043005"^^xsd:string, + oboInOwl:hasNarrowSynonym "neurite"^^xsd:string, + oboInOwl:hasExactSynonym "neuron process"^^xsd:string, + oboInOwl:hasExactSynonym "neuron protrusion"^^xsd:string, + rdfs:label "neuron projection"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0002079 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "PMID:3899643"^^xsd:string, + oboInOwl:hasDbXref "PMID:8936405"^^xsd:string + obo:IAO_0000115 "The acrosomal membrane region that underlies the acrosomal vesicle and is located toward the sperm nucleus. This region is responsible for molecular interactions allowing the sperm to penetrate the zona pellucida and fuses with the egg plasma membrane."^^xsd:string, + rdfs:comment "Note that this term is not a descendant of 'organelle inner membrane ; GO:0019866' because the outer acrosomal membrane is a portion of the acrosomal membrane; the latter is a single lipid bilayer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0002079"^^xsd:string, + rdfs:label "inner acrosomal membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0002080, + obo:GO_0044425, + obo:GO_0044433 + + +Class: obo:GO_0001940 + + Annotations: + oboInOwl:id "GO:0001940"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The pronucleus originating from the spermatozoa that was involved in fertilization."^^xsd:string, + rdfs:label "male pronucleus"^^xsd:string + + SubClassOf: + obo:GO_0045120 + + +Class: obo:GO_0045273 + + Annotations: + oboInOwl:id "GO:0045273"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasRelatedSynonym "electron transport complex II"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "respiratory chain complex II"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A part of the respiratory chain, containing the four polypeptide subunits of succinate dehydrogenase, flavin-adenine dinucleotide and iron-sulfur. Catalyzes the oxidation of succinate by ubiquinone. Connects the TCA cycle with the respiratory chain."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0070469, + obo:GO_0043234 + + +Class: obo:GO_0045272 + + Annotations: + oboInOwl:id "GO:0045272"^^xsd:string, + oboInOwl:hasBroadSynonym "respiratory chain complex I"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "NADH dehydrogenase (ubiquinone) complex"^^xsd:string, + rdfs:label "plasma membrane respiratory chain complex I"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A subcomplex of the respiratory chain located in the plasma membrane. It contains about 25 different polypeptide subunits, including NADH dehydrogenase (ubiquinone), flavin mononucleotide and several different iron-sulfur clusters containing non-heme iron. The iron undergoes oxidation-reduction between Fe(II) and Fe(III), and catalyzes proton translocation linked to the oxidation of NADH by ubiquinone. Examples of this component are found in Bacterial species."^^xsd:string + + EquivalentTo: + obo:GO_0045271 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0045271, + obo:BFO_0000050 some obo:GO_0070470, + obo:GO_0044459 + + +Class: obo:GO_0045271 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045271"^^xsd:string, + oboInOwl:hasExactSynonym "NADH dehydrogenase (ubiquinone) complex"^^xsd:string, + oboInOwl:hasExactSynonym "NADH-Q oxidoreductase complex"^^xsd:string, + oboInOwl:hasExactSynonym "NADH dehydrogenase complex (ubiquinone)"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function possessed by this complex is represented by the molecular function term 'NADH dehydrogenase (ubiquinone) activity ; GO:0008137'."^^xsd:string, + rdfs:label "respiratory chain complex I"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716749556"^^xsd:string + obo:IAO_0000115 "Respiratory chain complex I is an enzyme of the respiratory chain. It consists of at least 34 polypeptide chains and is L-shaped, with a horizontal arm lying in the membrane and a vertical arm that projects into the matrix. The electrons of NADH enter the chain at this complex."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045279"^^xsd:string, + oboInOwl:hasRelatedSynonym "electron transport complex I"^^xsd:string + + SubClassOf: + obo:GO_0030964, + obo:BFO_0000050 some obo:GO_0070469 + + +Class: obo:GO_0045270 + + Annotations: + oboInOwl:id "GO:0045270"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase, central stalk"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasma membrane proton-transporting ATP synthase, central stalk"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "One of two stalks that connect the catalytic core of the hydrogen-transporting ATP synthase to the plasma membrane-associated Fo proteins; rotates within the catalytic core during catalysis. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-transporting ATP synthase, central stalk"^^xsd:string + + EquivalentTo: + obo:GO_0045269 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045262, + obo:GO_0044459, + obo:GO_0045269 + + +Class: obo:GO_0030700 + + Annotations: + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function possessed by this complex is represented by the molecular function term 'glycine reductase activity ; GO:0030699'."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030700"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:2018775"^^xsd:string + obo:IAO_0000115 "Complex that possesses glycine reductase activity; usually comprises three subunits, of which two are selenoproteins; the subunits are typically designated selenoprotein A, selenoprotein B and protein C."^^xsd:string, + rdfs:label "glycine reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0042763 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042763"^^xsd:string, + oboInOwl:hasRelatedSynonym "forespore"^^xsd:string, + rdfs:label "intracellular immature spore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0395825172"^^xsd:string + obo:IAO_0000115 "A cell or part of the cell that constitutes an early developmental stage of a spore, a small reproductive body that is highly resistant to desiccation and heat and is capable of growing into a new organism, produced especially by certain bacteria, fungi, algae, and nonflowering plants."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0042764 + + Annotations: + oboInOwl:id "GO:0042764"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "An immature spore undergoing development. The spore usually consists of nucleic acid, prospore membrane(s) that encase the nucleic acid, and ultimately a cell wall that covers the membrane(s). This type of spore is observed in ascopore-forming fungi."^^xsd:string, + rdfs:label "ascospore-type prospore"^^xsd:string + + SubClassOf: + obo:GO_0042763 + + +Class: obo:GO_0031380 + + Annotations: + oboInOwl:id "GO:0031380"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:15607976"^^xsd:string + obo:IAO_0000115 "A complex required for RNAi mediated heterochromatin assembly. In S. pombe this contains RNA-directed RNA polymerase, a putative helicase and a protein containing a pap25 associated domain."^^xsd:string, + oboInOwl:hasNarrowSynonym "Rdr1 complex"^^xsd:string, + rdfs:label "nuclear RNA-directed RNA polymerase complex"^^xsd:string, + oboInOwl:hasExactSynonym "RDRC"^^xsd:string + + EquivalentTo: + obo:GO_0031379 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0031379, + obo:GO_0044428 + + +Class: obo:GO_0042765 + + Annotations: + oboInOwl:id "GO:0042765"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12802054"^^xsd:string + obo:IAO_0000115 "An enzyme complex which in humans and yeast consists of at least five proteins; for example, the complex contains GAA1, GPI8, PIG-S, PIG-U, and PIG-T in human, and Gaa1p, Gab1p, Gpi8p, Gpi16p, and Gpi17p in yeast. Catalyzes the posttranslational attachment of the carboxyl-terminus of a precursor protein to a GPI-anchor."^^xsd:string, + rdfs:comment "Note that this term should not be confused with 'glycosylphosphatidylinositol-N-acetylglucosaminyltransferase (GPI-GnT) complex ; GO:0000506', which represents a distinct complex with a different catalytic activity."^^xsd:string, + rdfs:label "GPI-anchor transamidase complex"^^xsd:string, + oboInOwl:hasExactSynonym "GPIT complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030176, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0008290 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "F-actin capping protein complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0008290"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198599560"^^xsd:string + obo:IAO_0000115 "A heterodimer consisting of alpha and beta subunits that binds to and caps the barbed ends of actin filaments, thereby regulating the polymerization of actin monomers but not severing actin filaments."^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629, + obo:GO_0043234 + + +Class: obo:GO_0031381 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral RNA-directed RNA polymerase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15574411"^^xsd:string, + oboInOwl:hasDbXref "PMID:15613301"^^xsd:string + obo:IAO_0000115 "A virus-specific protein complex that possesses RNA-dependent RNA polymerase activity and replicates the genome of an RNA virus."^^xsd:string, + oboInOwl:id "GO:0031381"^^xsd:string + + SubClassOf: + obo:GO_0031379 + + +Class: obo:GO_0045278 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "cytochrome c oxidase complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045288"^^xsd:string, + rdfs:label "plasma membrane respiratory chain complex IV"^^xsd:string, + oboInOwl:id "GO:0045278"^^xsd:string, + oboInOwl:hasBroadSynonym "respiratory chain complex IV"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A part of the respiratory chain located in the plasma membrane, containing the 13 polypeptide subunits of cytochrome c oxidase, including cytochrome a and cytochrome a3. Catalyzes the oxidation of reduced cytochrome c by dioxygen (O2). Examples of this component are found in Bacterial species."^^xsd:string + + EquivalentTo: + obo:GO_0045277 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070470, + obo:GO_0044459, + obo:GO_0045277 + + +Class: obo:GO_0045277 + + Annotations: + oboInOwl:hasRelatedSynonym "electron transport complex IV"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A part of the respiratory chain, containing the 13 polypeptide subunits of cytochrome c oxidase, including cytochrome a and cytochrome a3. Catalyzes the oxidation of reduced cytochrome c by dioxygen (O2)."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045287"^^xsd:string, + oboInOwl:hasExactSynonym "cytochrome c oxidase complex"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "respiratory chain complex IV"^^xsd:string, + oboInOwl:id "GO:0045277"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0070469, + obo:GO_0043234 + + +Class: obo:GO_0031387 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12045216"^^xsd:string + obo:IAO_0000115 "A complex consisting of a Cdc2-class (also known as Cdc28) cyclin-dependent kinase and an M-phase cyclin such as S. pombe Cdc13. The MPF complex phosphorylates and activates the anaphase promoting complex (APC)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MPF complex"^^xsd:string, + oboInOwl:id "GO:0031387"^^xsd:string + + SubClassOf: + obo:GO_0000307 + + +Class: obo:GO_0045276 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A part of the respiratory chain located in the plasma membrane, containing about 10 polypeptide subunits including four redox centers: cytochrome b/b6, cytochrome c1 and an 2Fe-2S cluster. Catalyzes the oxidation of ubiquinol by oxidized cytochrome c1. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "ubiquinol-cytochrome-c reductase complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045286"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane ubiquinol-cytochrome-c reductase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "respiratory chain complex III"^^xsd:string, + rdfs:label "plasma membrane respiratory chain complex III"^^xsd:string, + oboInOwl:id "GO:0045276"^^xsd:string, + oboInOwl:hasBroadSynonym "ubiquinol-cytochrome c oxidoreductase complex"^^xsd:string + + EquivalentTo: + obo:GO_0045275 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070470, + obo:GO_0044459, + obo:GO_0045275 + + +Class: obo:GO_0045275 + + Annotations: + oboInOwl:hasExactSynonym "cytochrome bc(1) complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasRelatedSynonym "electron transport complex III"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0032842"^^xsd:string, + oboInOwl:hasExactSynonym "complex III"^^xsd:string, + oboInOwl:hasExactSynonym "cytochrome bc1 complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045285"^^xsd:string, + oboInOwl:id "GO:0045275"^^xsd:string, + oboInOwl:hasExactSynonym "ubiquinol-cytochrome c oxidoreductase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "ubiquinol-cytochrome-c reductase complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:16228398"^^xsd:string, + oboInOwl:hasDbXref "PMID:16352458"^^xsd:string, + oboInOwl:hasDbXref "PMID:17200733"^^xsd:string + obo:IAO_0000115 "A protein complex that transfers electrons from ubiquinol to cytochrome c and translocates two protons across a membrane. The complex contains a core structure of three catalytic subunits: cytochrome b, the Rieske iron sulfur protein (ISP), and cytochrome c1, which are arranged in an integral membrane-bound dimeric complex; additional subunits are present, and vary among different species."^^xsd:string, + rdfs:label "respiratory chain complex III"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Coenzyme_Q_-_cytochrome_c_reductase"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0070469, + obo:GO_0043234 + + +Class: obo:GO_0045274 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A part of the respiratory chain located in the plasma membrane, containing the four polypeptide subunits of succinate dehydrogenase, flavin-adenine dinucleotide and iron-sulfur. Catalyzes the oxidation of succinate by ubiquinone. Connects the TCA cycle with the respiratory chain. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "respiratory chain complex II"^^xsd:string, + rdfs:label "plasma membrane respiratory chain complex II"^^xsd:string, + oboInOwl:id "GO:0045274"^^xsd:string + + EquivalentTo: + obo:GO_0045273 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0045273, + obo:BFO_0000050 some obo:GO_0070470, + obo:GO_0044459 + + +Class: obo:GO_0034991 + + Annotations: + oboInOwl:id "GO:0034991"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term should be used to annotate gene products found in cohesin complexes in organisms that undergo closed mitosis (i. e. where the nuclear envelope does not break down, as in fungi). For organisms in which the nuclear envelope breaks down during mitosis, the parent should be used."^^xsd:string, + rdfs:label "nuclear meiotic cohesin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cohesin complex that mediates sister chromatid cohesion in the nucleus during meiosis; has a subunit composition distinct from that of the meiotic cohesin complex."^^xsd:string + + SubClassOf: + obo:GO_0000798, + obo:GO_0030893 + + +Class: obo:GO_0034992 + + Annotations: + oboInOwl:id "GO:0034992"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "microtubule organising centre attachment site"^^xsd:string, + oboInOwl:hasExactSynonym "MTOC attachment site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18692466"^^xsd:string + obo:IAO_0000115 "A region of the nuclear envelope to which a microtubule organizing center (MTOC) attaches; protein complexes embedded in the nuclear envelope mediate direct or indirect linkages between the microtubule cytoskeleton and the nuclear envelope."^^xsd:string, + rdfs:comment "Note that this term should not be confused with the cellular component term 'perinuclear region ; GO:0048471'."^^xsd:string, + oboInOwl:hasExactSynonym "MAS"^^xsd:string, + rdfs:label "microtubule organizing center attachment site"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005635, + obo:GO_0044428 + + +Class: obo:GO_0031379 + + Annotations: + rdfs:label "RNA-directed RNA polymerase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031379"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses RNA-directed RNA polymerase activity."^^xsd:string + + SubClassOf: + obo:GO_0030880 + + +Class: obo:GO_0034990 + + Annotations: + oboInOwl:id "GO:0034990"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term should be used to annotate gene products found in cohesin complexes in organisms that undergo closed mitosis (i. e. where the nuclear envelope does not break down, as in fungi). For organisms in which the nuclear envelope breaks down during mitosis, the parent should be used."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cohesin complex that mediates sister chromatid cohesion in the nucleus during mitosis; has a subunit composition distinct from that of the meiotic cohesin complex."^^xsd:string, + rdfs:label "nuclear mitotic cohesin complex"^^xsd:string + + SubClassOf: + obo:GO_0000798, + obo:GO_0030892 + + +Class: obo:GO_0034995 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SC5b-7 complex"^^xsd:string, + oboInOwl:id "GO:0034995"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10090939"^^xsd:string + obo:IAO_0000115 "A protein complex that consist of complement components C5b6 and C7 stably inserted in a cell membrane. Formation of the SC5b-7 complex is the first phase of membrane attack complex assembly."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0034996 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + oboInOwl:id "GO:0034996"^^xsd:string, + rdfs:label "RasGAP-Fyn-Lyn-Yes complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1544885"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of a GTPase activator protein (GAP) for Ras and three Src family protein tyrosine kinases, Fyn, Lyn and Yes. The complex is involved in signaling upon platelet activation."^^xsd:string, + oboInOwl:hasNarrowSynonym "p21(ras)GAP-Fyn-Lyn-Yes complex, thrombin stimulated"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0034993 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034993"^^xsd:string, + rdfs:label "SUN-KASH complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18692466"^^xsd:string + obo:IAO_0000115 "A protein complex that spans the nuclear outer and inner membranes, thereby linking the major cytoplasmic cytoskeleton elements to the nuclear lumen; the complex is conserved in eukaryotes and contains proteins with SUN and KASH domains."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0034992, + obo:GO_0043234 + + +Class: obo:GO_0045260 + + Annotations: + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-translocating F-type ATPase complex "^^xsd:string, + oboInOwl:id "GO:0045260"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A proton-transporting ATP synthase complex found in the plasma membrane. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane hydrogen-translocating F-type ATPase complex"^^xsd:string, + rdfs:label "plasma membrane proton-transporting ATP synthase complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045256"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase"^^xsd:string + + EquivalentTo: + obo:GO_0045259 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0045259, + obo:GO_0044459 + + +Class: obo:GO_0009898 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "internal side of plasma membrane"^^xsd:string, + oboInOwl:id "GO:0009898"^^xsd:string, + oboInOwl:hasBroadSynonym "juxtamembrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The side of the plasma membrane that faces the cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0045262 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0045262"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-transporting ATP synthase, F1 sector"^^xsd:string, + rdfs:label "plasma membrane proton-transporting ATP synthase complex, catalytic core F(1)"^^xsd:string, + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase complex, catalytic core F(1)"^^xsd:string, + rdfs:comment "See also the cellular component term 'plasma membrane ; GO:0005886'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "The catalytic sector of the plasma membrane hydrogen-transporting ATP synthase; it comprises the catalytic core and central stalk, and is peripherally associated with the plasma membrane when the entire ATP synthase is assembled. Examples of this component are found in Bacterial species."^^xsd:string + + EquivalentTo: + obo:GO_0045261 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045260, + obo:GO_0045261, + obo:GO_0044459 + + +Class: obo:GO_0035068 + + Annotations: + oboInOwl:hasExactSynonym "miRNP complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "micro-ribonucleoprotein complex"^^xsd:string, + oboInOwl:id "GO:0035068"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:14559182"^^xsd:string + obo:IAO_0000115 "A complex containing both protein and micro-RNA (miRNA) molecules. miRNAs are approximately 22 nucleotide noncoding RNAs derived from endogenous genes; they are processed from the stem of a longer hairpin like structure termed a pre-miRNA."^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0045261 + + Annotations: + oboInOwl:id "GO:0045261"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "The sector of a hydrogen-transporting ATP synthase complex in which the catalytic activity resides; it comprises the catalytic core and central stalk, and is peripherally associated with a membrane, such as the plasma membrane or the mitochondrial inner membrane, when the entire ATP synthase is assembled."^^xsd:string, + rdfs:label "proton-transporting ATP synthase complex, catalytic core F(1)"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase, F1 sector"^^xsd:string + + SubClassOf: + obo:GO_0033178, + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0045259 + + +Class: obo:GO_0031390 + + Annotations: + oboInOwl:hasExactSynonym "RFC (Ctf18)"^^xsd:string, + oboInOwl:id "GO:0031390"^^xsd:string, + oboInOwl:hasExactSynonym "Ctf18-RFC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14614842"^^xsd:string + obo:IAO_0000115 "A heptameric complex related to replication factor C, which loads the DNA polymerase processivity factor proliferating cell nuclear antigen (PCNA) onto DNA and plays a vital role in chromosome cohesion. In Saccharomyces the subunits are known as Ctf18p, Rfc2p, Rfc3p, Rfc4p, Rfc5p, Dcc1p, and Ctf8p."^^xsd:string, + rdfs:label "Ctf18 RFC-like complex"^^xsd:string, + oboInOwl:hasExactSynonym "Ctf18-RLC"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0031391 + + Annotations: + oboInOwl:hasExactSynonym "Elg1-RLC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14614842"^^xsd:string + obo:IAO_0000115 "A pentameric complex related to replication factor C, which loads the DNA polymerase processivity factor proliferating cell nuclear antigen (PCNA) onto DNA and has roles in telomere length regulation and other aspects of genome stability. In Saccharomyces the subunits are known as Elg1p, Rfc2p, Rfc3p, Rfc4p, and Rfc5p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031391"^^xsd:string, + oboInOwl:hasExactSynonym "Elg1-RFC"^^xsd:string, + rdfs:label "Elg1 RFC-like complex"^^xsd:string, + oboInOwl:hasExactSynonym "RFC (Elg1)"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0045268 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "The hexamer that possesses the catalytic activity of the plasma membrane hydrogen-transporting ATP synthase. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase, catalytic core"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-transporting ATP synthase, catalytic core"^^xsd:string, + oboInOwl:id "GO:0045268"^^xsd:string, + rdfs:label "plasma membrane proton-transporting ATP synthase, catalytic core"^^xsd:string + + EquivalentTo: + obo:GO_0045267 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045262, + obo:GO_0044459, + obo:GO_0045267 + + +Class: obo:GO_0034998 + + Annotations: + rdfs:label "oligosaccharyltransferase I complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15835887"^^xsd:string + obo:IAO_0000115 "An oligosaccharyltransferase (OST) complex that contains at least seven polypeptides and is the major OST complex in mammalian cells. Of the three forms of mammalian OST complex identified, the OSTI complex has the weakest affinity for ribosomes."^^xsd:string, + oboInOwl:hasExactSynonym "OSTCI"^^xsd:string, + oboInOwl:id "GO:0034998"^^xsd:string + + SubClassOf: + obo:GO_0008250 + + +Class: obo:GO_0034997 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alphav-beta5 integrin-vitronectin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:1694173"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_14045.1"^^xsd:string + obo:IAO_0000115 "A protein complex that comprises one integrin alphav subunit, one integrin beta5 subunit, and vitronectin."^^xsd:string, + oboInOwl:id "GO:0034997"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3117"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGAV-ITGB5-VTN complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0045267 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "The hexamer that possesses the catalytic activity of the mitochondrial hydrogen-transporting ATP synthase."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045267"^^xsd:string, + rdfs:label "proton-transporting ATP synthase, catalytic core"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase, catalytic core"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0045261, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0035060 + + Annotations: + oboInOwl:id "GO:0035060"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "brahma complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10809665"^^xsd:string, + oboInOwl:hasDbXref "PMID:12482982"^^xsd:string + obo:IAO_0000115 "A SWI/SNF-type complex that contains the ATPase product of the Drosophila brahma gene, or an ortholog thereof."^^xsd:string, + oboInOwl:hasExactSynonym "BRM complex"^^xsd:string + + SubClassOf: + obo:GO_0070603 + + +Class: obo:GO_0035061 + + Annotations: + oboInOwl:id "GO:0035061"^^xsd:string, + rdfs:label "interchromatin granule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1049471211"^^xsd:string, + oboInOwl:hasExactSynonym "ICG"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10984439"^^xsd:string + obo:IAO_0000115 "A class of nuclear body measuring 20-25 nm in diameter and distributed throughout the interchromatin space, linked together by thin fibrils. They are believed to be storage centers for various snRNAs, snRNPs, serine/arginine-rich proteins and RNA polymerase II. A typical mammalian cell contains 25-50 clusters of interchromatin granules. Interchromatin granule clusters do not contain the heterogeneous nuclear RNA-binding proteins (hnRNPs)."^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0034999 + + Annotations: + rdfs:label "oligosaccharyltransferase II complex"^^xsd:string, + oboInOwl:hasExactSynonym "OSTCII"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:15835887"^^xsd:string + obo:IAO_0000115 "An oligosaccharyltransferase (OST) complex that contains the seven polypeptides found in OST complex I, plus heterotrimeric Sec61alpha-beta-gamma. Of the three forms of mammalian OST complexes identified, the OSTII complex has intermediate affinity for ribosomes."^^xsd:string, + oboInOwl:id "GO:0034999"^^xsd:string + + SubClassOf: + obo:GO_0008250 + + +Class: obo:GO_0034469 + + Annotations: + rdfs:label "Golgi stack lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034469"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by any of the membranes of the thin, flattened cisternae that form the central portion of the Golgi complex."^^xsd:string + + SubClassOf: + obo:GO_0005796, + obo:BFO_0000050 some obo:GO_0005795 + + +Class: obo:GO_0045269 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase, central stalk"^^xsd:string, + oboInOwl:id "GO:0045269"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "One of two stalks that connect the catalytic core of the hydrogen-transporting ATP synthase to the membrane-associated Fo proteins; rotates within the catalytic core during catalysis."^^xsd:string, + rdfs:label "proton-transporting ATP synthase, central stalk"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0045261, + obo:GO_0043234 + + +Class: obo:GO_0031395 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "bursicon neuropeptide hormone complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rc"^^xsd:string + obo:IAO_0000115 "A neuropeptide hormone secreted by the central nervous system of insects that stimulates the tanning and sclerotization of the adult cuticle following eclosion. The active hormone consists of an obligate heterodimer of the alpha and beta subunits."^^xsd:string, + oboInOwl:id "GO:0031395"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0045264 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-transporting ATP synthase, F0 sector"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "All non-F1 subunits of the plasma membrane hydrogen-transporting ATP synthase, including integral and peripheral plasma membrane proteins."^^xsd:string, + rdfs:label "plasma membrane proton-transporting ATP synthase complex, coupling factor F(o)"^^xsd:string, + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase complex, coupling factor F(0)"^^xsd:string, + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase complex, coupling factor F(o)"^^xsd:string, + oboInOwl:id "GO:0045264"^^xsd:string + + EquivalentTo: + obo:GO_0045263 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045260, + obo:GO_0044459, + obo:GO_0045263 + + +Class: obo:GO_0035062 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10984439"^^xsd:string + obo:IAO_0000115 "A nucleoplasmic speckle distributed in the interchromatin space of cells in close proximity to chromatin. Omega speckles are distinct from interchromatin granules and contain heterogeneous nuclear RNA-binding proteins (hnRNPs)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035062"^^xsd:string, + rdfs:label "omega speckle"^^xsd:string + + SubClassOf: + obo:GO_0016607 + + +Class: obo:GO_0001669 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string + oboInOwl:hasExactSynonym "acrosomal granule"^^xsd:string, + oboInOwl:id "GO:0001669"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasRelatedSynonym "acrosome"^^xsd:string, + rdfs:label "acrosomal vesicle"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Acrosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A structure in the head of a spermatozoon that contains acid hydrolases, and is concerned with the breakdown of the outer membrane of the ovum during fertilization. It lies just beneath the plasma membrane and is derived from the lysosome."^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0045263 + + Annotations: + rdfs:label "proton-transporting ATP synthase complex, coupling factor F(o)"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "proton-transporting ATP synthase complex, coupling factor F(0)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "All non-F1 subunits of a hydrogen-transporting ATP synthase, including integral and peripheral membrane proteins."^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase, F0 sector"^^xsd:string, + oboInOwl:id "GO:0045263"^^xsd:string, + oboInOwl:hasNarrowSynonym "hydrogen-transporting ATP synthase, coupling factor CF(0)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase complex, coupling factor F(o)"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0045259, + obo:GO_0033177 + + +Class: obo:GO_0045266 + + Annotations: + rdfs:label "plasma membrane proton-transporting ATP synthase, stator stalk"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-transporting ATP synthase, stator stalk"^^xsd:string, + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase, stator stalk"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "One of two stalks that connect the catalytic core of the hydrogen-transporting ATP synthase to the plasma membrane-associated F0 proteins; is thought to prevent futile rotation of the catalytic core. Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:id "GO:0045266"^^xsd:string + + EquivalentTo: + obo:GO_0045265 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0045264, + obo:GO_0045265 + + +Class: obo:GO_0009897 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The side of the plasma membrane that is opposite to the side that faces the cytoplasm."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009897"^^xsd:string, + rdfs:label "external side of plasma membrane"^^xsd:string, + oboInOwl:hasBroadSynonym "juxtamembrane"^^xsd:string, + oboInOwl:hasExactSynonym "outer surface of cytoplasmic membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009986, + obo:GO_0044459 + + +Class: obo:GO_0045265 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "proton-transporting ATP synthase, stator stalk"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase, stator stalk"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "One of two stalks that connect the catalytic core of the hydrogen-transporting ATP synthase to the membrane-associated Fo proteins; is thought to prevent futile rotation of the catalytic core."^^xsd:string, + oboInOwl:id "GO:0045265"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045263, + obo:GO_0044424, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0031389 + + Annotations: + oboInOwl:hasExactSynonym "Rad24p RFC-like complex"^^xsd:string, + rdfs:label "Rad17 RFC-like complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "RFC (Rad17)"^^xsd:string, + oboInOwl:hasExactSynonym "Rad17-RFC"^^xsd:string, + oboInOwl:id "GO:0031389"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14614842"^^xsd:string + obo:IAO_0000115 "A pentameric protein complex related to replication factor C, which loads a trimeric complex of checkpoint proteins (known as the checkpoint clamp or 9-1-1 complex) onto DNA at damage sites; functions in DNA damage cell cycle checkpoints. In Schizosaccharomyces pombe the subunits are known as Rad17, Rfc2, Rfc3, Rfc4, and Rfc5, while in Saccharomyces cerevisiae the subunits are known as Rad24p, Rfc2p, Rfc3p, Rfc4p, and Rfc5p."^^xsd:string, + oboInOwl:hasExactSynonym "Rad17-RLC"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0001674 + + Annotations: + rdfs:label "female germ cell nucleus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0043080"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CL:0000021"^^xsd:string, + oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "The nucleus of the female germ cell, a reproductive cell in females."^^xsd:string, + oboInOwl:id "GO:0001674"^^xsd:string, + oboInOwl:hasExactSynonym "female germ-cell nucleus"^^xsd:string + + SubClassOf: + obo:GO_0043073 + + +Class: obo:GO_0001673 + + Annotations: + oboInOwl:hasAlternativeId "GO:0043081"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "male germ-cell nucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CL:0000015"^^xsd:string, + oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The nucleus of a male germ cell, a reproductive cell in males."^^xsd:string, + rdfs:label "male germ cell nucleus"^^xsd:string, + oboInOwl:id "GO:0001673"^^xsd:string + + SubClassOf: + obo:GO_0043073 + + +Class: obo:GO_0035985 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:yaf"^^xsd:string + oboInOwl:hasExactSynonym "SAHF"^^xsd:string, + rdfs:label "senescence-associated heterochromatin focus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:yaf"^^xsd:string, + oboInOwl:hasDbXref "PMID:15621527"^^xsd:string, + oboInOwl:hasDbXref "PMID:21248468"^^xsd:string + obo:IAO_0000115 "A transcriptionally-silent heterochromatin structure present in senescent cells. Contains the condensed chromatin of one chromosome and is enriched for histone modifications. Thought to repress expression of proliferation-promoting genes."^^xsd:string, + oboInOwl:id "GO:0035985"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15621527"^^xsd:string, + oboInOwl:hasDbXref "PMID:21248468"^^xsd:string + oboInOwl:hasExactSynonym "senescence-associated heterochromatin foci"^^xsd:string + + SubClassOf: + obo:GO_0000792 + + +Class: obo:GO_0044160 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The pigmented membrane of any host thylakoid."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044160"^^xsd:string, + rdfs:label "host thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0044159 + + +Class: obo:GO_0044161 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044161"^^xsd:string, + rdfs:label "host cell cytoplasmic vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A vesicle formed of membrane or protein, found in the cytoplasm of a host cell."^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0045293 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11564867"^^xsd:string, + oboInOwl:hasDbXref "PMID:12139607"^^xsd:string, + oboInOwl:hasDbXref "http://www.ejbiotechnology.info/content/vol1/issue1/full/4/"^^xsd:string + obo:IAO_0000115 "A protein complex that posttranscriptionally catalyzes insertion, deletion or substitution of nucleotides at multiple sites within nascent mRNA transcripts to produce mature mRNAs in eukaryotes."^^xsd:string, + rdfs:label "mRNA editing complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "editosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0045293"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0044162 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a host cell cytoplasmic vesicle."^^xsd:string, + rdfs:label "host cell cytoplasmic vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0044162"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:BFO_0000050 some obo:GO_0044161, + obo:GO_0033644 + + +Class: obo:GO_0044163 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "Any of the various filamentous elements that form the internal framework of host cells, and typically remain after treatment of the cells with mild detergent to remove membrane constituents and soluble components of the host cytoplasm. The term embraces intermediate filaments, microfilaments, microtubules, the microtrabecular lattice, and other structures characterized by a polymeric filamentous nature and long-range order within the host cell. The various elements of the host cytoskeleton not only serve in the maintenance of host cellular shape but also have roles in other host cellular functions, including cellular movement, cell division, endocytosis, and movement of organelles."^^xsd:string, + oboInOwl:id "GO:0044163"^^xsd:string, + rdfs:label "host cytoskeleton"^^xsd:string + + SubClassOf: + obo:GO_0033647 + + +Class: obo:GO_0035097 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "A multimeric complex that is able to catalyze the addition of methyl groups to histone proteins."^^xsd:string, + oboInOwl:id "GO:0035097"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "histone methyltransferase complex"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044451, + obo:GO_0034708 + + +Class: obo:GO_0045298 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "tubulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "A heterodimer of tubulins alpha and beta that constitutes the protomer for microtubule assembly."^^xsd:string, + oboInOwl:id "GO:0045298"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0043234 + + +Class: obo:GO_0044164 + + Annotations: + rdfs:label "host cell cytosol"^^xsd:string, + oboInOwl:hasExactSynonym "host cytosol"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044164"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The part of the host cell cytoplasm that does not contain organelles but which does contain other particulate matter, such as protein complexes."^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0035098 + + Annotations: + oboInOwl:id "GO:0035098"^^xsd:string, + oboInOwl:hasExactSynonym "Extra Sex Combs/Enhancer of Zeste complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ESC/E(Z) complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20064375"^^xsd:string + oboInOwl:hasExactSynonym "PRC2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:12408863"^^xsd:string, + oboInOwl:hasDbXref "PMID:12408864"^^xsd:string, + oboInOwl:hasDbXref "PMID:20064375"^^xsd:string + obo:IAO_0000115 "A multimeric protein complex that can methylate lysine-27 and lysine-9 residues of histone H3. In Drosophila the core subunits of the complex include ESC, E(Z), CAF1 (NURF-55) and SU(Z)12. In mammals the core subunits of the complex include EED, EZH2, SUZ12 and RBBP4."^^xsd:string + + SubClassOf: + obo:GO_0031519, + obo:GO_0035097 + + +Class: obo:GO_0044165 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044165"^^xsd:string, + oboInOwl:hasExactSynonym "host endoplasmic reticulum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The irregular network of unit membranes, visible only by electron microscopy, that occurs in the host cell cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The host ER takes two forms, rough (or granular), with ribosomes adhering to the outer surface, and smooth (with no ribosomes attached)."^^xsd:string, + rdfs:label "host cell endoplasmic reticulum"^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0044166 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell endoplasmic reticulum lumen"^^xsd:string, + oboInOwl:hasExactSynonym "host endoplasmic reticulum lumen"^^xsd:string, + oboInOwl:id "GO:0044166"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the host cell endoplasmic reticulum."^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:BFO_0000050 some obo:GO_0044165 + + +Class: obo:GO_0044167 + + Annotations: + oboInOwl:id "GO:0044167"^^xsd:string, + rdfs:label "host cell endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the host cell endoplasmic reticulum."^^xsd:string, + oboInOwl:hasExactSynonym "host endoplasmic reticulum membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033645, + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0044165 + + +Class: obo:GO_0034967 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Set3 complex"^^xsd:string, + oboInOwl:id "GO:0034967"^^xsd:string, + oboInOwl:hasExactSynonym "HDAC3 complex"^^xsd:string, + oboInOwl:hasExactSynonym "SET3C"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "PMID:11711434"^^xsd:string + obo:IAO_0000115 "A histone deacetylase complex that is involved in transcriptional regulation. In S. cerevisiae, this complex consists of Set3p, Snt1p, Hos4p, Sif2p, Cpr1p, Hos2p, and Hst1p."^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454 + + +Class: obo:GO_0044168 + + Annotations: + oboInOwl:id "GO:0044168"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The irregular network of unit membranes, visible only by electron microscopy, that occurs in the host cell cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The host rough ER has ribosomes adhering to the outer surface."^^xsd:string, + rdfs:label "host cell rough endoplasmic reticulum"^^xsd:string, + oboInOwl:hasExactSynonym "host rough endoplasmic reticulum"^^xsd:string + + SubClassOf: + obo:GO_0044165 + + +Class: obo:GO_0044169 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044169"^^xsd:string, + oboInOwl:hasExactSynonym "host rough endoplasmic reticulum membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the host cell rough endoplasmic reticulum."^^xsd:string, + rdfs:label "host cell rough endoplasmic reticulum membrane"^^xsd:string + + SubClassOf: + obo:GO_0044167, + obo:BFO_0000050 some obo:GO_0044168 + + +Class: obo:GO_0034973 + + Annotations: + oboInOwl:id "GO:0034973"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Sid2p-Mob1p complex"^^xsd:string, + oboInOwl:hasExactSynonym "Sid2-Mob1 kinase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:10837231"^^xsd:string, + oboInOwl:hasDbXref "PMID:15060149"^^xsd:string + obo:IAO_0000115 "A protein complex that contains a protein kinase (Sid2 in S. pombe) and its regulatory subunit (Mob1). The Sid2p-Mob1p kinase complex is a component of the septation initiation network in fission yeast (called the mitotic exit network in S. cerevisiae) and is required for cytokinesis. The analogous complex in S. cerevisiae is called Dbf2p-Mob1p complex."^^xsd:string, + oboInOwl:hasExactSynonym "Dbf2p-Mob1p complex"^^xsd:string, + rdfs:label "Sid2-Mob1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0070313 + + Annotations: + rdfs:label "RGS6-DNMT1-DMAP1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14734556"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of RGS6, a negative regulator of heterotrimeric G protein signaling, with the DMAP1-Dnmt1 transcriptional repressor complex; in the complex, RGS6 inhibits the transcriptional repressor activity of DMAP1."^^xsd:string, + oboInOwl:id "GO:0070313"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0034974 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14663140"^^xsd:string + obo:IAO_0000115 "A protein complex involved that contains proteins known in Schizosaccharomyces as Swi5 monomers and Swi2, and is involved in mating type switching."^^xsd:string, + oboInOwl:hasBroadSynonym "Swi5 complex"^^xsd:string, + oboInOwl:id "GO:0034974"^^xsd:string, + rdfs:label "Swi5-Swi2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to Schizosaccharomyces pombe Swi5 and Swi2, which should not be confused with the unrelated Saccharomyces Swi5p and Swi2p."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454, + obo:GO_0043234 + + +Class: obo:GO_0034466 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034466"^^xsd:string, + rdfs:label "chromaffin granule lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a chromaffin granule."^^xsd:string + + SubClassOf: + obo:GO_0034774, + obo:BFO_0000050 some obo:GO_0042583 + + +Class: obo:GO_0070312 + + Annotations: + rdfs:comment "Note that process and function information are included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14734547"^^xsd:string + obo:IAO_0000115 "A nucleotide-excision repair complex formed by the association of the heterodimeric endonuclease XPF/ERCC4-ERCC1 (Rad1p and Rad10p in S. cerevisiae) with the RAD52 protein."^^xsd:string, + rdfs:label "RAD52-ERCC4-ERCC1 complex"^^xsd:string, + oboInOwl:id "GO:0070312"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0034467 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034467"^^xsd:string, + rdfs:label "esterosome lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an esterosome."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033117, + obo:GO_0060205 + + +Class: obo:GO_0070311 + + Annotations: + rdfs:label "nucleosomal methylation activator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14729568"^^xsd:string + oboInOwl:hasExactSynonym "NUMAC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070311"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14729568"^^xsd:string + obo:IAO_0000115 "A protein complex that contains eight subunits in common with the SWI/SNF complex, plus the ATPase BRG1 (SMARCA4) and the histone methyltransferase CARM1; the complex is involved in regulating nuclear receptor-dependent transcription."^^xsd:string + + SubClassOf: + obo:GO_0016585, + obo:GO_0035097 + + +Class: obo:GO_0034468 + + Annotations: + rdfs:label "glycosome lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a glycosome."^^xsd:string, + oboInOwl:id "GO:0034468"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020015, + obo:GO_0005782 + + +Class: obo:GO_0070310 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14724280"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the protein kinase ATR and ATR-interacting protein (ATRIP) and binds single-stranded DNA; ssDNA binding affinity is increased in the presence of replication protein A."^^xsd:string, + rdfs:label "ATR-ATRIP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17339343"^^xsd:string + oboInOwl:hasNarrowSynonym "Mec1-Lcd1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17339343"^^xsd:string + oboInOwl:hasNarrowSynonym "Rad3-Rad26 complex"^^xsd:string, + oboInOwl:id "GO:0070310"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0034464 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BBSome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:17574030"^^xsd:string + obo:IAO_0000115 "A protein complex that associates with the primary cilium and is involved in cilium biogenesis; consists of seven conserved proteins: BBS1, BBS2, BBS4, BBS5, BBS7, BBS8 and BBS9."^^xsd:string, + oboInOwl:hasExactSynonym "Bardet-Biedl syndrome complex"^^xsd:string, + oboInOwl:id "GO:0034464"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0070319 + + Annotations: + oboInOwl:id "GO:0070319"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kad"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A transport vesicle that mediates transport from the Golgi to the plasma membrane, and fuses with the plasma membrane to release various cargo molecules, such as proteins or hormones, by exocytosis."^^xsd:string, + rdfs:label "Golgi to plasma membrane transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Golgi-plasma membrane transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi to plasma membrane constitutive secretory pathway transport vesicle"^^xsd:string + + SubClassOf: + obo:GO_0070382 + + +Class: obo:GO_0035976 + + Annotations: + rdfs:label "AP1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string + oboInOwl:hasExactSynonym "Activating protein 1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string + oboInOwl:hasExactSynonym "transcription factor AP1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string + oboInOwl:hasExactSynonym "transcription factor AP-1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string + oboInOwl:hasExactSynonym "AP-1 complex"^^xsd:string, + oboInOwl:id "GO:0035976"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:20060892"^^xsd:string, + oboInOwl:hasDbXref "PMID:9069263"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:AP-1_transcription_factor"^^xsd:string + obo:IAO_0000115 "A heterodimeric transcription factor complex composed of proteins from the c-Fos, c-Jun, activating transcription factor (ATF) or JDP families. The subunits contain a basic leucine zipper (bZIP) domain that is essential for dimerization and DNA binding. Jun-Fos heterodimers bind preferentially to a heptamer consensus sequence (TPA responsive element (TRE)), whereas Jun-ATF dimers bind the cyclic AMP responsive element (CRE) to regulate transcription of target genes."^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0035996 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035996"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:14744998"^^xsd:string + obo:IAO_0000115 "Thin cylindrical membrane-covered projection on the surface of a rhabdomere."^^xsd:string, + rdfs:label "rhabdomere microvillus"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016028, + obo:GO_0005902 + + +Class: obo:GO_0035997 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035997"^^xsd:string, + rdfs:label "rhabdomere microvillus membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:14744998"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a microvillus of a rhabdomere."^^xsd:string + + SubClassOf: + obo:GO_0031528, + obo:BFO_0000050 some obo:GO_0035996, + obo:BFO_0000050 some obo:GO_0033583 + + +Class: obo:GO_0045282 + + Annotations: + oboInOwl:hasBroadSynonym "succinate dehydrogenase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045282"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "InterPro:IPR000701"^^xsd:string + obo:IAO_0000115 "A multimeric complex which consists of flavoprotein (subunit A ; InterPro:IPR003952), iron-sulfur protein (subunit B) and membrane-bound cytochrome b560 (subunit C; InterPro:IPR000701). In some Archaea, the membrane-bound subunits (C or C and D) do not necessarily contain heme. Membrane-bound subunits can bind/react with quinones. Examples of this component are found in Bacterial species."^^xsd:string, + rdfs:label "plasma membrane succinate dehydrogenase complex"^^xsd:string + + EquivalentTo: + obo:GO_0045281 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045274, + obo:GO_0045281, + obo:GO_0044459 + + +Class: obo:GO_0045281 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045281"^^xsd:string, + rdfs:label "succinate dehydrogenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "InterPro:IPR000701"^^xsd:string + obo:IAO_0000115 "A multimeric complex which consists of flavoprotein (subunit A ; InterPro:IPR003952), iron-sulfur protein (subunit B) and membrane-bound cytochrome b560 (subunit C; InterPro:IPR000701). In some Archaea, the membrane-bound subunits (C or C and D) do not necessarily contain heme. Membrane-bound subunits can bind or react with quinones."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045273, + obo:GO_0044424, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0045284 + + Annotations: + oboInOwl:inSubset , + rdfs:comment "See also the molecular function term 'succinate dehydrogenase (ubiquinone) activity ; GO:0008177'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "InterPro:IPR003418"^^xsd:string, + oboInOwl:hasDbXref "InterPro:IPR004224"^^xsd:string + obo:IAO_0000115 "A membrane-bound flavoenzyme complex consisting of four subunits, A, B, C, and D. A and B comprise the membrane-extrinsic catalytic domain and C (InterPro:IPR003510; InterPro:IPR00224) and D (InterPro:IPR003418) link the catalytic centers to the electron-transport chain. In some species, the complex has only three subunits, and in these cases, there is only one membrane anchor instead of two. This family consists of the 13 kDa hydrophobic subunit D. This component may be required to anchor the catalytic components of the fumarate reductase complex to the cytoplasmic membrane. Fumarate reductase couples the reduction of fumarate to succinate to the oxidation of quinol to quinone, in a reaction opposite to that catalyzed by the related complex II of the respiratory chain (succinate dehydrogenase-(ubiquinone)). Examples of this component are found in Bacterial species."^^xsd:string, + oboInOwl:id "GO:0045284"^^xsd:string, + rdfs:label "plasma membrane fumarate reductase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "fumarate reductase complex"^^xsd:string + + EquivalentTo: + obo:GO_0045283 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045274, + obo:GO_0045283, + obo:GO_0044459 + + +Class: obo:GO_0042757 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042757"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:9705477"^^xsd:string + obo:IAO_0000115 "Extremely large, unmyelinated axon found in invertebrates. Has high conduction speeds and is usually involved in panic or escape responses."^^xsd:string, + rdfs:label "giant axon"^^xsd:string + + SubClassOf: + obo:GO_0030424 + + +Class: obo:GO_0045283 + + Annotations: + oboInOwl:inSubset , + rdfs:label "fumarate reductase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the molecular function term 'succinate dehydrogenase (ubiquinone) activity ; GO:0008177'."^^xsd:string, + oboInOwl:id "GO:0045283"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "InterPro:IPR003418"^^xsd:string, + oboInOwl:hasDbXref "InterPro:IPR004224"^^xsd:string + obo:IAO_0000115 "A membrane-bound flavoenzyme complex consisting of four subunits, A, B, C, and D. A and B comprise the membrane-extrinsic catalytic domain and C (InterPro:IPR003510; InterPro:IPR004224) and D (InterPro:IPR003418) link the catalytic centers to the electron-transport chain. This family consists of the 13 kDa hydrophobic subunit D. This component may be required to anchor the catalytic components of the fumarate reductase complex to the cytoplasmic membrane. Fumarate reductase couples the reduction of fumarate to succinate to the oxidation of quinol to quinone, in a reaction opposite to that catalyzed by the related complex II of the respiratory chain (succinate dehydrogenase-(ubiquinone))."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045273, + obo:GO_0044424, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0044155 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A small pit, depression, or invagination, such as any of the minute pits or incuppings of the host cell membrane formed during pinocytosis, that communicates with the outside of a host cell and extends inward, indenting the host cytoplasm and the host cell membrane. Such caveolae may be pinched off to form free vesicles within the host cytoplasm. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044155"^^xsd:string, + rdfs:label "host caveola"^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0033644 + + +Class: obo:GO_0035085 + + Annotations: + oboInOwl:id "GO:0035085"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The bundle of microtubules and associated proteins that forms the core of cilia in eukaryotic cells and is responsible for their movements."^^xsd:string, + rdfs:label "cilium axoneme"^^xsd:string + + EquivalentTo: + obo:GO_0005930 + and (obo:BFO_0000050 some obo:GO_0005929) + + SubClassOf: + obo:GO_0005930, + obo:GO_0044441 + + +Class: obo:GO_0035086 + + Annotations: + oboInOwl:id "GO:0035086"^^xsd:string, + rdfs:label "flagellar axoneme"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The bundle of microtubules and associated proteins that forms the core of flagellar in eukaryotic cells and is responsible for their movements."^^xsd:string, + oboInOwl:hasExactSynonym "flagellum axoneme"^^xsd:string + + EquivalentTo: + obo:GO_0005930 + and (obo:BFO_0000050 some obo:GO_0019861) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0097014, + obo:GO_0005930, + obo:GO_0044442, + obo:GO_0044444 + + +Class: obo:GO_0044158 + + Annotations: + oboInOwl:id "GO:0044158"^^xsd:string, + rdfs:label "host cell wall"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The rigid or semi-rigid envelope lying outside the host cell membrane of plant, fungal, and most prokaryotic cells, maintaining their shape and protecting them from osmotic lysis. In plants it is made of cellulose and, often, lignin; in fungi it is composed largely of polysaccharides; in bacteria it is composed of peptidoglycan."^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0044159 + + Annotations: + oboInOwl:id "GO:0044159"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A membranous cellular structure within the host cell that bears the photosynthetic pigments in plants, algae, and cyanobacteria. In cyanobacteria thylakoids are of various shapes and are attached to, or continuous with, the host plasma membrane. In eukaryotic host cells they are flattened, membrane-bounded disk-like structures located in the chloroplasts; in the chloroplasts of higher plants the thylakoids form dense stacks called grana. Isolated thylakoid preparations can carry out photosynthetic electron transport and the associated phosphorylation."^^xsd:string, + rdfs:label "host thylakoid"^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0034449 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:15989961"^^xsd:string + obo:IAO_0000115 "A conserved protein complex required for protein sorting from endosome to the plasma membrane. In budding yeast, S. cerevisiae, this complex includes Gtr1p, Gtr2p, Slm4p, Meh1p and Ltv1p and it sorts Gap1p."^^xsd:string, + rdfs:label "GSE complex"^^xsd:string, + oboInOwl:id "GO:0034449"^^xsd:string, + oboInOwl:hasExactSynonym "GTPase-containing complex for Gap1p sorting in the endosome"^^xsd:string + + SubClassOf: + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0044156 + + Annotations: + rdfs:label "host cell junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044156"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A plasma membrane part that forms a specialized region of connection between two host cells or between a host cell and the host extracellular matrix. At a host cell junction, anchoring proteins extend through the host plasma membrane to link cytoskeletal proteins in one cell to cytoskeletal proteins in neighboring cells or to proteins in the extracellular matrix."^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0020002 + + +Class: obo:GO_0034978 + + Annotations: + oboInOwl:hasExactSynonym "acinar cell-specific C complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "PDX1-PBX1b-MRG1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11279116"^^xsd:string, + oboInOwl:hasDbXref "PMID:9710595"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the homeodomain proteins PDX1, PBX1b and MRG1 (MEIS2) and is involved in the transcriptional regulation of pancreatic acinar cell-specific genes."^^xsd:string, + oboInOwl:id "GO:0034978"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0034448 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:15989961"^^xsd:string + obo:IAO_0000115 "A vacuolar membrane-associated protein complex that is required for activation of microautophagy during exit from rapamycin-induced growth arrest. In budding yeast, S. cerevisiae, this complex includes Meh1p, Gtr2p and Slm4p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034448"^^xsd:string, + rdfs:label "EGO complex"^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005774, + obo:GO_0043234 + + +Class: obo:GO_0044157 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0044157"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A prolongation or process extending from a host cell, e.g. a flagellum or axon."^^xsd:string, + rdfs:label "host cell projection"^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0034977 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ABIN2-NFKB1-MAP3K8 complex"^^xsd:string, + oboInOwl:hasExactSynonym "ABIN2-NFKB1-TPL-1 complex"^^xsd:string, + oboInOwl:id "GO:0034977"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15169888"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the precursor form of NF-kappaB (p105), the NF-kappaB inhibitor ABIN-2, and the kinase TPL-2 (MAP3K8); the complex stabilizes TPL-2 and is involved in signaling in lipopolysaccharide (LPS)-stimulated macrophages."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0043700 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "A tissue-specific, membrane-bounded cytoplasmic organelle within which pteridine pigments are synthesized and stored. Pterinosomes are synthesized in xanthophores and erythrophore cells and are yellow, orange or red in appearance."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "pterinosome"^^xsd:string, + oboInOwl:id "GO:0043700"^^xsd:string + + SubClassOf: + obo:GO_0048770 + + +Class: obo:GO_0034456 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "UTP-C complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17515605"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a subcomplex of the 90S preribosome. In S. cerevisiae, it is composed of Rrp7p, Utp22p, Ckb1p, Cka1p, Ckb2p and Cka2p."^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + oboInOwl:id "GO:0034456"^^xsd:string, + oboInOwl:hasExactSynonym "Rrp7p-containing subcomplex of 90S preribosome"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:GO_0043234 + + +Class: obo:GO_0043701 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "A tissue-specific, membrane-bounded cytoplasmic organelle within which an unknown blue pigment is localized. Cyanosomes are synthesized in cyanophores and are blue in appearance."^^xsd:string, + oboInOwl:id "GO:0043701"^^xsd:string, + rdfs:label "cyanosome"^^xsd:string + + SubClassOf: + obo:GO_0048770 + + +Class: obo:GO_0034457 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17515605"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a subcomplex of the 90S preribosome. In S. cerevisiae, it is composed of Mpp10p, Imp3p and Imp4p."^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + oboInOwl:id "GO:0034457"^^xsd:string, + rdfs:label "Mpp10 complex"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:GO_0043234 + + +Class: obo:GO_0034985 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:17344420"^^xsd:string + obo:IAO_0000115 "Any large protein complex that contains Ecsit and NDUFAF1, is located in the mitochondrion, and is involved in the assembly of complex I of the oxidative phosphorylation system. In mammalian cells, three complexes of approximately 500, 600, and 850 kDa containing the 45 kDa isoform of Ecsit and NDUFAF1 have been observed."^^xsd:string, + oboInOwl:id "GO:0034985"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Ecsit-NDUFAF1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0043234 + + +Class: obo:GO_0034455 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17515605"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a subcomplex of the 90S preribosome and is required for the subsequent assembly of the rest of the preribosome. In S. cerevisiae, it is composed of Utp5p, Utp4p, Nan1p, Utp8p, Utp9p, Utp10 and Utp15p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Nan1p-containing subcomplex of 90S preribosome"^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + rdfs:label "t-UTP complex"^^xsd:string, + oboInOwl:id "GO:0034455"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:GO_0043234 + + +Class: obo:GO_0043702 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "A tissue-specific cytoplasmic vesicle surrounded by a membrane half-leaflet within which carotenoid pigments are stored. Carotenoid vescicles are synthesized in xanthophores and erythrophore cells and are yellow, orange or red in appearance."^^xsd:string, + rdfs:label "carotenoid vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043702"^^xsd:string + + SubClassOf: + obo:GO_0031410 + + +Class: obo:GO_0034980 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034980"^^xsd:string, + rdfs:label "FHL2-CREB complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11046156"^^xsd:string + obo:IAO_0000115 "A protein complex that contains CREB and FHL2, and is involved in transcriptional regulation."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0033202 + + +Class: obo:GO_0034981 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "FHL3-CREB complex"^^xsd:string, + oboInOwl:id "GO:0034981"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11046156"^^xsd:string + obo:IAO_0000115 "A protein complex that contains CREB and FHL3, and is involved in transcriptional regulation."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0033202 + + +Class: obo:GO_0034451 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:10579718"^^xsd:string, + oboInOwl:hasDbXref "PMID:12403812"^^xsd:string + obo:IAO_0000115 "A small (70-100 nm) cytoplasmic granule that contains a number of centrosomal proteins; centriolar satellites traffic toward microtubule minus ends and are enriched near the centrosome."^^xsd:string, + rdfs:label "centriolar satellite"^^xsd:string, + oboInOwl:id "GO:0034451"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005813 + + +Class: obo:GO_0035580 + + Annotations: + oboInOwl:id "GO:0035580"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "secondary granule lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:7334549"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a specific granule, a granule with a membranous, tubular internal structure, found primarily in mature neutrophil cells. Most are released into the extracellular fluid. Specific granules contain lactoferrin, lysozyme, vitamin B12 binding protein and elastase."^^xsd:string, + rdfs:label "specific granule lumen"^^xsd:string + + SubClassOf: + obo:GO_0034774, + obo:BFO_0000050 some obo:GO_0042581 + + +Class: obo:GO_0008250 + + Annotations: + oboInOwl:id "GO:0008250"^^xsd:string, + rdfs:label "oligosaccharyltransferase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "OST complex"^^xsd:string, + oboInOwl:hasExactSynonym "oligosaccharyl transferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879695595"^^xsd:string, + oboInOwl:hasDbXref "PMID:15835887"^^xsd:string + obo:IAO_0000115 "A protein complex that is found in the endoplasmic reticulum membrane of eukaryotes and transfers lipid-linked oligosaccharide precursor to asparagine residues on nascent proteins. In yeast, the complex includes at least nine different subunits, whereas in mammalian cells at least three different forms of the complex have been detected."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0071008 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex I"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG post-mRNA release spliceosomal complex"^^xsd:string, + oboInOwl:id "GO:0071008"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U2-type post-mRNA release spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed following the release of the spliced product from the post-spliceosomal complex and contains the excised intron and the U2, U5 and U6 snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major post-mRNA release spliceosomal complex"^^xsd:string + + SubClassOf: + obo:GO_0005684, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005688, + obo:GO_0071014 + + +Class: obo:GO_0044100 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mf"^^xsd:string, + oboInOwl:hasDbXref "PMID:12076771"^^xsd:string, + oboInOwl:hasDbXref "PMID:16004371"^^xsd:string, + oboInOwl:hasDbXref "PMID:9723921"^^xsd:string + obo:IAO_0000115 "The complex infective apparatus corresponding to the central mass of cytoplasm within a spore that is injected into a host cell by various parasitic microorganisms."^^xsd:string, + oboInOwl:id "GO:0044100"^^xsd:string, + rdfs:label "sporoplasm"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0071009 + + Annotations: + oboInOwl:id "GO:0071009"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U4atac/U6atac x U5 tri-snRNP complex"^^xsd:string, + oboInOwl:hasExactSynonym "U4atac/U6atac.U5 snRNP complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16201866"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex formed by the association of the U4atac/U6atac and U5 small nuclear ribonucleoproteins."^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0071002, + obo:BFO_0000051 some obo:GO_0005682, + obo:GO_0030532 + + +Class: obo:GO_0042729 + + Annotations: + oboInOwl:hasExactSynonym "condensed nuclear chromosome kinetochore-associated DASH complex"^^xsd:string, + rdfs:label "DASH complex"^^xsd:string, + oboInOwl:id "GO:0042729"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this complex is conserved in fungi but has not been observed in metazoans."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0043925"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11782438"^^xsd:string, + oboInOwl:hasDbXref "PMID:11799062"^^xsd:string + obo:IAO_0000115 "A large protein complex, containing around 8-10 subunits in yeast, including Duo1p, Dam1p, Dad1p and Ask1p. The complex forms part of the kinetochore, associates with microtubules when the kinetochore attaches to the spindle, and plays a role in spindle attachment, chromosome segregation and spindle stability."^^xsd:string, + oboInOwl:hasExactSynonym "DDD complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0043926"^^xsd:string, + oboInOwl:hasExactSynonym "Duo1p-Dam1p-Dad1p complex"^^xsd:string, + oboInOwl:hasExactSynonym "Dam1 complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000778, + obo:GO_0044454, + obo:GO_0043234 + + +Class: obo:GO_0071006 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:18322460"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the displacement of the U1 and U4 snRNPs from the precatalytic spliceosome; the U2, U5 and U6 snRNPs remain associated with the mRNA. This complex, sometimes called the activated spliceosome, is the catalytically active form of the spliceosome, and includes many proteins in addition to those found in the U2, and U5 and U6 snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG catalytic step 1 spliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major catalytic step 1 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex B*"^^xsd:string, + rdfs:label "U2-type catalytic step 1 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex B2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U2-type spliceosomal complex A1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasExactSynonym "U2-type activated spliceosome"^^xsd:string, + oboInOwl:id "GO:0071006"^^xsd:string + + SubClassOf: + obo:GO_0005684, + obo:BFO_0000051 some obo:GO_0005686, + obo:GO_0071012, + obo:BFO_0000051 some obo:GO_0005688 + + +Class: obo:GO_0071007 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U2-type spliceosomal complex A2-2"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG catalytic step 2 spliceosome"^^xsd:string, + rdfs:label "U2-type catalytic step 2 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major catalytic step 2 spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex C"^^xsd:string, + oboInOwl:id "GO:0071007"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:18322460"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that contains the U2, U5 and U6 snRNPs bound to a splicing intermediate in which the first catalytic cleavage of the 5' splice site has occurred. The precise subunit composition differs significantly from that of the catalytic step 1, or activated, spliceosome, and includes many proteins in addition to those found in the U2, U5 and U6 snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex C1"^^xsd:string + + SubClassOf: + obo:GO_0005684, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005688, + obo:GO_0071013 + + +Class: obo:GO_0071004 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major prespliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG prespliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17332742"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by association of the 5' splice site with the U1 snRNP, while the branch point sequence is recognized by the U2 snRNP. The prespliceosome includes many proteins in addition to those found in the U1 and U2 snRNPs. Commitment to a given pair of 5' and 3' splice sites occurs at the time of prespliceosome formation."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast U2-type spliceosomal complex B"^^xsd:string, + oboInOwl:id "GO:0071004"^^xsd:string, + rdfs:label "U2-type prespliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex A"^^xsd:string + + SubClassOf: + obo:GO_0071010, + obo:GO_0005684, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005685 + + +Class: obo:GO_0071005 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasRelatedSynonym "yeast U12-type spliceosomal complex A2-1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major precatalytic spliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U2-type precatalytic spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18322460"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by the recruitment of the preassembled U4/U6.U5 tri-snRNP to the prespliceosome. Although all 5 snRNPs are present, the precatalytic spliceosome is catalytically inactive. The precatalytic spliceosome includes many proteins in addition to those found in the U1, U2 and U4/U6.U5 snRNPs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG precatalytic spliceosome"^^xsd:string, + oboInOwl:id "GO:0071005"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex B1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian U2-type spliceosomal complex B"^^xsd:string + + SubClassOf: + obo:GO_0005684, + obo:BFO_0000051 some obo:GO_0046540, + obo:GO_0071011, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005685 + + +Class: obo:GO_0071002 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14685174"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains base-paired U4atac and U6atac small nuclear RNAs."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U4atac/U6atac snRNP"^^xsd:string, + oboInOwl:id "GO:0071002"^^xsd:string + + SubClassOf: + obo:GO_0030532, + obo:BFO_0000051 some obo:GO_0005691, + obo:BFO_0000051 some obo:GO_0005690 + + +Class: obo:GO_0042720 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "IMP"^^xsd:string, + rdfs:label "mitochondrial inner membrane peptidase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10821182"^^xsd:string, + oboInOwl:hasDbXref "PMID:12191769"^^xsd:string + obo:IAO_0000115 "Protease complex of the mitochondrial inner membrane, consisting of at least two subunits, involved in processing of both nuclear- and mitochondrially-encoded proteins targeted to the intermembrane space."^^xsd:string, + oboInOwl:id "GO:0042720"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0071003 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11804584"^^xsd:string, + oboInOwl:hasDbXref "PMID:12724403"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex formed by the association of the U1, U2, U4/U6 and U5 small nuclear ribonucleoproteins."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + oboInOwl:hasExactSynonym "penta-RNP complex"^^xsd:string, + oboInOwl:id "GO:0071003"^^xsd:string, + rdfs:label "penta-snRNP complex"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0071001, + obo:BFO_0000051 some obo:GO_0005682, + obo:BFO_0000051 some obo:GO_0005686, + obo:BFO_0000051 some obo:GO_0005685, + obo:GO_0030532 + + +Class: obo:GO_0071001 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14685174"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains base-paired U4 and U6 small nuclear RNAs."^^xsd:string, + rdfs:label "U4/U6 snRNP"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071001"^^xsd:string + + SubClassOf: + obo:GO_0030532, + obo:BFO_0000051 some obo:GO_0005688, + obo:BFO_0000051 some obo:GO_0005687 + + +Class: obo:GO_0042721 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "Tim22 complex"^^xsd:string, + oboInOwl:id "GO:0042721"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12191765"^^xsd:string + obo:IAO_0000115 "A multi-subunit complex embedded in the mitochondrial inner membrane that mediates insertion of carrier proteins into the inner membrane."^^xsd:string, + rdfs:label "mitochondrial inner membrane protein insertion complex"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0071010 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast spliceosomal complex B"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex A"^^xsd:string, + oboInOwl:id "GO:0071010"^^xsd:string, + rdfs:label "prespliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ab"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17332742"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by association of the 5' splice site and the branch point sequence with specific snRNPs. The prespliceosome includes many proteins in addition to those found in the bound snRNPs. Commitment to a given pair of 5' and 3' splice sites occurs at the time of prespliceosome formation."^^xsd:string + + SubClassOf: + obo:GO_0005681 + + +Class: obo:GO_0043332 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "conjugation tube tip"^^xsd:string, + oboInOwl:id "GO:0043332"^^xsd:string, + oboInOwl:hasNarrowSynonym "shmoo tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The apex of the mating projection in unicellular fungi exposed to mating pheromone; site of polarized growth."^^xsd:string, + rdfs:label "mating projection tip"^^xsd:string + + EquivalentTo: + obo:GO_0030427 + and (obo:BFO_0000050 some obo:GO_0005937) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005937, + obo:GO_0044463, + obo:GO_0030427 + + +Class: obo:GO_0070847 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11454195"^^xsd:string, + oboInOwl:hasDbXref "PMID:16168358"^^xsd:string, + oboInOwl:hasDbXref "PMID:17870225"^^xsd:string + obo:IAO_0000115 "A protein complex that interacts with the carboxy-terminal domain of the largest subunit of RNA polymerase II and plays an active role in transducing the signal from a transcription factor to the transcriptional machinery. The core mediator complex has a stimulatory effect on basal transcription, and contains most of the same subdomains as the larger form of mediator complex -- a head domain comprising proteins known in Saccharomyces as Srb2, -4, and -5, Med6, -8, and -11, and Rox3 proteins; a middle domain comprising Med1, -4, and -7, Nut1 and -2, Cse2, Rgr1, Soh1, and Srb7 proteins; and a tail consisting of Gal11p, Med2p, Pgd1p, and Sin4p -- but lacks the regulatory subcomplex comprising Ssn2, -3, and -8, and Srb8 proteins. Metazoan core mediator complexes have similar modular structures and include homologs of yeast Srb and Med proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "core mediator complex"^^xsd:string, + oboInOwl:id "GO:0070847"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17870225"^^xsd:string + oboInOwl:hasExactSynonym "C mediator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17043218"^^xsd:string + oboInOwl:hasExactSynonym "S mediator complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0043234 + + +Class: obo:GO_0034425 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "etioplast envelope"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the etioplast and separating its contents from the rest of the cytoplasm; includes the intermembrane space."^^xsd:string, + oboInOwl:id "GO:0034425"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009513, + obo:GO_0009526 + + +Class: obo:GO_0034426 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround a etioplast and form the etioplast envelope."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "etioplast membrane"^^xsd:string, + oboInOwl:id "GO:0034426"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0034425, + obo:GO_0042170 + + +Class: obo:GO_0060387 + + Annotations: + rdfs:label "fertilization envelope"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0878932437"^^xsd:string + obo:IAO_0000115 "A structure that lies outside the plasma membrane and surrounds the egg. The fertilization envelope forms from the vitelline membrane after fertilization as a result of cortical granule release."^^xsd:string, + oboInOwl:id "GO:0060387"^^xsd:string, + oboInOwl:hasRelatedSynonym "fertilization membrane"^^xsd:string + + SubClassOf: + obo:GO_0035805 + + +Class: obo:GO_0060388 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0878932437"^^xsd:string + obo:IAO_0000115 "A glycoprotein-based structure that lies outside the plasma membrane and surrounds the egg before fertilization."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "vitelline envelope"^^xsd:string, + oboInOwl:id "GO:0060388"^^xsd:string, + oboInOwl:hasRelatedSynonym "fertilization membrane"^^xsd:string + + SubClassOf: + obo:GO_0035805 + + +Class: obo:GO_0019910 + + Annotations: + rdfs:comment "See also the cellular component term 'mitochondrial pyruvate dehydrogenase complex ; GO:0005967'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:9395502"^^xsd:string + obo:IAO_0000115 "A mitochondrial complex of a regulatory and catalytic subunit that catalyzes the dephosphorylation and concomitant reactivation of the alpha subunit of the E1 component of the pyruvate dehydrogenase complex. An example of this component is found in Mus musculus."^^xsd:string, + oboInOwl:id "GO:0019910"^^xsd:string, + rdfs:label "mitochondrial pyruvate dehydrogenase (lipoamide) phosphatase complex"^^xsd:string + + EquivalentTo: + obo:GO_0045253 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045253, + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0042735 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:7704047"^^xsd:string + obo:IAO_0000115 "A membrane-bounded plant organelle found in the developing endosperm, contains storage proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein body"^^xsd:string, + oboInOwl:id "GO:0042735"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0042734 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A specialized area of membrane of the axon terminal that faces the plasma membrane of the neuron or muscle fiber with which the axon terminal establishes a synaptic junction; many synaptic junctions exhibit structural presynaptic characteristics, such as conical, electron-dense internal protrusions, that distinguish it from the remainder of the axon plasma membrane."^^xsd:string, + oboInOwl:id "GO:0042734"^^xsd:string, + rdfs:label "presynaptic membrane"^^xsd:string + + SubClassOf: + obo:GO_0097060 + + +Class: obo:GO_0070850 + + Annotations: + rdfs:label "TACC/TOG complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:19606211"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the transforming acidic coiled coil (TACC) protein and the TOG protein (Mia1p/Alp7p and Alp14, respectively, in fission yeast), and is involved in microtubule array remodeling as cells progress through the cell cycle. The TACC/TOG complex is conserved in eukaryotes, associates with microtubules, and shuttles between the nucleus and the cytoplasm during interphase."^^xsd:string, + oboInOwl:id "GO:0070850"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0034430 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034430"^^xsd:string, + rdfs:label "monolayer-surrounded lipid storage body outer lipid monolayer"^^xsd:string, + oboInOwl:hasExactSynonym "oil body outer lipid monolayer"^^xsd:string, + oboInOwl:hasExactSynonym "spherosome outer lipid monolayer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The single layer of phopholipids surrounding a lipid storage body."^^xsd:string, + oboInOwl:hasExactSynonym "oleosome outer lipid monolayer"^^xsd:string, + oboInOwl:hasExactSynonym "lipid storage body surface lipid monolayer"^^xsd:string, + oboInOwl:hasRelatedSynonym "lipid droplet outer lipid monolayer"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0012511, + obo:GO_0034646, + obo:GO_0044444 + + +Class: obo:GO_0070852 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dos"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "primary neurite"^^xsd:string, + oboInOwl:hasExactSynonym "cell body fibre"^^xsd:string, + oboInOwl:id "GO:0070852"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dos"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A neuron projection that is found in unipolar neurons and corresponds to the region between the cell body and the point at which the single projection branches."^^xsd:string, + rdfs:label "cell body fiber"^^xsd:string + + SubClassOf: + obo:GO_0043005 + + +Class: obo:GO_0075341 + + Annotations: + oboInOwl:hasExactSynonym "host cell PML NB"^^xsd:string, + rdfs:label "host cell PML body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0075341"^^xsd:string, + oboInOwl:hasExactSynonym "host cell PML nuclear body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A nuclear body that reacts against SP100 auto-antibodies (PML = promyelocytic leukemia) located within a cell of a host organism."^^xsd:string + + SubClassOf: + obo:GO_0044094 + + +Class: obo:GO_0019907 + + Annotations: + rdfs:label "cyclin-dependent protein kinase activating kinase holoenzyme complex"^^xsd:string, + oboInOwl:hasExactSynonym "CAK complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:8752210"^^xsd:string + obo:IAO_0000115 "A protein complex that phosphorylates cyclin-dependent kinases such as Cdc2 on Thr161 (or an equivalent residue); contains a catalytic subunit and a regulatory subunit, and some examples also include an assembly factor."^^xsd:string, + oboInOwl:hasExactSynonym "CDK-activating kinase complex"^^xsd:string, + oboInOwl:id "GO:0019907"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0019908 + + Annotations: + rdfs:label "nuclear cyclin-dependent protein kinase holoenzyme complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "Cyclin-dependent protein kinase (CDK) complex found in the nucleus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "CDK holoenzyme"^^xsd:string, + oboInOwl:id "GO:0019908"^^xsd:string + + EquivalentTo: + obo:GO_0000307 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:GO_0000307 + + +Class: obo:GO_0042709 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.2.1.4"^^xsd:string, + oboInOwl:hasDbXref "EC:6.2.1.5"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme complex, usually composed of an alpha and beta chain. Functions in the TCA cycle, hydrolyzing succinyl-CoA into succinate and CoA, thereby forming ATP or GTP."^^xsd:string, + oboInOwl:id "GO:0042709"^^xsd:string, + rdfs:label "succinate-CoA ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0045239 + + +Class: obo:GO_0000120 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that acts at promoters of genes transcribed by RNA polymerase I."^^xsd:string, + oboInOwl:id "GO:0000120"^^xsd:string, + rdfs:label "RNA polymerase I transcription factor complex"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:GO_0005667 + + +Class: obo:GO_0000125 + + Annotations: + oboInOwl:id "GO:0000125"^^xsd:string, + oboInOwl:hasExactSynonym "PCAF histone acetylase-associated complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the cellular component term 'SAGA complex ; GO:0000124'."^^xsd:string, + rdfs:label "PCAF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18838386"^^xsd:string + oboInOwl:hasExactSynonym "SPT3-TAF9-PCAF acetylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10637607"^^xsd:string + obo:IAO_0000115 "A large multiprotein complex that possesses histone acetyltransferase activity and is involved in regulation of transcription. The composition is similar to that of the SAGA complex, but includes fewer Spt and Ada proteins, and more TAFs."^^xsd:string + + SubClassOf: + obo:GO_0070461 + + +Class: obo:GO_0000126 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11433012"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that is involved in regulating transcription from RNA polymerase III (Pol III) promoters. TFIIIB contains the TATA-binding protein (TBP) and two Pol III-specific proteins, B'' and BRF."^^xsd:string, + oboInOwl:id "GO:0000126"^^xsd:string, + rdfs:label "transcription factor TFIIIB complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0000123 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000123"^^xsd:string, + rdfs:label "histone acetyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses histone acetyltransferase activity."^^xsd:string, + rdfs:comment "Note that this term represents a location, not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function of this complex is represented by the molecular function term 'histone acetyltransferase activity ; GO:0004402'."^^xsd:string, + oboInOwl:hasExactSynonym "histone acetylase complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0000124 + + Annotations: + oboInOwl:id "GO:0000124"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SAGA complex"^^xsd:string, + oboInOwl:hasExactSynonym "Spt-Ada-Gcn5-acetyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10637607"^^xsd:string, + oboInOwl:hasDbXref "PMID:17337012"^^xsd:string + obo:IAO_0000115 "A SAGA-type histone acetyltransferase complex that contains Spt8 (in budding yeast) or a homolog thereof; additional polypeptides include Spt group, consisting of Spt7, Spt3, and Spt20/Ada5, which interact with the TATA-binding protein (TBP); the Ada group, consisting of Ada1, Ada2, Ada3, Ada4/Gcn5, and Ada5/Spt20, which is functionally linked to the nucleosomal HAT activity; Tra1, an ATM/PI-3 kinase-related protein that targets DNA-bound activators for recruitment to promoters; the TBP-associated factor (TAF) proteins, consisting of Taf5, Taf6, Taf9, Taf10, and Taf12, which mediate nucleosomal HAT activity and are thought to help recruit the basal transcription machinery."^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0071819, + obo:GO_0070461 + + +Class: obo:GO_0070867 + + Annotations: + oboInOwl:id "GO:0070867"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a mating projection tip."^^xsd:string, + rdfs:label "mating projection tip membrane"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0043332, + obo:GO_0044459 + + +Class: obo:GO_0000118 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses histone deacetylase activity."^^xsd:string, + oboInOwl:hasExactSynonym "HDAC complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "histone deacetylase complex"^^xsd:string, + rdfs:comment "Note that this term represents a location, not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function of this complex is represented by the molecular function term 'histone deacetylase activity ; GO:0004407'."^^xsd:string, + oboInOwl:id "GO:0000118"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0016585 + + +Class: obo:GO_0070865 + + Annotations: + oboInOwl:id "GO:0070865"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15829565"^^xsd:string + oboInOwl:hasExactSynonym "F-actin cone"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:15829565"^^xsd:string, + oboInOwl:hasDbXref "PMID:9550716"^^xsd:string + obo:IAO_0000115 "A cytoskeletal part that consists of a microfilament-rich cone that forms round each nucleus in a spermatogenic cyst and translocates the length of the cyst during sperm individualization."^^xsd:string, + rdfs:label "investment cone"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070864, + obo:GO_0044430 + + +Class: obo:GO_0034422 + + Annotations: + oboInOwl:id "GO:0034422"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "aleurone grain lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an aleurone grain."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033095, + obo:GO_0060205 + + +Class: obo:GO_0070860 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8702872"^^xsd:string + obo:IAO_0000115 "A RNA polymerase I-specific transcription factor complex that is required for the transcription of rDNA by RNA polymerase I. In yeast the complex consists of Rrn6p, Rrn7p, and Rrn11p."^^xsd:string, + oboInOwl:id "GO:0070860"^^xsd:string, + rdfs:comment "Note that, although this complex can be considered analogous to the mammalian transcription factor SL complex, the core factor complex does not include TBP, whereas SL1 does."^^xsd:string, + rdfs:label "RNA polymerase I core factor complex"^^xsd:string + + SubClassOf: + obo:GO_0000120 + + +Class: obo:GO_0034424 + + Annotations: + oboInOwl:id "GO:0034424"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18216282"^^xsd:string + obo:IAO_0000115 "A membrane-associated protein complex that is required for a late stage of endosomal transport. In budding yeast, this complex consists of Vps55p and Vps68p proteins."^^xsd:string, + rdfs:label "Vps55/Vps68 complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0034423 + + Annotations: + oboInOwl:id "GO:0034423"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed within the autophagic vacuole membrane."^^xsd:string, + rdfs:comment "Note that this term should be used for annotating gene products with caution: it should be used only to annotate gene products demonstrated to reside and function normally in the autophagic vacuole lumen, not for molecules that are temporarily found in the lumen prior to degradation."^^xsd:string, + rdfs:label "autophagic vacuole lumen"^^xsd:string + + SubClassOf: + obo:GO_0005775, + obo:BFO_0000050 some obo:GO_0005776 + + +Class: obo:GO_0008278 + + Annotations: + oboInOwl:id "GO:0008278"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008279"^^xsd:string, + oboInOwl:hasExactSynonym "SMC/kleisin ring complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:9887095"^^xsd:string + obo:IAO_0000115 "A protein complex that is required for sister chromatid cohesion in eukaryotes. The cohesin complex forms a molecular ring complex, and is composed of structural maintenance of chromosomes (SMC) and kleisin proteins. For example, in yeast, the complex is composed of the SMC proteins Smc1p and Smc3p, and the kleisin protein Scc1p. In vertebrates, the complex is composed of the SMC1 (SMC1A or SMC1B) and SMC3 heterodimer attached via their hinge domains to a kleisin (RAD21, REC8 or RAD21L) which links them, and one STAG protein (STAG1, STAG2 or STAG3)."^^xsd:string, + rdfs:label "cohesin complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "14S cohesin"^^xsd:string, + oboInOwl:hasRelatedSynonym "SMC complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0043222"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000793, + obo:GO_0043234 + + +Class: obo:GO_0008275 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11297925"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string + obo:IAO_0000115 "A complex usually comprising two gamma-tubulin molecules and two conserved non-tubulin proteins. Some gamma-tubulin small complexes are thought to be the repeating unit making up the core of the gamma-tubulin ring complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "gammaTuSC"^^xsd:string, + rdfs:label "gamma-tubulin small complex"^^xsd:string, + oboInOwl:id "GO:0008275"^^xsd:string + + SubClassOf: + obo:GO_0000930 + + +Class: obo:GO_0070864 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:10588662"^^xsd:string, + oboInOwl:hasDbXref "PMID:9550716"^^xsd:string + obo:IAO_0000115 "A macromolecular complex that cytoskeletal components and part of the cell membrane, forms at the nuclear end of a male germline syncytium, or cyst, and translocates the over the length of the syncytium in the course of sperm individualization. Each complex contains an array of 64 investment cones, one per nucleus, that move synchronously along the spermatogenic cyst."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "sperm individualization complex"^^xsd:string, + oboInOwl:id "GO:0070864"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0032991 + + +Class: obo:GO_0008274 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string + obo:IAO_0000115 "A multiprotein complex composed of gamma-tubulin and other non-tubulin proteins that forms a flexible open ring structure thought to be the unit of nucleation at the minus end of a microtubule."^^xsd:string, + oboInOwl:id "GO:0008274"^^xsd:string, + rdfs:label "gamma-tubulin ring complex"^^xsd:string, + oboInOwl:hasExactSynonym "gammaTuRC"^^xsd:string + + SubClassOf: + obo:GO_0000931 + + +Class: obo:GO_0042719 + + Annotations: + oboInOwl:id "GO:0042719"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12581629"^^xsd:string + obo:IAO_0000115 "Soluble complex of the mitochondrial intermembrane space composed of various combinations of small Tim proteins; acts as a protein transporter to guide proteins to the Tim22 complex for insertion into the mitochondrial inner membrane."^^xsd:string, + oboInOwl:hasNarrowSynonym "Tim9-Tim10 complex"^^xsd:string, + rdfs:label "mitochondrial intermembrane space protein transporter complex"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005758, + obo:GO_0043234 + + +Class: obo:GO_0042718 + + Annotations: + oboInOwl:id "GO:0042718"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18046696"^^xsd:string, + oboInOwl:hasDbXref "http://148.216.10.83/cellbio/eggs.htm"^^xsd:string + obo:IAO_0000115 "Discrete structures that partition the water-insoluble portion of the yolk of oocytes and ova, which may or may not be membrane enclosed."^^xsd:string, + rdfs:label "yolk granule"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0060417, + obo:GO_0044444 + + +Class: obo:GO_0008280 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The core heterodimer of a cohesin complex; a structure required for sister chromatid cohesion in eukaryotes."^^xsd:string, + oboInOwl:id "GO:0008280"^^xsd:string, + oboInOwl:hasNarrowSynonym "9S cohesin"^^xsd:string, + rdfs:label "cohesin core heterodimer"^^xsd:string, + oboInOwl:hasNarrowSynonym "Smc1-Smc3 complex"^^xsd:string + + EquivalentTo: + obo:GO_0043234 + and (obo:BFO_0000050 some obo:GO_0008278) + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0008278, + obo:GO_0043234 + + +Class: obo:GO_0042717 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0395825172"^^xsd:string, + oboInOwl:hasDbXref "PMID:11867431"^^xsd:string + obo:IAO_0000115 "The lipid bilayer associated with a plasma membrane-derived chromatophore; surrounds chromatophores that form complete vesicles."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042717"^^xsd:string, + rdfs:label "plasma membrane-derived chromatophore membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042716, + obo:GO_0034357, + obo:GO_0044444 + + +Class: obo:GO_0008282 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008282"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16308567"^^xsd:string, + oboInOwl:hasDbXref "PMID:16956886"^^xsd:string + obo:IAO_0000115 "A protein complex that comprises four pore-forming (Kir6.x) and four regulatory sulphonylurea receptor (SURx) subunits and forms a transmembrane channel through which ions may pass. The opening and closing of the channel is regulated by ATP: binding of ATP to the Kir6.2 subunit inhibits channel activity, whereas binding of Mg2+-complexed ATP or ADP to the SUR1 subunit stimulates channel activity."^^xsd:string, + rdfs:label "ATP-sensitive potassium channel complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0034702 + + +Class: obo:GO_0042716 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0042716"^^xsd:string, + rdfs:comment "Note that this structure is distinct from the chromoplast of plants, which is also sometimes called a chromatophore; it also should not be confused with the specialized pigment-producing cells known as chromatophores, found in fish and amphibian skin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0395825172"^^xsd:string, + oboInOwl:hasDbXref "PMID:11867431"^^xsd:string + obo:IAO_0000115 "A pigment-bearing structure that is derived from the cytoplasmic membrane, sometimes consisting of simple invaginations and sometimes a complete vesicle. This component is found in certain photosynthetic bacteria and cyanobacteria."^^xsd:string, + rdfs:label "plasma membrane-derived chromatophore"^^xsd:string, + oboInOwl:hasRelatedSynonym "chromatophore vesicle"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0000110 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10915862"^^xsd:string + obo:IAO_0000115 "One of several protein complexes involved in nucleotide-excision repair; possesses DNA damage recognition and endodeoxynuclease activities. In S. cerevisiae, it is composed of Rad1p, Rad10p, and Rad14p; in human the subunits are ERCC4/XPF, ERCC1 and XPA, respectively."^^xsd:string, + rdfs:comment "Note that process and function information are included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8197175"^^xsd:string + oboInOwl:hasExactSynonym "XPA-ERCC1-ERCC4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "NEF1 complex"^^xsd:string, + rdfs:label "nucleotide-excision repair factor 1 complex"^^xsd:string, + oboInOwl:id "GO:0000110"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0000111 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10915862"^^xsd:string + obo:IAO_0000115 "One of several protein complexes involved in nucleotide-excision repair; possesses damaged DNA binding activity. In S. cerevisiae, it is composed of Rad4p and Rad23p."^^xsd:string, + rdfs:label "nucleotide-excision repair factor 2 complex"^^xsd:string, + rdfs:comment "Note that process and function information are included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "NEF2 complex"^^xsd:string, + oboInOwl:id "GO:0000111"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0000112 + + Annotations: + rdfs:comment "Note that process and function information are included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + oboInOwl:id "GO:0000112"^^xsd:string, + oboInOwl:hasExactSynonym "NEF3 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10915862"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "One of several protein complexes involved in nucleotide-excision repair; possesses endodeoxynuclease and DNA helicase activities. In S. cerevisiae, it is composed of Rad2p and the core TFIIH-Ssl2p complex (Core TFIIH is composed of Rad3p, Tfb1p, Tfb2p, Ssl1p, and Tfb4p. Note that Ssl2p is also called Rad25p)."^^xsd:string, + rdfs:label "nucleotide-excision repair factor 3 complex"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0000113 + + Annotations: + oboInOwl:id "GO:0000113"^^xsd:string, + rdfs:comment "Note that process and function information are included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nucleotide-excision repair factor 4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10915862"^^xsd:string + obo:IAO_0000115 "One of several protein complexes involved in nucleotide-excision repair; possesses DNA damage recognition and DNA-dependent ATPase activities. In S. cerevisiae, it is composed of Rad7p and Rad16p."^^xsd:string, + oboInOwl:hasExactSynonym "NEF4 complex"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0070876 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070876"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19683501"^^xsd:string + obo:IAO_0000115 "A protein complex that functions downstream of the MRN complex to promote DNA repair and the G2/M checkpoint. The SOSS complex associates with single-stranded DNA at DNA lesions and is composed of SOSS-B (SOSS-B1/OBFC2B or SOSS-B2/OBFC2A), SOSS-A/INTS3 and SOSS-C/C9orf80."^^xsd:string, + rdfs:label "SOSS complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070877 + + Annotations: + rdfs:label "microprocessor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070877"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16963499"^^xsd:string, + oboInOwl:hasDbXref "PMID:17159994"^^xsd:string + obo:IAO_0000115 "A protein complex that binds to heme and to pri-miRNAs, and is required for the formation of a pre-microRNA (pre-miRNA), the initial step of microRNA (miRNA) biogenesis. The complex is composed of the double-stranded-RNA-specific RNase Drosha (also called RNASEN) and the RNA-binding protein DGCR8 (heme-free or heme-bound forms). Within the complex, DGCR8 function as a molecular anchor necessary for the recognition of pri-miRNA at dsRNA-ssRNA junction and directs RNASEN/Drosha to cleave the 3' and 5' strands of a stem-loop to release hairpin-shaped pre-miRNAs."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0000109 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10915862"^^xsd:string + obo:IAO_0000115 "Any complex formed of proteins that act in nucleotide-excision repair."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that process information is included in the term and definition for the purpose of describing and distinguishing the complex."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "nucleotide-excision repair complex"^^xsd:string, + oboInOwl:id "GO:0000109"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0001650 + + Annotations: + rdfs:label "fibrillar center"^^xsd:string, + oboInOwl:id "GO:0001650"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "fibrillar centre"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10754561"^^xsd:string + obo:IAO_0000115 "A structure found most metazoan nucleoli, but not usually found in lower eukaryotes; surrounded by the dense fibrillar component; the zone of transcription from multiple copies of the pre-rRNA genes is in the border region between these two structures."^^xsd:string + + SubClassOf: + obo:GO_0044452 + + +Class: obo:GO_0071808 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:sl"^^xsd:string, + oboInOwl:hasDbXref "PMID:20108326"^^xsd:string + obo:IAO_0000115 "An axoneme part that is found in the flagella of mammalian sperm and is located in the middle piece between the outer dense fibers (on the concave side of outer dense fibers as seen in cross-section)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071808"^^xsd:string, + rdfs:label "satellite fibril"^^xsd:string + + SubClassOf: + obo:GO_0044447 + + +Class: obo:GO_0001651 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0001651"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10754561"^^xsd:string + obo:IAO_0000115 "A structure found in the nucleolus, which contains newly synthesized preribosomal RNA (pre-rRNA) and a collection of proteins."^^xsd:string, + rdfs:label "dense fibrillar component"^^xsd:string + + SubClassOf: + obo:GO_0044452 + + +Class: obo:GO_0001652 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "granular component"^^xsd:string, + oboInOwl:id "GO:0001652"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10754561"^^xsd:string + obo:IAO_0000115 "A structure found in the nucleolus, which contains nearly completed preribosomal particles destined for the cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0044452 + + +Class: obo:GO_0008287 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "A complex, normally consisting of a catalytic and a regulatory subunit, which catalyzes the removal of a phosphate group from a serine or threonine residue of a protein."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008287"^^xsd:string, + rdfs:label "protein serine/threonine phosphatase complex"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0005683 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U7"^^xsd:string, + oboInOwl:id "GO:0005683"^^xsd:string, + rdfs:label "U7 snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12872004"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains the U7 snRNA and is required for the 3'-end processing of replication-dependent histone pre-mRNAs."^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0005684 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major (U2-type) spliceosomal complex"^^xsd:string, + rdfs:label "U2-type spliceosomal complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005684"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11343900"^^xsd:string + obo:IAO_0000115 "Any spliceosomal complex that forms during the splicing of a messenger RNA primary transcript to excise an intron that has canonical consensus sequences near the 5' and 3' ends."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "GT-AG spliceosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "major spliceosomal complex"^^xsd:string + + SubClassOf: + obo:GO_0005681 + + +Class: obo:GO_0048179 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0048179"^^xsd:string, + rdfs:label "activin receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8307945"^^xsd:string, + oboInOwl:hasDbXref "PMID:8622651"^^xsd:string + obo:IAO_0000115 "A protein complex that acts as an activin receptor. Heterodimeric activin receptors, comprising one Type I activin receptor and one Type II receptor polypeptide, and heterotrimeric receptors have been observed."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0005681 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Spliceosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "Any of a series of ribonucleoprotein complexes that contain RNA and small nuclear ribonucleoproteins (snRNPs), and are formed sequentially during the splicing of a messenger RNA primary transcript to excise an intron."^^xsd:string, + oboInOwl:id "GO:0005681"^^xsd:string, + oboInOwl:hasExactSynonym "spliceosome complex"^^xsd:string, + rdfs:label "spliceosomal complex"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044428 + + +Class: obo:GO_0005682 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U5"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U5."^^xsd:string, + oboInOwl:id "GO:0005682"^^xsd:string, + rdfs:label "U5 snRNP"^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0009418 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The long, slender, mid section of a pilus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "fimbrial shaft"^^xsd:string, + rdfs:label "pilus shaft"^^xsd:string, + oboInOwl:id "GO:0009418"^^xsd:string + + SubClassOf: + obo:GO_0044443 + + +Class: obo:GO_0005680 + + Annotations: + rdfs:label "anaphase-promoting complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:10465783"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611969"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex that degrades mitotic cyclins and anaphase inhibitory protein, thereby triggering sister chromatid separation and exit from mitosis. Substrate recognition by APC occurs through degradation signals, the most common of which is termed the Dbox degradation motif, originally discovered in cyclin B."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the synonym 'APC' should not be confused with the abbreviation for the adenomatous polyposis coli gene and protein."^^xsd:string, + oboInOwl:hasExactSynonym "anaphase promoting complex"^^xsd:string, + oboInOwl:id "GO:0005680"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Anaphase-promoting_complex"^^xsd:string, + oboInOwl:hasBroadSynonym "APC"^^xsd:string, + oboInOwl:hasExactSynonym "cyclosome"^^xsd:string + + SubClassOf: + obo:GO_0000152, + obo:GO_0031461 + + +Class: obo:GO_0009419 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "fimbrial tip"^^xsd:string, + rdfs:label "pilus tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The pointed extremity furthest from the cell of a pilus."^^xsd:string, + oboInOwl:id "GO:0009419"^^xsd:string + + SubClassOf: + obo:GO_0044443 + + +Class: obo:GO_0044421 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extracellular region part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the extracellular region, the space external to the outermost structure of a cell. For cells without external protective or external encapsulating structures this refers to space outside of the plasma membrane. This term covers constituent parts of the host cell environment outside an intracellular parasite."^^xsd:string, + oboInOwl:id "GO:0044421"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005576) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005576, + obo:GO_0005575 + + +Class: obo:GO_0044420 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extracellular matrix part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the extracellular matrix, the structure lying external to one or more cells, which provides structural support for cells or tissues; may be completely external to the cell (as in animals) or be part of the cell (as often seen in plants)."^^xsd:string, + oboInOwl:id "GO:0044420"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0031012) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031012, + obo:GO_0044421 + + +Class: obo:GO_0005689 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11574683"^^xsd:string, + oboInOwl:hasDbXref "PMID:11971955"^^xsd:string + obo:IAO_0000115 "Any spliceosomal complex that forms during the splicing of a messenger RNA primary transcript to excise an intron; the series of U12-type spliceosomal complexes is involved in the splicing of the majority of introns that contain atypical AT-AC terminal dinucleotides, as well as other non-canonical introns. The entire splice site signal, not just the terminal dinucleotides, is involved in determining which spliceosome utilizes the site."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005689"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "AT-AC spliceosomal complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Minor_spliceosome"^^xsd:string, + rdfs:label "U12-type spliceosomal complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "minor (U12-type) spliceosomal complex"^^xsd:string + + SubClassOf: + obo:GO_0005681 + + +Class: obo:GO_0044423 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a virion, a complete fully infectious extracellular virus particle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "virion part"^^xsd:string, + oboInOwl:id "GO:0044423"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0019012) + + SubClassOf: + obo:GO_0005575, + obo:BFO_0000050 some obo:GO_0019012 + + +Class: obo:GO_0044422 + + Annotations: + rdfs:label "organelle part"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044422"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0043226) + + SubClassOf: + obo:GO_0005575, + obo:BFO_0000050 some obo:GO_0043226 + + +Class: obo:GO_0005687 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005687"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U4"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U4."^^xsd:string, + rdfs:label "U4 snRNP"^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0000138 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The Golgi cisterna farthest from the endoplasmic reticulum; the final processing compartment through which proteins pass before exiting the Golgi apparatus; the compartment in which N-linked protein glycosylation is completed."^^xsd:string, + oboInOwl:id "GO:0000138"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "late Golgi"^^xsd:string, + rdfs:label "Golgi trans cisterna"^^xsd:string + + SubClassOf: + obo:GO_0031985 + + +Class: obo:GO_0000941 + + Annotations: + oboInOwl:id "GO:0000941"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "inner kinetochore of condensed nuclear chromosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:10619130"^^xsd:string, + oboInOwl:hasDbXref "PMID:1148398"^^xsd:string + obo:IAO_0000115 "The region of a condensed nuclear chromosome kinetochore closest to centromeric DNA; this layer may help define underlying centromeric chromatin structure and position of the kinetochore on the chromosome."^^xsd:string, + rdfs:label "condensed nuclear chromosome inner kinetochore"^^xsd:string + + EquivalentTo: + obo:GO_0000939 + and (obo:BFO_0000050 some obo:GO_0000778) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000778, + obo:GO_0000939, + obo:GO_0044454 + + +Class: obo:GO_0005688 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U6"^^xsd:string, + oboInOwl:id "GO:0005688"^^xsd:string, + rdfs:label "U6 snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U6."^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0000139 + + Annotations: + oboInOwl:id "GO:0000139"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the compartments of the Golgi apparatus."^^xsd:string, + rdfs:label "Golgi membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0012505, + obo:GO_0031090, + obo:GO_0044431 + + +Class: obo:GO_0000942 + + Annotations: + oboInOwl:id "GO:0000942"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "outer kinetochore of condensed nuclear chromosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:1148398"^^xsd:string + obo:IAO_0000115 "The region of a condensed nuclear chromosome kinetochore most external to centromeric DNA; this outer region mediates kinetochore-microtubule interactions."^^xsd:string, + rdfs:label "condensed nuclear chromosome outer kinetochore"^^xsd:string + + EquivalentTo: + obo:GO_0000940 + and (obo:BFO_0000050 some obo:GO_0000778) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000778, + obo:GO_0000940, + obo:GO_0044454 + + +Class: obo:GO_0005685 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005685"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U1"^^xsd:string, + rdfs:label "U1 snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U1."^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0000943 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "VLP"^^xsd:string, + oboInOwl:id "GO:0000943"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:10861903"^^xsd:string + obo:IAO_0000115 "A complex of the retrotransposon RNA genome, reverse transcriptase, integrase, and associated molecules required for reproduction and integration of the retrotransposon into the host genome; the main structural molecule of the nucleocapsid is often a gag protein homolog."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Virus-like_particle"^^xsd:string, + oboInOwl:hasExactSynonym "Virus-like particle"^^xsd:string, + rdfs:label "retrotransposon nucleocapsid"^^xsd:string + + SubClassOf: + obo:GO_0044428 + + +Class: obo:GO_0005686 + + Annotations: + oboInOwl:hasNarrowSynonym "17S U2 snRNP"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005686"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U2."^^xsd:string, + rdfs:label "U2 snRNP"^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0000145 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9700152"^^xsd:string + obo:IAO_0000115 "A protein complex peripherally associated with the plasma membrane that determines where vesicles dock and fuse. At least eight complex components are conserved between yeast and mammals."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Exocyst"^^xsd:string, + oboInOwl:hasExactSynonym "Sec6/8 complex"^^xsd:string, + oboInOwl:id "GO:0000145"^^xsd:string, + rdfs:label "exocyst"^^xsd:string + + SubClassOf: + obo:GO_0044448, + obo:GO_0043234 + + +Class: obo:GO_0000148 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + oboInOwl:hasExactSynonym "(1->3)-beta-glucan synthase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + oboInOwl:hasExactSynonym "1,3-beta-glucan synthase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.4.1.34"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the transfer of a glucose group from UDP-glucose to a (1->3)-beta-D-glucan chain."^^xsd:string, + rdfs:label "1,3-beta-D-glucan synthase complex"^^xsd:string, + oboInOwl:id "GO:0000148"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0000142 + + Annotations: + rdfs:label "cellular bud neck contractile ring"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "A contractile ring, i.e. a cytoskeletal structure composed of actin filaments and myosin, that forms beneath the plasma membrane at the mother-bud neck in mitotic cells that divide by budding in preparation for completing cytokinesis. An example of this structure is found in Saccharomyces cerevisiae."^^xsd:string, + oboInOwl:id "GO:0000142"^^xsd:string, + oboInOwl:hasExactSynonym "neck ring"^^xsd:string + + EquivalentTo: + obo:GO_0005826 + and (obo:BFO_0000050 some obo:GO_0005935) + + SubClassOf: + obo:GO_0005826, + obo:BFO_0000050 some obo:GO_0005935 + + +Class: obo:GO_0000144 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000144"^^xsd:string, + rdfs:label "cellular bud neck septin ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "A ring-shaped structure that forms at the site of cytokinesis; composed of members of the conserved family of filament forming proteins called septins as well as septin-associated proteins. In S. cerevisiae, this structure forms at the time of bud emergence and the septins show a high rate of exchange."^^xsd:string + + EquivalentTo: + obo:GO_0005940 + and (obo:BFO_0000050 some obo:GO_0005935) + + SubClassOf: + obo:GO_0032161, + obo:GO_0000399, + obo:GO_0005940 + + +Class: obo:GO_0035525 + + Annotations: + rdfs:comment "Note that the p50 subunit is encoded by NFKB1 gene in human and the p65 subunit is encoded by the RELA gene in human. Similar nomenclature is used in other vertebrate species. The p50 subunit has a precursor form p105 in some publications."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GO:add"^^xsd:string, + oboInOwl:hasDbXref "PMID:20393192"^^xsd:string, + oboInOwl:hasDbXref "PMID:9299584"^^xsd:string + obo:IAO_0000115 "A heterodimer of NF-kappa B p50 and p65 subunits."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9299584"^^xsd:string + oboInOwl:hasExactSynonym "NF-kappa p50/RelA complex"^^xsd:string, + rdfs:label "NF-kappaB p50/p65 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9299584"^^xsd:string + oboInOwl:hasRelatedSynonym "NF-kappa p105/p65 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035525"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9299584"^^xsd:string + oboInOwl:hasExactSynonym "NF-kappa B1/RelA complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9299584"^^xsd:string + oboInOwl:hasRelatedSynonym "NF-kappa p105/RelA complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9299584"^^xsd:string + oboInOwl:hasExactSynonym "NF-kappa B1/p65 complex"^^xsd:string + + SubClassOf: + obo:GO_0071159 + + +Class: obo:GO_0070381 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kad"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10679016"^^xsd:string, + oboInOwl:hasDbXref "PMID:12110576"^^xsd:string + obo:IAO_0000115 "A transport vesicle that mediates transport from the endosome to the plasma membrane, and fuses with the plasma membrane to release various cargo molecules, such as proteins or hormones, by exocytosis."^^xsd:string, + oboInOwl:id "GO:0070381"^^xsd:string, + rdfs:label "endosome to plasma membrane transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "endosome to plasma membrane constitutive secretory pathway transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "endosome-plasma membrane transport vesicle"^^xsd:string + + SubClassOf: + obo:GO_0070382 + + +Class: obo:GO_0070382 + + Annotations: + oboInOwl:hasExactSynonym "exocytic constitutive secretory pathway transport vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kad"^^xsd:string + oboInOwl:hasExactSynonym "exocytotic vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kad"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A transport vesicle that mediates transport from an intracellular compartment to the plasma membrane, and fuses with the plasma membrane to release various cargo molecules, such as proteins or hormones, by exocytosis."^^xsd:string, + rdfs:label "exocytic vesicle"^^xsd:string, + oboInOwl:id "GO:0070382"^^xsd:string + + SubClassOf: + obo:GO_0030133 + + +Class: obo:GO_0005692 + + Annotations: + rdfs:label "U11 snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U11"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "12S U11 snRNP"^^xsd:string, + oboInOwl:id "GO:0005692"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U11."^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0048189 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12488447"^^xsd:string + obo:IAO_0000115 "A protein complex that is thought to be involved in regulation of chromatin remodeling. In Schizosaccharomyces the complex contains Lid1p, Ash2p, Ecm5p, Snt2p, and Sdc1p."^^xsd:string, + rdfs:label "Lid2 complex"^^xsd:string, + oboInOwl:id "GO:0048189"^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0043769 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:15353591"^^xsd:string + obo:IAO_0000115 "A complex composed of four polypeptides, a telomere-protecting terminal protein (Tpg), a telomere-associated protein (Tap), DNA polymerase (PolA) and topoisomerase I (TopA), that functions in the replication of the telomeric regions of linear chromosomes, plasmids and circular replicons of some bacterial species."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Tpg-containing telomere binding complex"^^xsd:string, + oboInOwl:id "GO:0043769"^^xsd:string, + oboInOwl:hasBroadSynonym "telomere complex"^^xsd:string + + SubClassOf: + obo:GO_0000782 + + +Class: obo:GO_0005693 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U12"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005693"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U12."^^xsd:string, + rdfs:label "U12 snRNP"^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0005694 + + Annotations: + oboInOwl:hasNarrowSynonym "prophase chromosome"^^xsd:string, + oboInOwl:hasNarrowSynonym "interphase chromosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:id "GO:0005694"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "chromatid"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Chromosome"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "chromosome"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0043232 + + +Class: obo:GO_0071942 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "XPC complex"^^xsd:string, + oboInOwl:id "GO:0071942"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11279143"^^xsd:string, + oboInOwl:hasDbXref "PMID:15964821"^^xsd:string, + oboInOwl:hasDbXref "PMID:19941824"^^xsd:string + obo:IAO_0000115 "A nucleotide-excision repair complex that is involved in damage sensing during global genome nucleotide excision repair (GG-NER). It is part of the pre-incision (or initial recognition) complex bound to sites of DNA damage. In human, it is composed of XPC, RAD23B and CETN2."^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0070369 + + Annotations: + oboInOwl:id "GO:0070369"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9065401"^^xsd:string, + oboInOwl:hasDbXref "PMID:9065402"^^xsd:string + oboInOwl:hasExactSynonym "beta-catenin-TCF4 complex"^^xsd:string, + rdfs:label "beta-catenin-TCF7L2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:9065401"^^xsd:string, + oboInOwl:hasDbXref "PMID:9065402"^^xsd:string + obo:IAO_0000115 "A protein complex that contains beta-catenin and TCF7L2 (TCF4), binds to the TCF DNA motif within a promoter element, and is involved in the regulation of WNT target gene transcription."^^xsd:string + + SubClassOf: + obo:GO_0071664 + + +Class: obo:GO_0005690 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U4atac snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U4atac."^^xsd:string, + oboInOwl:id "GO:0005690"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U4atac"^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0030256 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "ABC translocator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9618447"^^xsd:string + obo:IAO_0000115 "A complex of three secretory proteins that carry out secretion in the type I secretion system: an inner membrane transport ATPase (termed ABC protein for ATP-binding cassette), which provides the energy for protein secretion; an outer membrane protein, which is exported via the sec pathway; and a membrane fusion protein, which is anchored in the inner membrane and spans the periplasmic space."^^xsd:string, + oboInOwl:id "GO:0030256"^^xsd:string, + rdfs:label "type I protein secretion system complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0005691 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "snRNP U6atac"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "U6atac snRNP"^^xsd:string, + oboInOwl:id "GO:0005691"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains small nuclear RNA U6atac."^^xsd:string + + SubClassOf: + obo:GO_0030532 + + +Class: obo:GO_0030257 + + Annotations: + oboInOwl:hasExactSynonym "TTSS complex"^^xsd:string, + rdfs:label "type III protein secretion system complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030257"^^xsd:string, + oboInOwl:hasExactSynonym "T3SS complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9618447"^^xsd:string + obo:IAO_0000115 "A complex of approximately 20 proteins, most of which are located in the cytoplasmic membrane that carries out protein secretion in the bacterial type III secretion system; type III secretion also requires a cytoplasmic, probably membrane-associated ATPase."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0048183 + + Annotations: + oboInOwl:hasNarrowSynonym "inhibin beta-B"^^xsd:string, + oboInOwl:hasNarrowSynonym "inhibin beta-A"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "http://www.mercksource.com"^^xsd:string, + oboInOwl:hasDbXref "http://www.stedmans.com/"^^xsd:string + obo:IAO_0000115 "A nonsteroidal regulator, composed of two covalently linked inhibin beta subunits (sometimes known as activin beta or activin/inhibin beta), inhibin beta-A and inhibin beta-B."^^xsd:string, + rdfs:comment "Note that the actions of the activin complex are the opposite of those of the inhibin complex, which is a dimer of an inhibin beta-A or inhibin beta-B subunit and a inhibin alpha subunit. See 'inhibin complex ; GO:0043511'."^^xsd:string, + rdfs:label "activin AB complex"^^xsd:string, + oboInOwl:id "GO:0048183"^^xsd:string + + SubClassOf: + obo:GO_0048180 + + +Class: obo:GO_0071943 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:cna"^^xsd:string, + oboInOwl:hasDbXref "PMID:16620027"^^xsd:string, + oboInOwl:hasDbXref "PMID:16620031"^^xsd:string, + oboInOwl:hasDbXref "PMID:20170194"^^xsd:string + obo:IAO_0000115 "A transcriptional factor complex that consists of a heterodimer of the bHLH-ZIP proteins Myc and Max."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Myc-Max complex"^^xsd:string, + oboInOwl:id "GO:0071943"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0071944 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The part of a cell encompassing the cell cortex, the plasma membrane, and any external encapsulating structures."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell periphery"^^xsd:string, + oboInOwl:id "GO:0071944"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0005697 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11884619"^^xsd:string + obo:IAO_0000115 "Telomerase is a ribonucleoprotein enzyme complex, with a minimal catalytic core composed of a catalytic reverse transcriptase subunit and an RNA subunit that provides the template for telomeric DNA addition. In vivo, the holoenzyme complex often contains additional subunits."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005697"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "telomerase holoenzyme complex"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044428 + + +Class: obo:GO_0048188 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Set1C/COMPASS complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "COMPASS complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Set1/COMPASS complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Set1C"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11687631"^^xsd:string, + oboInOwl:hasDbXref "PMID:11742990"^^xsd:string, + oboInOwl:hasDbXref "PMID:11805083"^^xsd:string, + oboInOwl:hasDbXref "PMID:12488447"^^xsd:string, + oboInOwl:hasDbXref "PMID:18508253"^^xsd:string, + oboInOwl:hasDbXref "PMID:18838538"^^xsd:string + obo:IAO_0000115 "A conserved protein complex that catalyzes methylation of histone H3. In Saccharomyces the complex contains Shg1p, Sdc1p, Swd1p, Swd2p, Swd3p, Spp1p, Bre2p, and the trithorax-related Set1p; in mammals it contains the catalytic subunit (SETD1A or SETD1B), WDR5, WDR82, RBBP5, ASH2L/ASH2, CXXC1/CFP1, HCFC1 and DPY30."^^xsd:string, + oboInOwl:id "GO:0048188"^^xsd:string + + SubClassOf: + obo:GO_0016585, + obo:GO_0035097 + + +Class: obo:GO_0000127 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcription factor TFIIIC complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:11433012"^^xsd:string, + oboInOwl:hasDbXref "PMID:16751097"^^xsd:string + obo:IAO_0000115 "A heterotrimeric transcription factor complex that is involved in regulating transcription from RNA polymerase III (Pol III) promoters. TFIIIC contains three conserved subunits that associate with the proximal Pol III promoter element, and additional subunits that associate with sequence elements downstream of the promoter and are more diverged among species. It also functions as a boundary element to partition genome content into distinct domains outside Pol III promoter regions."^^xsd:string, + oboInOwl:id "GO:0000127"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0000137 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The Golgi cisterna closest to the endoplasmic reticulum; the first processing compartment through which proteins pass after export from the ER."^^xsd:string, + rdfs:label "Golgi cis cisterna"^^xsd:string, + oboInOwl:id "GO:0000137"^^xsd:string + + SubClassOf: + obo:GO_0031985 + + +Class: obo:GO_0000136 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:10037752"^^xsd:string, + oboInOwl:hasDbXref "PMID:11095735"^^xsd:string + obo:IAO_0000115 "A large, multiprotein complex with alpha-(1->6)-mannosyltransferase activity, located in the cis Golgi membrane; adds mannan to N-linked glycans on proteins."^^xsd:string, + oboInOwl:id "GO:0000136"^^xsd:string, + rdfs:label "alpha-1,6-mannosyltransferase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000137, + obo:GO_0031501, + obo:GO_0044431 + + +Class: obo:GO_0000133 + + Annotations: + rdfs:label "polarisome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:14734532"^^xsd:string, + oboInOwl:hasDbXref "PMID:14998522"^^xsd:string, + oboInOwl:hasDbXref "PMID:9632790"^^xsd:string + obo:IAO_0000115 "Protein complex that plays a role in determining cell polarity by directing the localized assembly of actin filaments at polarization sites; in Saccharomyces the polarisome includes Bni1p, Spa2p, Pea2p, and Bud6p."^^xsd:string, + oboInOwl:id "GO:0000133"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030427, + obo:GO_0044448, + obo:GO_0043234 + + +Class: obo:GO_0000131 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "The portion of the budding yeast plasma membrane where a daughter cell will emerge. The yeast marks this spot with bud-site selection proteins before bud emergence occurs. Actin is polarized to this spot just prior to and during bud emergence."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000131"^^xsd:string, + rdfs:label "incipient cellular bud site"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0048180 + + Annotations: + rdfs:label "activin complex"^^xsd:string, + oboInOwl:id "GO:0048180"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the actions of the activin complex are the opposite of those of the inhibin complex, which is a dimer of an inhibin beta-A or inhibin beta-B subunit and a inhibin alpha subunit. See 'inhibin complex ; GO:0043511'."^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "http://www.mercksource.com"^^xsd:string, + oboInOwl:hasDbXref "http://www.stedmans.com/"^^xsd:string + obo:IAO_0000115 "A nonsteroidal regulator, composed of two covalently linked inhibin beta subunits, inhibin beta-A and inhibin beta-B (sometimes known as activin beta or activin/inhibin beta). There are three forms of activin complex, activin A, which is composed of 2 inhibin beta-A subunits, activin B, which is composed of 2 inhibin beta-B subunits, and activin AB, which is composed of an inhibin beta-A and an inhibin beta-B subunit."^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0035517 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035517"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20436459"^^xsd:string + obo:IAO_0000115 "A multimeric protein complex that removes monoubiquitin from histone H2A. In Drosophila and mammals, the core of the complex is composed of Calypso/BAP1 and Asx/ASXL1, respectively."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20436459"^^xsd:string + oboInOwl:hasExactSynonym "Polycomb repressive deubiquitinase complex"^^xsd:string, + rdfs:label "PR-DUB complex"^^xsd:string + + SubClassOf: + obo:GO_0031519 + + +Class: obo:GO_0000927 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000927"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string + obo:IAO_0000115 "A centrosomal complex usually comprising two gamma-tubulin molecules, at least two conserved non-tubulin proteins that multimerize along with additional non-tubulin proteins in animal cells into larger functional complexes. Gamma-tubulin small complexes are thought to be the repeating unit making up the core of the gamma-tubulin ring complex. An example of this structure is found in Mus musculus."^^xsd:string, + rdfs:label "gamma-tubulin small complex, centrosomal"^^xsd:string + + SubClassOf: + obo:GO_0008275 + + +Class: obo:GO_0000928 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string + obo:IAO_0000115 "A complex composed of two gamma-tubulin molecules and conserved non-tubulin proteins isolated by fractionation from cells. The complex, approximately 6S-9S, is analogous to the small complex in animal cells but contains fewer subunits, and is not thought to multimerize into larger functional units, like complexes in those organisms. An example of this structure is found in Saccharomyces cerevisiae."^^xsd:string, + oboInOwl:hasExactSynonym "Tub4 complex"^^xsd:string, + oboInOwl:id "GO:0000928"^^xsd:string, + rdfs:label "gamma-tubulin small complex, spindle pole body"^^xsd:string + + EquivalentTo: + obo:GO_0008275 + and (obo:BFO_0000050 some obo:GO_0005816) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005816, + obo:GO_0008275 + + +Class: obo:GO_0071953 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:20236620"^^xsd:string + obo:IAO_0000115 "An extracellular matrix part that consists of an insoluble core of polymerized tropoelastin monomers and a surrounding mantle of microfibrils. Elastic fibers provide elasticity and recoiling to tissues and organs, and maintain structural integrity against mechanical strain."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071953"^^xsd:string, + rdfs:label "elastic fiber"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string + oboInOwl:hasExactSynonym "elastin fiber"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "elastic fibre"^^xsd:string + + SubClassOf: + obo:GO_0044420 + + +Class: obo:GO_0005662 + + Annotations: + rdfs:label "DNA replication factor A complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "single-stranded DNA-binding protein complex"^^xsd:string, + oboInOwl:hasExactSynonym "replication protein A"^^xsd:string, + oboInOwl:hasRelatedSynonym "SSB"^^xsd:string, + oboInOwl:id "GO:0005662"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Replication_protein_A"^^xsd:string, + oboInOwl:hasExactSynonym "RPA"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9242902"^^xsd:string + obo:IAO_0000115 "A conserved heterotrimeric complex that binds nonspecifically to single-stranded DNA and is required for multiple processes in eukaryotic DNA metabolism, including DNA replication, DNA repair, and recombination. In all eukaryotic organisms examined the complex is composed of subunits of approximately 70, 30, and 14 kDa."^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0043601, + obo:GO_0043234 + + +Class: obo:GO_0005665 + + Annotations: + oboInOwl:id "GO:0005665"^^xsd:string, + oboInOwl:hasBroadSynonym "RNAP II complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "RNA polymerase II, one of three nuclear DNA-directed RNA polymerases found in all eukaryotes, is a multisubunit complex; typically it produces mRNAs, snoRNAs, and some of the snRNAs. Two large subunits comprise the most conserved portion including the catalytic site and share similarity with other eukaryotic and bacterial multisubunit RNA polymerases. The largest subunit of RNA polymerase II contains an essential carboxyl-terminal domain (CTD) composed of a variable number of heptapeptide repeats (YSPTSPS). The remainder of the complex is composed of smaller subunits (generally ten or more), some of which are also found in RNA polymerases I and III. Although the core is competent to mediate ribonucleic acid synthesis, it requires additional factors to select the appropriate template."^^xsd:string, + oboInOwl:hasBroadSynonym "RNA polymerase II complex"^^xsd:string, + rdfs:label "DNA-directed RNA polymerase II, core complex"^^xsd:string + + EquivalentTo: + obo:GO_0000428 + and (obo:BFO_0000050 some obo:GO_0016591) + + SubClassOf: + obo:GO_0044451, + obo:GO_0055029, + obo:BFO_0000050 some obo:GO_0016591 + + +Class: obo:GO_0071957 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "old SPB"^^xsd:string, + rdfs:label "old spindle pole body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:15132994"^^xsd:string + obo:IAO_0000115 "The spindle pole body that exists in a cell prior to spindle pole body duplication. An old spindle pole body segregates to the daughter cell upon mitosis, and lacks active proteins involved in signaling exit from mitosis."^^xsd:string, + oboInOwl:id "GO:0071957"^^xsd:string + + SubClassOf: + obo:GO_0005816 + + +Class: obo:GO_0005666 + + Annotations: + oboInOwl:id "GO:0005666"^^xsd:string, + rdfs:label "DNA-directed RNA polymerase III complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "DNA-directed RNA polymerase III activity"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "RNA polymerase III, one of three nuclear DNA-directed RNA polymerases found in all eukaryotes, is a multisubunit complex; typically it produces 5S rRNA, tRNAs and some of the small nuclear RNAs. Two large subunits comprise the most conserved portion including the catalytic site and share similarity with other eukaryotic and bacterial multisubunit RNA polymerases. The remainder of the complex is composed of smaller subunits (generally ten or more), some of which are also found in RNA polymerase I and others of which are also found in RNA polymerases I and II. Although the core is competent to mediate ribonucleic acid synthesis, it requires additional factors to select the appropriate template."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0055029 + + +Class: obo:GO_0044441 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a cilium, a specialized eukaryotic organelle that consists of a filiform extrusion of the cell surface. Each cilium is bounded by an extrusion of the cytoplasmic membrane, and contains a regular longitudinal array of microtubules, anchored basally in a centriole."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cilium part"^^xsd:string, + oboInOwl:id "GO:0044441"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005929) + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0005929, + obo:GO_0044446 + + +Class: obo:GO_0005663 + + Annotations: + oboInOwl:hasExactSynonym "RFC complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0005663"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "activator 1 complex"^^xsd:string, + rdfs:label "DNA replication factor C complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14614842"^^xsd:string, + oboInOwl:hasDbXref "PMID:14646196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16172520"^^xsd:string + obo:IAO_0000115 "A complex of five polypeptides in eukaryotes, and two in prokaryotes, that loads the DNA polymerase processivity factor proliferating cell nuclear antigen (PCNA) onto DNA, thereby permitting processive DNA synthesis catalyzed by DNA polymerase."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005657, + obo:GO_0043234 + + +Class: obo:GO_0005664 + + Annotations: + oboInOwl:hasExactSynonym "eukaryotic ORC"^^xsd:string, + oboInOwl:id "GO:0005664"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that is located at the replication origins of a chromosome in the nucleus."^^xsd:string, + rdfs:label "nuclear origin of replication recognition complex"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear ORC"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:GO_0000808 + + +Class: obo:GO_0044440 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "endosome component"^^xsd:string, + rdfs:label "endosomal part"^^xsd:string, + oboInOwl:id "GO:0044440"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19696797"^^xsd:string + obo:IAO_0000115 "Any constituent part of an endosome, a membrane-bounded organelle to which materials ingested by endocytosis are delivered."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005768) + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0005768, + obo:GO_0044444 + + +Class: obo:GO_0000922 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "spindle pole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "Either of the ends of a spindle, where spindle microtubules are organized; usually contains a microtubule organizing center and accessory molecules, spindle microtubules and astral microtubules."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030615"^^xsd:string, + oboInOwl:id "GO:0000922"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0005819 + + +Class: obo:GO_0048196 + + Annotations: + rdfs:label "middle lamella-containing extracellular matrix"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term does not have 'extracellular region ; GO:0005576' as a parent because in plants the extracellular matrix is considered part of the cell."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0048196"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:11351084"^^xsd:string, + oboInOwl:hasDbXref "PMID:4327466"^^xsd:string + obo:IAO_0000115 "The matrix external to the cell, composed of the cell wall and middle lamella."^^xsd:string + + SubClassOf: + obo:GO_0030312, + obo:GO_0031012 + + +Class: obo:GO_0005669 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005669"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471953393"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695501"^^xsd:string + obo:IAO_0000115 "A complex composed of TATA binding protein (TBP) and TBP associated factors (TAFs); the total mass is typically about 800 kDa. Most of the TAFs are conserved across species. In TATA-containing promoters for RNA polymerase II (Pol II), TFIID is believed to recognize at least two distinct elements, the TATA element and a downstream promoter element. TFIID is also involved in recognition of TATA-less Pol II promoters. Binding of TFIID to DNA is necessary but not sufficient for transcription initiation from most RNA polymerase II promoters."^^xsd:string, + rdfs:label "transcription factor TFIID complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0000923 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11792817"^^xsd:string + obo:IAO_0000115 "A microtubule organizing center formed by a band of gamma-tubulin that is recruited to a circumferential band of F-actin at the midpoint of a cell and which nucleates microtubules from the cell division site at the end of mitosis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "equatorial microtubule organising centre"^^xsd:string, + oboInOwl:id "GO:0000923"^^xsd:string, + oboInOwl:hasExactSynonym "EMTOC"^^xsd:string, + rdfs:label "equatorial microtubule organizing center"^^xsd:string + + EquivalentTo: + obo:GO_0005815 + and (obo:BFO_0000050 some obo:GO_0032153) + + SubClassOf: + obo:GO_0032155, + obo:GO_0005815 + + +Class: obo:GO_0044443 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Any constituent part of a pilus, a proteinaceous hair-like appendage on the surface of bacteria ranging from 2-8 nm in diameter."^^xsd:string, + oboInOwl:hasExactSynonym "pilus component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "pilus part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "fimbrium component"^^xsd:string, + oboInOwl:id "GO:0044443"^^xsd:string, + oboInOwl:hasExactSynonym "fimbrial part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0009289) + + SubClassOf: + obo:GO_0044463, + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0009289 + + +Class: obo:GO_0000924 + + Annotations: + oboInOwl:hasAlternativeId "GO:0000926"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000925"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string, + oboInOwl:hasDbXref "PMID:17021256"^^xsd:string + obo:IAO_0000115 "A centrosome-localized multiprotein complex composed of gamma-tubulin and other non-tubulin proteins assembled into a ring structure that is thought to be the unit of nucleation at the minus end of a microtubule. Gamma-tubulin small complexes are thought to be the core repeating units of the ring."^^xsd:string, + oboInOwl:id "GO:0000924"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-tubulin large complex, centrosomal"^^xsd:string, + rdfs:label "gamma-tubulin ring complex, centrosomal"^^xsd:string + + EquivalentTo: + obo:GO_0008274 + and (obo:BFO_0000050 some obo:GO_0000242) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000242, + obo:GO_0008274 + + +Class: obo:GO_0044442 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "microtubule-based flagellum part"^^xsd:string, + oboInOwl:hasBroadSynonym "flagellar part"^^xsd:string, + oboInOwl:id "GO:0044442"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Any constituent part of a microtubule-based flagellum, a long, whiplike protrusion from the surface of a eukaryotic cell, whose undulations drive the cell through a liquid medium; similar in structure to a cilium. The flagellum is based on a 9+2 arrangement of microtubules. Examples of this component are found in Mus musculus."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0009434) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009434, + obo:GO_0044460, + obo:GO_0044446 + + +Class: obo:GO_0071958 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "new SPB"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071958"^^xsd:string, + rdfs:label "new spindle pole body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:15132994"^^xsd:string + obo:IAO_0000115 "The spindle pole body that is formed by spindle pole body duplication, and to which proteins involved in mitotic exit signaling (for example, the septation initiation network in fission yeast) localize."^^xsd:string + + SubClassOf: + obo:GO_0005816 + + +Class: obo:GO_0044445 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cytosol component"^^xsd:string, + rdfs:label "cytosolic part"^^xsd:string, + oboInOwl:id "GO:0044445"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of cytosol, that part of the cytoplasm that does not contain membranous or particulate subcellular components."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005829) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005829, + obo:GO_0044444 + + +Class: obo:GO_0005667 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex, distinct from RNA polymerase, that associates with DNA at promoters or at cis-acting regulatory sequences, by direct binding or by interaction with other DNA-binding polypeptides or complexes, and regulates transcription."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005667"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "transcription factor complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0005668 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "selectivity factor SL1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:480"^^xsd:string, + oboInOwl:hasDbXref "PMID:15691654"^^xsd:string + oboInOwl:hasExactSynonym "TIF-IB"^^xsd:string, + oboInOwl:id "GO:0005668"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15691654"^^xsd:string + obo:IAO_0000115 "A RNA polymerase I-specific transcription factor complex that contains the TATA-box-binding protein (TBP) and at least three TBP-associated factors including proteins known in mammals as TAFI110, TAFI63 and TAFI48."^^xsd:string, + rdfs:label "RNA polymerase transcription factor SL1 complex"^^xsd:string + + SubClassOf: + obo:GO_0000120 + + +Class: obo:GO_0044444 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044444"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasm component"^^xsd:string, + rdfs:label "cytoplasmic part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0005737 + + +Class: obo:GO_0046727 + + Annotations: + oboInOwl:id "GO:0046727"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "capsomer"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Capsomere"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Any of the protein subunits that comprise the closed shell or coat (capsid) of certain viruses."^^xsd:string, + rdfs:label "capsomere"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0019028, + obo:GO_0044423 + + +Class: obo:GO_0000164 + + Annotations: + rdfs:label "protein phosphatase type 1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:ssd"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses magnesium-dependent protein serine/threonine phosphatase (AMD phosphatase) activity, and consists of a catalytic subunit and one or more regulatory subunits that dictates the phosphatase's substrate specificity, function, and activity."^^xsd:string, + oboInOwl:id "GO:0000164"^^xsd:string + + SubClassOf: + obo:GO_0008287, + obo:GO_0044444 + + +Class: obo:GO_0044435 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a plastid, a member of a family of organelles found in the cytoplasm of plants and some protists, which are membrane-bounded and contain DNA. Plant plastids develop from a common type, the proplastid."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044435"^^xsd:string, + rdfs:label "plastid part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0009536, + obo:GO_0044444 + + +Class: obo:GO_0044436 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "thylakoid part"^^xsd:string, + oboInOwl:id "GO:0044436"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a thylakoid, a sac-like vesicle that bears the photosynthetic pigments in photosynthetic organisms."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0009579) + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0009579 + + +Class: obo:GO_0046729 + + Annotations: + oboInOwl:id "GO:0046729"^^xsd:string, + rdfs:label "viral procapsid"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0072370319"^^xsd:string, + oboInOwl:hasDbXref "ISBN:1555811272"^^xsd:string + obo:IAO_0000115 "A stable empty viral capsid produced during the assembly of viruses."^^xsd:string + + SubClassOf: + obo:GO_0044423 + + +Class: obo:GO_0044437 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a vacuole, a closed structure, found only in eukaryotic cells, that is completely surrounded by unit membrane and contains liquid material."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044437"^^xsd:string, + oboInOwl:hasExactSynonym "vacuole component"^^xsd:string, + rdfs:label "vacuolar part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005773) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005773, + obo:GO_0044446, + obo:GO_0044444 + + +Class: obo:GO_0044438 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044438"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a microbody, a cytoplasmic organelle, spherical or oval in shape, that is bounded by a single membrane and contains oxidative enzymes, especially those utilizing hydrogen peroxide (H2O2)."^^xsd:string, + rdfs:label "microbody part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0042579) + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0042579, + obo:GO_0044444 + + +Class: obo:GO_0044439 + + Annotations: + oboInOwl:id "GO:0044439"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "peroxisomal part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a peroxisome, a small, membrane-bounded organelle that uses dioxygen (O2) to oxidize organic molecules; contains some enzymes that produce and others that degrade hydrogen peroxide (H2O2)."^^xsd:string, + oboInOwl:hasExactSynonym "peroxisome component"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005777) + + SubClassOf: + obo:GO_0044438, + obo:BFO_0000050 some obo:GO_0005777 + + +Class: obo:GO_0045211 + + Annotations: + rdfs:label "postsynaptic membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "post-synaptic membrane"^^xsd:string, + oboInOwl:id "GO:0045211"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A specialized area of membrane facing the presynaptic membrane on the tip of the nerve ending and separated from it by a minute cleft (the synaptic cleft). Neurotransmitters across the synaptic cleft and transmit the signal to the postsynaptic membrane."^^xsd:string + + SubClassOf: + obo:GO_0097060 + + +Class: obo:GO_0000938 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Vps fifty three tethering complex"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi associated retrograde protein complex"^^xsd:string, + rdfs:label "GARP complex"^^xsd:string, + oboInOwl:id "GO:0000938"^^xsd:string, + oboInOwl:hasExactSynonym "VFT tethering complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "GOC:rn"^^xsd:string, + oboInOwl:hasDbXref "PMID:10637310"^^xsd:string, + oboInOwl:hasDbXref "PMID:12077354"^^xsd:string, + oboInOwl:hasDbXref "PMID:12446664"^^xsd:string + obo:IAO_0000115 "A quatrefoil tethering complex required for retrograde traffic from the early endosome back to the late Golgi and biogenesis of cytoplasmic vesicles."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016023, + obo:GO_0044433, + obo:GO_0043234, + obo:GO_0044431 + + +Class: obo:GO_0070388 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14500733"^^xsd:string + obo:IAO_0000115 "A procollagen-proline 4-dioxygenase complex that contains alpha subunits of the type III isoform."^^xsd:string, + oboInOwl:id "GO:0070388"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "procollagen-proline 4-dioxygenase complex, alpha(III) type"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:474"^^xsd:string + oboInOwl:hasBroadSynonym "prolyl 4-hydroxylase complex (alpha(III)-type)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14500733"^^xsd:string + oboInOwl:hasExactSynonym "procollagen-proline, 2-oxoglutarate-4-dioxygenase complex, alpha(III) type"^^xsd:string + + SubClassOf: + obo:GO_0016222 + + +Class: obo:GO_0000939 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "inner kinetochore of condensed chromosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000939"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:10619130"^^xsd:string, + oboInOwl:hasDbXref "PMID:11483983"^^xsd:string + obo:IAO_0000115 "The region of a condensed chromosome kinetochore closest to centromeric DNA; in mammals the CREST antigens (CENP proteins) are found in this layer; this layer may help define underlying centromeric chromatin structure and position of the kinetochore on the chromosome."^^xsd:string, + oboInOwl:hasNarrowSynonym "inner kinetochore plate"^^xsd:string, + oboInOwl:hasRelatedSynonym "inner centromere core complex"^^xsd:string, + rdfs:label "condensed chromosome inner kinetochore"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000777, + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0070387 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14500733"^^xsd:string, + oboInOwl:hasDbXref "PMID:7753822"^^xsd:string + obo:IAO_0000115 "A procollagen-proline 4-dioxygenase complex that contains alpha subunits of the type II isoform; its activity is inhibited by poly(L-proline) only at high concentrations."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070387"^^xsd:string, + rdfs:label "procollagen-proline 4-dioxygenase complex, alpha(II) type"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7753822"^^xsd:string + oboInOwl:hasExactSynonym "procollagen-proline, 2-oxoglutarate-4-dioxygenase complex, alpha(II) type"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:473"^^xsd:string + oboInOwl:hasBroadSynonym "prolyl 4-hydroxylase complex (alpha(II)-type)"^^xsd:string + + SubClassOf: + obo:GO_0016222 + + +Class: obo:GO_0070386 + + Annotations: + rdfs:label "procollagen-proline 4-dioxygenase complex, alpha(I) type"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:472"^^xsd:string + oboInOwl:hasBroadSynonym "prolyl 4-hydroxylase complex (alpha(I)-type)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070386"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14500733"^^xsd:string, + oboInOwl:hasDbXref "PMID:7753822"^^xsd:string + obo:IAO_0000115 "A procollagen-proline 4-dioxygenase complex that contains alpha subunits of the type I isoform; its activity is readily inhibited by poly(L-proline)."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7753822"^^xsd:string + oboInOwl:hasExactSynonym "procollagen-proline, 2-oxoglutarate-4-dioxygenase complex, alpha(I) type"^^xsd:string + + SubClassOf: + obo:GO_0016222 + + +Class: obo:GO_0005671 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18838386"^^xsd:string + oboInOwl:hasExactSynonym "ATAC complex"^^xsd:string, + rdfs:label "Ada2/Gcn5/Ada3 transcription activator complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10637607"^^xsd:string + obo:IAO_0000115 "A multiprotein complex that possesses histone acetyltransferase and is involved in regulation of transcription. The budding yeast complex includes Gcn5p, two proteins of the Ada family, and two TBP-associate proteins (TAFs); analogous complexes in other species have analogous compositions, and usually contain homologs of the yeast proteins."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18838386"^^xsd:string + oboInOwl:hasExactSynonym "Ada Two-A containing complex"^^xsd:string, + oboInOwl:id "GO:0005671"^^xsd:string + + SubClassOf: + obo:GO_0000123 + + +Class: obo:GO_0070385 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070385"^^xsd:string, + rdfs:label "egasyn-beta-glucuronidase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7744842"^^xsd:string + obo:IAO_0000115 "A protein complex that contains beta-glucuronidase and the carboxyl esterase egasyn; formation of the complex causes beta-glucuronidase to be retained in the endoplasmic reticulum."^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0005672 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcription factor TFIIA complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:17560669"^^xsd:string + obo:IAO_0000115 "A component of the transcription machinery of RNA Polymerase II. In humans, TFIIA is a heterotrimer composed of an alpha (P35), beta (P19) and gamma subunits (P12)."^^xsd:string, + oboInOwl:id "GO:0005672"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0005673 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcription factor TFIIE complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:16547462"^^xsd:string + obo:IAO_0000115 "A transcription factor which in humans consists of a complex of two alpha and two beta chains. Recruits TFIIH to the initiation complex and helps activate both RNA polymerase II and TFIIH."^^xsd:string, + oboInOwl:id "GO:0005673"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0005674 + + Annotations: + oboInOwl:id "GO:0005674"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:7597077"^^xsd:string + obo:IAO_0000115 "A general transcription initiation factor which in humans consists of a heterodimer of an alpha and a beta subunit. Helps recruit RNA polymerase II to the initiation complex and promotes translation elongation."^^xsd:string, + rdfs:label "transcription factor TFIIF complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0044430 + + Annotations: + oboInOwl:hasExactSynonym "cytoskeleton component"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the cytoskeleton, a cellular scaffolding or skeleton that maintains cell shape, enables some cell motion (using structures such as flagella and cilia), and plays important roles in both intra-cellular transport (e.g. the movement of vesicles and organelles) and cellular division. Includes constituent parts of intermediate filaments, microfilaments, microtubules, and the microtrabecular lattice."^^xsd:string, + rdfs:label "cytoskeletal part"^^xsd:string, + oboInOwl:id "GO:0044430"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005856) + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0005856 + + +Class: obo:GO_0000932 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:P_body"^^xsd:string, + oboInOwl:id "GO:0000932"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "P-body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:12730603"^^xsd:string + obo:IAO_0000115 "A focus in the cytoplasm where mRNAs may become inactivated by decapping or some other mechanism. mRNA processing and binding proteins are localized to these foci."^^xsd:string, + oboInOwl:hasExactSynonym "P body"^^xsd:string, + oboInOwl:hasRelatedSynonym "cytoplasmic foci"^^xsd:string, + rdfs:label "cytoplasmic mRNA processing body"^^xsd:string + + SubClassOf: + obo:GO_0035770 + + +Class: obo:GO_0005675 + + Annotations: + oboInOwl:id "GO:0005675"^^xsd:string, + rdfs:label "holo TFIIH complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:14500720"^^xsd:string, + oboInOwl:hasDbXref "PMID:7813015"^^xsd:string + obo:IAO_0000115 "A complex that contains kinase activity directed towards the C-terminal Domain (CTD) of the largest subunit of RNA polymerase II and is essential for initiation at RNA polymerase II promoters in vitro. In S. cerevisiae, it is composed of the 5-subunit core (Rad3p, Tfb1p, Tfb2p, Ssl1p and Tfb4p), Ssl2p, and TFIIK (Kin28p, Ccl1p, and Tfb3p). All of the subunits have equivalents in humans: the 5 subunit core is composed of ERCC2, p62, p55, p44, p34; the equivalent of the TFIIK subcomplex is composed of MO15, Mat1, and a cyclin; the human equivalent of Ssl2p is XPB."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0000933 + + Annotations: + oboInOwl:id "GO:0000933"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471940526"^^xsd:string + obo:IAO_0000115 "A cell septum whose formation is independent of nuclear division."^^xsd:string, + rdfs:label "adventitious septum"^^xsd:string + + SubClassOf: + obo:GO_0030428 + + +Class: obo:GO_0000930 + + Annotations: + oboInOwl:id "GO:0000930"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "gamma-tubulin complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string + obo:IAO_0000115 "A multiprotein complex composed of gamma-tubulin and other non-tubulin proteins. Gamma-tubulin complexes are localized to microtubule organizing centers, and play an important role in the nucleation of microtubules. The number and complexity of non-tubulin proteins associated with these complexes varies between species."^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:GO_0043234 + + +Class: obo:GO_0005677 + + Annotations: + oboInOwl:id "GO:0005677"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any protein complex that mediates changes in chromatin structure that result in transcriptional silencing."^^xsd:string, + rdfs:label "chromatin silencing complex"^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0000931 + + Annotations: + oboInOwl:id "GO:0000931"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "gamma-tubulin large complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000929"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134075"^^xsd:string + obo:IAO_0000115 "A complex of gamma tubulin and associated proteins thought to be formed by multimerization of gamma-tubulin small complexes. An example of this structure is found in Schizosaccharomyces pombe."^^xsd:string + + SubClassOf: + obo:GO_0000930 + + +Class: obo:GO_0005678 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any protein complex that acts in the formation of nucleosomes or higher order chromatin structure."^^xsd:string, + oboInOwl:id "GO:0005678"^^xsd:string, + oboInOwl:hasNarrowSynonym "nucleosome assembly complex"^^xsd:string, + rdfs:label "chromatin assembly complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0000936 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471940526"^^xsd:string + obo:IAO_0000115 "A cell septum that forms following nuclear division."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000936"^^xsd:string, + rdfs:label "primary cell septum"^^xsd:string, + oboInOwl:hasBroadSynonym "primary septum"^^xsd:string + + SubClassOf: + obo:GO_0030428 + + +Class: obo:GO_0044434 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a chloroplast, a chlorophyll-containing plastid with thylakoids organized into grana and frets, or stroma thylakoids, and embedded in a stroma."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast part"^^xsd:string, + oboInOwl:id "GO:0044434"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009507 + + +Class: obo:GO_0000937 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "A septum, or cross-wall, between two portions of a cell or hypha; contains a central pore around which the septum is swollen to form a barrel-shaped structure; pore is covered on each side of the septum by a septal pore cap (parenthosome)."^^xsd:string, + rdfs:label "dolipore septum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000937"^^xsd:string + + SubClassOf: + obo:GO_0000934 + + +Class: obo:GO_0044433 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of cytoplasmic vesicle, a vesicle formed of membrane or protein, found in the cytoplasm of a cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoplasmic vesicle part"^^xsd:string, + oboInOwl:id "GO:0044433"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0031410) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031410, + obo:GO_0044446, + obo:GO_0044444 + + +Class: obo:GO_0014069 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1196688972"^^xsd:string, + oboInOwl:hasExactSynonym "post-synaptic density"^^xsd:string, + oboInOwl:hasExactSynonym "post synaptic density"^^xsd:string, + oboInOwl:id "GO:0014069"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Postsynaptic_density"^^xsd:string, + rdfs:label "postsynaptic density"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string, + oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:sjp"^^xsd:string, + oboInOwl:hasDbXref "PMID:14532281"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Postsynaptic_density"^^xsd:string, + oboInOwl:hasDbXref "http://molneuro.kaist.ac.kr/psd"^^xsd:string + obo:IAO_0000115 "The post synaptic density is a region that lies adjacent to the cytoplasmic face of the postsynaptic membrane at excitatory synapse. It forms a disc that consists of a range of proteins with different functions, some of which contact the cytoplasmic domains of ion channels in the postsynaptic membrane. The proteins making up the disc include receptors, and structural proteins linked to the actin cytoskeleton. They also include signalling machinery, such as protein kinases and phosphatases."^^xsd:string + + SubClassOf: + obo:GO_0044456, + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0044327 + + +Class: obo:GO_0044432 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "endoplasmic reticulum part"^^xsd:string, + oboInOwl:id "GO:0044432"^^xsd:string, + oboInOwl:hasExactSynonym "ER component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the endoplasmic reticulum, the irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0005783, + obo:GO_0044444 + + +Class: obo:GO_0000934 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "porous septum"^^xsd:string, + oboInOwl:id "GO:0000934"^^xsd:string, + rdfs:label "porous cell septum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "A septum or cross wall which does not entirely span the space between two portions of cell wall and may contain a specialized central pore structure. A porous septum allows the movement of organelles and/or cytoplasm between compartments."^^xsd:string + + SubClassOf: + obo:GO_0030428 + + +Class: obo:GO_0044431 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the Golgi apparatus, a compound membranous cytoplasmic organelle of eukaryotic cells, consisting of flattened, ribosome-free vesicles arranged in a more or less regular stack."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044431"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi component"^^xsd:string, + rdfs:label "Golgi apparatus part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005794) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005794, + obo:GO_0044446, + obo:GO_0044444 + + +Class: obo:GO_0000935 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "barrier septum"^^xsd:string, + oboInOwl:hasExactSynonym "complete septum"^^xsd:string, + oboInOwl:id "GO:0000935"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string + obo:IAO_0000115 "A septum which spans a cell and does not allow exchange of organelles or cytoplasm between compartments."^^xsd:string + + SubClassOf: + obo:GO_0030428 + + +Class: obo:GO_0044426 + + Annotations: + oboInOwl:id "GO:0044426"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell wall part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the cell wall, the rigid or semi-rigid envelope lying outside the cell membrane of plant, fungal, and most prokaryotic cells, maintaining their shape and protecting them from osmotic lysis."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005618) + + SubClassOf: + obo:GO_0044462, + obo:BFO_0000050 some obo:GO_0005618 + + +Class: obo:GO_0044427 + + Annotations: + oboInOwl:id "GO:0044427"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chromosome component"^^xsd:string, + rdfs:label "chromosomal part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information."^^xsd:string, + oboInOwl:hasExactSynonym "chromosome part"^^xsd:string, + oboInOwl:hasExactSynonym "chromosomal component"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005694) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005694, + obo:GO_0044446 + + +Class: obo:GO_0000153 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex found in the cytoplasm."^^xsd:string, + rdfs:label "cytoplasmic ubiquitin ligase complex"^^xsd:string, + oboInOwl:id "GO:0000153"^^xsd:string + + EquivalentTo: + obo:GO_0000151 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000151, + obo:GO_0044444 + + +Class: obo:GO_0044424 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0044424"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intracellular part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005622) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005622, + obo:GO_0044464 + + +Class: obo:GO_0044425 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0044425"^^xsd:string, + rdfs:label "membrane part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0016020) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016020, + obo:GO_0044464 + + +Class: obo:GO_0000152 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear ubiquitin ligase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex found in the nucleus."^^xsd:string, + oboInOwl:id "GO:0000152"^^xsd:string + + EquivalentTo: + obo:GO_0000151 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:GO_0000151 + + +Class: obo:GO_0000159 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein phosphatase type 2A complex"^^xsd:string, + oboInOwl:id "GO:0000159"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "PMID:17245430"^^xsd:string + obo:IAO_0000115 "A protein complex that has protein serine/threonine phosphatase activity that is polycation-stimulated (PCS), being directly stimulated by protamine, polylysine, or histone H1; it constitutes a subclass of several enzymes activated by different histones and polylysine, and consists of catalytic, scaffolding, and regulatory subunits. The catalytic and scaffolding subunits form the core enzyme, and the holoenzyme also includes the regulatory subunit."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0008287 + + +Class: obo:GO_0000940 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "outer kinetochore of condensed chromosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "outer kinetochore plate"^^xsd:string, + rdfs:label "condensed chromosome outer kinetochore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "PMID:11483983"^^xsd:string + obo:IAO_0000115 "The region of a condensed chromosome kinetochore most external to centromeric DNA; this outer region mediates kinetochore-microtubule interactions."^^xsd:string, + oboInOwl:id "GO:0000940"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000777, + obo:GO_0044427, + obo:GO_0043234 + + +Class: obo:GO_0044428 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "nucleus component"^^xsd:string, + oboInOwl:id "GO:0044428"^^xsd:string, + rdfs:label "nuclear part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the nucleus, a membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005634, + obo:GO_0044446 + + +Class: obo:GO_0044429 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a mitochondrion, a semiautonomous, self replicating organelle that occurs in varying numbers, shapes, and sizes in the cytoplasm of virtually all eukaryotic cells. It is notably the site of tissue respiration."^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrion component"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044429"^^xsd:string, + rdfs:label "mitochondrial part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005739, + obo:GO_0044446, + obo:GO_0044444 + + +Class: obo:GO_0000151 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:9529603"^^xsd:string + obo:IAO_0000115 "A protein complex that includes a ubiquitin-protein ligase and other proteins that may confer substrate specificity on the complex."^^xsd:string, + oboInOwl:id "GO:0000151"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "ubiquitin ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0030288 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Periplasmic_space"^^xsd:string, + oboInOwl:id "GO:0030288"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The region between the inner (cytoplasmic or plasma) membrane and outer membrane of organisms with two membranes such as Gram negative bacteria. These periplasmic spaces are relatively thick and contain a thin cell wall."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "outer membrane bounded periplasmic space"^^xsd:string, + oboInOwl:hasExactSynonym "outer membrane-enclosed periplasmic space"^^xsd:string, + rdfs:label "outer membrane-bounded periplasmic space"^^xsd:string + + SubClassOf: + obo:GO_0044462, + obo:BFO_0000050 some obo:GO_0030313, + obo:GO_0042597 + + +Class: obo:GO_0070390 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dgf"^^xsd:string + oboInOwl:hasExactSynonym "TREX-2 complex"^^xsd:string, + rdfs:label "transcription export complex 2"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgf"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17786152"^^xsd:string + obo:IAO_0000115 "A protein complex that couples SAGA-dependent gene expression to mRNA export at the inner side of the nuclear pore complex (NPC). The TREX-2 complex is tethered to the inner side of the NPC via the nucleoporins Nup1 and Nup60; in S. cerevisiae it contains Sac3p, Thp1p, Sus1p and Cdc31p."^^xsd:string, + oboInOwl:id "GO:0070390"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17786152"^^xsd:string + oboInOwl:hasExactSynonym "Sac3-Thp1-Sus1-Cdc31 complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0045203 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the external outer membrane of the cell. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "integral to external membrane"^^xsd:string, + oboInOwl:hasRelatedSynonym "integral to outer membrane"^^xsd:string, + rdfs:label "integral to cell outer membrane"^^xsd:string, + oboInOwl:id "GO:0045203"^^xsd:string + + SubClassOf: + obo:GO_0016021, + obo:GO_0031230 + + +Class: obo:GO_0030287 + + Annotations: + oboInOwl:id "GO:0030287"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "cell wall-enclosed periplasmic space"^^xsd:string, + rdfs:label "cell wall-bounded periplasmic space"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cell wall bounded periplasmic space"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The region between the plasma membrane and the cell wall, as found in organisms such as yeast and Gram positive bacteria. The region is thinner than the equivalent in Gram negative bacteria."^^xsd:string + + SubClassOf: + obo:GO_0042597 + + +Class: obo:GO_0030286 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030286"^^xsd:string, + rdfs:label "dynein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Any of several large complexes that contain two or three dynein heavy chains and several light chains, and have microtubule motor activity."^^xsd:string + + SubClassOf: + obo:GO_0005875 + + +Class: obo:GO_0045202 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao914572699"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The junction between a nerve fiber of one neuron and another neuron or muscle fiber or glial cell; the site of interneuronal communication. As the nerve fiber approaches the synapse it enlarges into a specialized structure, the presynaptic nerve ending, which contains mitochondria and synaptic vesicles. At the tip of the nerve ending is the presynaptic membrane; facing it, and separated from it by a minute cleft (the synaptic cleft) is a specialized area of membrane on the receiving cell, known as the postsynaptic membrane. In response to the arrival of nerve impulses, the presynaptic nerve ending secretes molecules of neurotransmitters into the synaptic cleft. These diffuse across the cleft and transmit the signal to the postsynaptic membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "synapse"^^xsd:string, + oboInOwl:hasExactSynonym "synaptic junction"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Chemical_synapse"^^xsd:string, + oboInOwl:id "GO:0045202"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0030285 + + Annotations: + oboInOwl:id "GO:0030285"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a synaptic vesicle membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to synaptic vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0044456, + obo:BFO_0000050 some obo:GO_0030672, + obo:GO_0031301, + obo:GO_0044433 + + +Class: obo:GO_0070331 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070331"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7545683"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell-surface protein CD20 and the Src family tyrosine kinases Lck and Fyn."^^xsd:string, + rdfs:label "CD20-Lck-Fyn complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0070332 + + Annotations: + oboInOwl:id "GO:0070332"^^xsd:string, + rdfs:label "CD20-Lck-Lyn-Fyn complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7545683"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the cell-surface protein CD20 and the Src family tyrosine kinases Lck, Lyn and Fyn."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0070333 + + Annotations: + rdfs:label "alpha6-beta4 integrin-Shc-Grb2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:3096"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB4-SHC-GRB2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070333"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7556090"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta4 integrin complex bound to the adaptor proteins Shc and Grb2."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070334 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:2322"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGA6-ITGB4-LAMA5 complex"^^xsd:string, + rdfs:label "alpha6-beta4 integrin-laminin 5 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7556090"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alpha6-beta4 integrin complex bound to laminin 5."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070334"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0035577 + + Annotations: + rdfs:label "azurophil granule membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035577"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:17152095"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an azurophil granule, a primary lysosomal granule found in neutrophil granulocytes that contains a wide range of hydrolytic enzymes and is released into the extracellular fluid."^^xsd:string, + oboInOwl:hasExactSynonym "primary granule membrane"^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:GO_0030667, + obo:BFO_0000050 some obo:GO_0042582 + + +Class: obo:GO_0035578 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "azurophil granule lumen"^^xsd:string, + oboInOwl:id "GO:0035578"^^xsd:string, + oboInOwl:hasExactSynonym "primary granule lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:17152095"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of an azurophil granule, a primary lysosomal granule found in neutrophil granulocytes that contains a wide range of hydrolytic enzymes and is released into the extracellular fluid."^^xsd:string + + SubClassOf: + obo:GO_0005775, + obo:GO_0034774, + obo:BFO_0000050 some obo:GO_0042582 + + +Class: obo:GO_0035579 + + Annotations: + oboInOwl:hasExactSynonym "secondary granule membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035579"^^xsd:string, + rdfs:label "specific granule membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:7334549"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a specific granule, a granule with a membranous, tubular internal structure, found primarily in mature neutrophil cells. Most are released into the extracellular fluid. Specific granules contain lactoferrin, lysozyme, vitamin B12 binding protein and elastase."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042581, + obo:GO_0030667 + + +Class: obo:GO_0032473 + + Annotations: + oboInOwl:hasRelatedSynonym "external side of mitochondrial envelope"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The external (cytoplasmic face) of the mitochondrial outer membrane."^^xsd:string, + oboInOwl:id "GO:0032473"^^xsd:string, + rdfs:label "external side of mitochondrial outer membrane"^^xsd:string, + oboInOwl:hasExactSynonym "cytosolic side of mitochondrial outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0044455 + + +Class: obo:GO_0044189 + + Annotations: + oboInOwl:hasExactSynonym "host cell microsomal membrane "^^xsd:string, + rdfs:label "host cell microsome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any of the small, heterogeneous, artifactual, vesicular particles, 50-150 nm in diameter, that are formed when some eukaryotic host cells are homogenized and that sediment on centrifugation at 100000 g."^^xsd:string, + oboInOwl:id "GO:0044189"^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0044188 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the host cell lysosome and separating its contents from the host cell cytoplasm."^^xsd:string, + rdfs:label "host cell lysosomal membrane"^^xsd:string, + oboInOwl:id "GO:0044188"^^xsd:string + + SubClassOf: + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0044187 + + +Class: obo:GO_0032476 + + Annotations: + oboInOwl:id "GO:0032476"^^xsd:string, + rdfs:label "decaprenyl diphosphate synthase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14519123"^^xsd:string + obo:IAO_0000115 "A complex that possesses di-trans,poly-cis-decaprenylcistransferase activity; involved in ubiquinone biosynthesis."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0044187 + + Annotations: + rdfs:label "host cell lysosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044187"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A small lytic vacuole that has cell cycle-independent morphology and is found in most host animal cells and that contains a variety of hydrolases, most of which have their maximal activities in the pH range 5-6. The contained enzymes display latency if properly isolated. About 40 different lysosomal hydrolases are known and host cell lysosomes have a great variety of morphologies and functions."^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0032477 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14519123"^^xsd:string + obo:IAO_0000115 "A homodimeric complex that possesses di-trans,poly-cis-decaprenylcistransferase activity; involved in ubiquinone biosynthesis."^^xsd:string, + oboInOwl:id "GO:0032477"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "homodimeric decaprenyl diphosphate synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0032476, + obo:GO_0044444 + + +Class: obo:GO_0009840 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplastic endopeptidase Clp complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A Clp endopeptidase complex located in the chloroplast."^^xsd:string, + oboInOwl:id "GO:0009840"^^xsd:string + + EquivalentTo: + obo:GO_0009368 + and (obo:BFO_0000050 some obo:GO_0009570) + + SubClassOf: + obo:GO_0009368, + obo:BFO_0000050 some obo:GO_0009570, + obo:GO_0044434 + + +Class: obo:GO_0044186 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any particle of coalesced lipids in the cytoplasm of a host cell. May include associated proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell lipid particle"^^xsd:string, + oboInOwl:id "GO:0044186"^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0009841 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial endopeptidase Clp complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A Clp endopeptidase complex located in the mitochondrion."^^xsd:string, + oboInOwl:id "GO:0009841"^^xsd:string + + EquivalentTo: + obo:GO_0009368 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0009368, + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0044185 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a host cell late endosome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044185"^^xsd:string, + rdfs:label "host cell late endosome membrane"^^xsd:string + + SubClassOf: + obo:GO_0044175, + obo:BFO_0000050 some obo:GO_0044184 + + +Class: obo:GO_0009842 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:1402001894"^^xsd:string + oboInOwl:hasExactSynonym "muroplast"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:052131687"^^xsd:string, + oboInOwl:hasDbXref "ISBN:1402001894"^^xsd:string + obo:IAO_0000115 "A plastid that contains unstacked, phycobilisome-bearing thylakoid membranes and is surrounded by a double membrane with a peptidoglycan layer in the intermembrane space between the two envelope membranes. Cyanelles are characteristic of algae in the class Glaucophyta, and may represent an ancestral form of plastid."^^xsd:string, + rdfs:label "cyanelle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:1402001894"^^xsd:string + oboInOwl:hasExactSynonym "cyanoplast"^^xsd:string, + oboInOwl:id "GO:0009842"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0044184 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044184"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A prelysosomal endocytic organelle differentiated from host early endosomes by lower lumenal pH and different protein composition. Host late endosomes are more spherical than early endosomes and are mostly juxtanuclear, being concentrated near the microtubule organizing center."^^xsd:string, + rdfs:label "host cell late endosome"^^xsd:string + + SubClassOf: + obo:GO_0044174 + + +Class: obo:GO_0009843 + + Annotations: + oboInOwl:id "GO:0009843"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyanelle thylakoid"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:lr"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A thylakoid found in a cyanelle, which is a type of plastid found in certain algae. The cyanelle contains a photosynthetic membrane resembling that of cyanobacteria."^^xsd:string + + EquivalentTo: + obo:GO_0009579 + and (obo:BFO_0000050 some obo:GO_0009842) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009842, + obo:GO_0031976 + + +Class: obo:GO_0032478 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14519123"^^xsd:string + obo:IAO_0000115 "A heterotetrameric complex located in the mitochondrial inner membrane that possesses di-trans,poly-cis-decaprenylcistransferase activity; involved in ubiquinone biosynthesis. In S. pombe it is a heterotetramer of Dlp1 and Dps1."^^xsd:string, + rdfs:label "heterotetrameric decaprenyl diphosphate synthase complex"^^xsd:string, + oboInOwl:id "GO:0032478"^^xsd:string + + SubClassOf: + obo:GO_0032476, + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0071986 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Ragulator complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "MAPKSP1/ROBLD3/C11orf59 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19177150"^^xsd:string, + oboInOwl:hasDbXref "PMID:20381137"^^xsd:string + obo:IAO_0000115 "A protein complex that contains MAPKSP1 (MP1, Map2k1ip1), ROBLD3 (p14, Mapbpip), and C11orf59 (p18). The complex is anchored to lipid rafts in late endosome membranes via C11orf59, recruits mTORC1 to lysosomal membranes in amino acid signaling to mTORC1, and is also involved in ERK/MAPK signaling."^^xsd:string, + oboInOwl:id "GO:0071986"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0031902, + obo:BFO_0000050 some obo:GO_0045121, + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0000172 + + Annotations: + rdfs:label "ribonuclease MRP complex"^^xsd:string, + oboInOwl:id "GO:0000172"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sgd_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:10690410"^^xsd:string, + oboInOwl:hasDbXref "PMID:14729943"^^xsd:string, + oboInOwl:hasDbXref "PMID:7510714"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains an RNA molecule of the snoRNA family, and cleaves the rRNA precursor as part of rRNA transcript processing. It also has other roles: In S. cerevisiae it is involved in cell cycle-regulated degradation of daughter cell-specific mRNAs, while in mammalian cells it also enters the mitochondria and processes RNAs to create RNA primers for DNA replication."^^xsd:string, + oboInOwl:hasExactSynonym "RNase MRP complex"^^xsd:string, + oboInOwl:hasExactSynonym "ribonuclease mitochondrial RNA processing complex"^^xsd:string + + SubClassOf: + obo:GO_0005732 + + +Class: obo:GO_0044178 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell Golgi membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the compartments of the host cell Golgi apparatus."^^xsd:string, + oboInOwl:id "GO:0044178"^^xsd:string, + oboInOwl:hasExactSynonym "host Golgi membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033645, + obo:BFO_0000050 some obo:GO_0044177, + obo:GO_0033644 + + +Class: obo:GO_0044175 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "host endosome membrane"^^xsd:string, + oboInOwl:id "GO:0044175"^^xsd:string, + rdfs:label "host cell endosome membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a host cell endosome."^^xsd:string + + SubClassOf: + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0044174 + + +Class: obo:GO_0044174 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "host endosome"^^xsd:string, + oboInOwl:id "GO:0044174"^^xsd:string, + rdfs:label "host cell endosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle that carries materials newly ingested by endocytosis. It passes many of the materials to host cell lysosomes for degradation."^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0044177 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A compound membranous cytoplasmic organelle of eukaryotic host cells, consisting of flattened, ribosome-free vesicles arranged in a more or less regular stack."^^xsd:string, + oboInOwl:id "GO:0044177"^^xsd:string, + oboInOwl:hasExactSynonym "host Golgi apparatus"^^xsd:string, + rdfs:label "host cell Golgi apparatus"^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0044176 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044176"^^xsd:string, + oboInOwl:hasExactSynonym "host filopodium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Thin, stiff protrusion extended by the leading edge of a motile host cell such as a crawling fibroblast or amoeba, or an axonal growth cone; usually approximately 0.1 um wide, 5-10 um long, can be up to 50 um long in axon growth cones; contains a loose bundle of about 20 actin filaments oriented with their plus ends pointing outward."^^xsd:string, + rdfs:label "host cell filopodium"^^xsd:string + + SubClassOf: + obo:GO_0044157 + + +Class: obo:GO_0044171 + + Annotations: + oboInOwl:hasExactSynonym "host smooth endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the host cell smooth endoplasmic reticulum."^^xsd:string, + oboInOwl:id "GO:0044171"^^xsd:string, + rdfs:label "host cell smooth endoplasmic reticulum membrane"^^xsd:string + + SubClassOf: + obo:GO_0044167, + obo:BFO_0000050 some obo:GO_0044170 + + +Class: obo:GO_0044170 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044170"^^xsd:string, + rdfs:label "host cell smooth endoplasmic reticulum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The irregular network of unit membranes, visible only by electron microscopy, that occurs in the host cell cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The host smooth ER has no ribosomes adhering to the outer surface."^^xsd:string, + oboInOwl:hasExactSynonym "host smooth endoplasmic reticulum"^^xsd:string + + SubClassOf: + obo:GO_0044165 + + +Class: obo:GO_0044173 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding any of the compartments of the host cell ER-Golgi intermediate compartment system."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "host ER-Golgi intermediate compartment membrane"^^xsd:string, + oboInOwl:id "GO:0044173"^^xsd:string, + oboInOwl:hasExactSynonym "host cell ER-Golgi intermediate compartment membrane"^^xsd:string, + oboInOwl:hasExactSynonym "host endoplasmic reticulum-Golgi intermediate compartment membrane"^^xsd:string, + rdfs:label "host cell endoplasmic reticulum-Golgi intermediate compartment membrane"^^xsd:string + + SubClassOf: + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0044172 + + +Class: obo:GO_0000178 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "exosome (ribonucleasease complex)"^^xsd:string, + rdfs:label "exosome (RNase complex)"^^xsd:string, + rdfs:comment "Note that this term should not be confused with 'exosome' used in the context of vesicles released from multivesicular bodies."^^xsd:string, + oboInOwl:id "GO:0000178"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10465791"^^xsd:string + obo:IAO_0000115 "Complex of 3'-5' exoribonucleases."^^xsd:string, + oboInOwl:hasExactSynonym "exosome multienzyme ribonuclease complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0044172 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:pr"^^xsd:string + obo:IAO_0000115 "A complex system of membrane-bounded compartments located between host cell endoplasmic reticulum (ER) and the host Golgi complex, with a distinctive membrane protein composition; involved in ER-to-Golgi transport."^^xsd:string, + rdfs:label "host cell endoplasmic reticulum-Golgi intermediate compartment"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "host ER-Golgi intermediate compartment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044172"^^xsd:string, + oboInOwl:hasExactSynonym "host cell ER-Golgi intermediate compartment"^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0000176 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear exosome (ribonuclease complex)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10465791"^^xsd:string + obo:IAO_0000115 "Complex of 3'-5' exoribonucleases found in the nucleus."^^xsd:string, + rdfs:label "nuclear exosome (RNase complex)"^^xsd:string, + oboInOwl:hasExactSynonym "eukaryotic exosome multienzyme ribonuclease complex"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear exosome multienzyme ribonuclease complex"^^xsd:string, + oboInOwl:id "GO:0000176"^^xsd:string + + EquivalentTo: + obo:GO_0000178 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031981, + obo:GO_0000178 + + +Class: obo:GO_0000177 + + Annotations: + oboInOwl:hasExactSynonym "prokaryotic exosome multienzyme ribonuclease complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic exosome (ribonuclease complex)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10465791"^^xsd:string + obo:IAO_0000115 "Complex of 3'-5' exoribonucleases found in the cytoplasm."^^xsd:string, + oboInOwl:id "GO:0000177"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic exosome multienzyme ribonuclease complex"^^xsd:string, + rdfs:label "cytoplasmic exosome (RNase complex)"^^xsd:string + + EquivalentTo: + obo:GO_0000178 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000178, + obo:GO_0044444 + + +Class: obo:GO_0009433 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "bacterial-type flagellum basal body, C ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "Cytoplasmic ring located at the base of the flagellar basal body; acts as a rotor; includes three switch proteins, which generate torque and can change their conformational state in a bimodal fashion, so that the motor direction can switch between clockwise and counterclockwise. Examples of this component are found in bacteria."^^xsd:string, + oboInOwl:hasExactSynonym "flagellar basal body, C ring"^^xsd:string, + oboInOwl:id "GO:0009433"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, C ring"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009425, + obo:GO_0044461 + + +Class: obo:GO_0009434 + + Annotations: + rdfs:label "microtubule-based flagellum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the cellular component term 'cilium ; GO:0005929'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A long, whiplike protrusion from the surface of a eukaryotic cell, whose undulations drive the cell through a liquid medium; similar in structure to a cilium. The flagellum is based on a 9+2 arrangement of microtubules."^^xsd:string, + oboInOwl:id "GO:0009434"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0019861 + + +Class: obo:GO_0009431 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "One of the rings of the flagellar basal body; a double-flanged ring that anchors the basal body to the cytoplasmic membrane. Examples of this component are found in bacteria."^^xsd:string, + rdfs:label "bacterial-type flagellum basal body, MS ring"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009430"^^xsd:string, + oboInOwl:id "GO:0009431"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, MS ring"^^xsd:string, + oboInOwl:hasExactSynonym "flagellar basal body, MS ring"^^xsd:string, + oboInOwl:hasBroadSynonym "flagellar basal body, mounting plate"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009425, + obo:GO_0044461 + + +Class: obo:GO_0070355 + + Annotations: + oboInOwl:id "GO:0070355"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7654227"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptotagmin, synaptobrevin 2 (VAMP2), SNAP-25, syntaxin 1a, syntaxin1b, Rab3a, and complexin II (or orthologs thereof)."^^xsd:string, + rdfs:label "synaptotagmin-synaptobrevin 2-SNAP-25-syntaxin-1a-syntaxin-1b-Rab3a-complexin II complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1247"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (STX1a, STX1b, SNAP25, RAB3a, SYT1, VAMP2, CPLX2)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1247"^^xsd:string + oboInOwl:hasNarrowSynonym "STX1a-STX1b-SNAP25-RAB3a-SYT1-VAMP2-CPLX2 complex"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0070356 + + Annotations: + oboInOwl:id "GO:0070356"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7654227"^^xsd:string + obo:IAO_0000115 "A SNARE complex that contains synaptotagmin, synaptobrevin 2 (VAMP2), SNAP-25, syntaxin 1a, syntaxin1b, and Rab3a (or orthologs thereof)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1244"^^xsd:string + oboInOwl:hasNarrowSynonym "SNARE complex (STX1a, STX1b, SNAP25, RAB3a, SYT1, VAMP2)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:1244"^^xsd:string + oboInOwl:hasNarrowSynonym "STX1a-STX1b-SNAP25-RAB3a-SYT1-VAMP2 complex"^^xsd:string, + rdfs:label "synaptotagmin-synaptobrevin 2-SNAP-25-syntaxin-1a-syntaxin-1b-Rab3a complex"^^xsd:string + + SubClassOf: + obo:GO_0031201 + + +Class: obo:GO_0045249 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:9395502"^^xsd:string + obo:IAO_0000115 "A cytosolic complex of a regulatory and catalytic subunit that catalyzes the dephosphorylation and concomitant reactivation of the alpha subunit of the E1 component of the pyruvate dehydrogenase complex."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045249"^^xsd:string, + rdfs:comment "See also the cellular component term 'cytosolic pyruvate dehydrogenase complex ; GO:0045250'."^^xsd:string, + rdfs:label "cytosol pyruvate dehydrogenase (lipoamide) phosphatase complex"^^xsd:string + + SubClassOf: + obo:GO_0045253 + + +Class: obo:GO_0070357 + + Annotations: + rdfs:label "alphav-beta3 integrin-CD47 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2356"^^xsd:string + oboInOwl:hasNarrowSynonym "ITGB3-ITGAV-CD47 complex"^^xsd:string, + oboInOwl:id "GO:0070357"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:2277087"^^xsd:string, + oboInOwl:hasDbXref "PMID:7691831"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to CD47 (also known as IAP)."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0035550 + + Annotations: + rdfs:comment "Eukaryotic microorganisms, plants, and probably Gram-positive bacteria, possess a homopolymeric urease. In contrast, urease complexes from gram-negative bacteria studied thus far clearly possess three distinct subunits (alpha, beta and gamma). Tightly bound nickel is present in all urease complexes."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "InterPro:IPR008221"^^xsd:string, + oboInOwl:hasDbXref "PMID:2651866"^^xsd:string + obo:IAO_0000115 "A multiprotein nickel-containing complex that possesses urease activity (catalysis of the hydrolysis of urea to ammonia and carbon dioxide)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "urease complex"^^xsd:string, + oboInOwl:id "GO:0035550"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0070353 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:7568177"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the zinc finger transcription factor GATA1, the LIM domain protein Lmo2 (RBTN2), the basic helix-loop-helix protein TAL1 and its binding partner TCF3. The complex is involved transcriptional regulation in hematopoiesis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "GATA1-TAL1-TCF3-Lmo2 complex"^^xsd:string, + oboInOwl:id "GO:0070353"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0070354 + + Annotations: + rdfs:label "GATA2-TAL1-TCF3-Lmo2 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070354"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7568177"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the zinc finger transcription factor GATA2, the LIM domain protein Lmo2 (RBTN2), the basic helix-loop-helix protein TAL1 and its binding partner TCF3. The complex is involved transcriptional regulation in hematopoiesis."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0045252 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0045252"^^xsd:string, + rdfs:label "oxoglutarate dehydrogenase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "MetaCyc:CPLX66-42"^^xsd:string, + oboInOwl:hasDbXref "PMID:10848975"^^xsd:string + obo:IAO_0000115 "A complex of multiple copies of three enzymatic components: oxoglutarate dehydrogenase (lipoamide) ; EC:1.2.4.2 (E1), dihydrolipoamide S-succinyltransferase ; EC:2.3.1.61 (E2) and dihydrolipoamide dehydrogenase ; EC:1.8.1.4 (E3); catalyzes the overall conversion of 2-oxoglutarate to succinyl-CoA and carbon dioxide (CO2)."^^xsd:string, + oboInOwl:hasExactSynonym "dihydrolipoamide S-succinyltransferase complex"^^xsd:string, + rdfs:comment "See also the molecular functions term 'oxoglutarate dehydrogenase (succinyl-transferring) activity ; GO:0004591', 'dihydrolipoyllysine-residue succinyltransferase activity ; GO:0004149' and 'dihydrolipoyl dehydrogenase activity ; GO:0004148'."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0045253 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:9395502"^^xsd:string + obo:IAO_0000115 "A complex of a regulatory and catalytic subunit that catalyzes the dephosphorylation and concomitant reactivation of the alpha subunit of the E1 component of the pyruvate dehydrogenase complex."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "pyruvate dehydrogenase (lipoamide) phosphatase complex"^^xsd:string, + oboInOwl:id "GO:0045253"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:comment "See also the cellular component term 'cytosolic pyruvate dehydrogenase complex ; GO:0045250'."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0045254 + + Annotations: + rdfs:label "pyruvate dehydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0045254"^^xsd:string, + oboInOwl:hasBroadSynonym "dihydrolipoyl dehydrogenase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Pyruvate_dehydrogenase_complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0716720094"^^xsd:string + obo:IAO_0000115 "Complex that carries out the oxidative decarboxylation of pyruvate to form acetyl-CoA; comprises subunits possessing three catalytic activities: pyruvate dehydrogenase (E1), dihydrolipoamide S-acetyltransferase (E2), and dihydrolipoamide dehydrogenase (E3)."^^xsd:string, + oboInOwl:hasExactSynonym "pyruvate dehydrogenase complex (lipoamide)"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0009364"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The functions of this complex are represented by the molecular function terms 'pyruvate dehydrogenase (lipoamide) activity ; GO:0004739', 'dihydrolipoamide S-acetyltransferase activity ; GO:0004742', and 'dihydrolipoamide dehydrogenase activity ; GO:0004148'."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0045257 + + Annotations: + oboInOwl:inSubset , + rdfs:label "succinate dehydrogenase complex (ubiquinone)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The enzyme that catalyzes the oxidation of succinate and ubiquinone to fumarate and ubiquinol; involved in aerobic respiration, repressed in anaerobic respiration."^^xsd:string, + oboInOwl:id "GO:0045257"^^xsd:string + + SubClassOf: + obo:GO_0045281 + + +Class: obo:GO_0045258 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:kd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The enzyme, located in the plasma membrane, that catalyzes the oxidation of succinate and ubiquinone to fumarate and ubiquinol; involved in aerobic respiration, repressed in anaerobic respiration."^^xsd:string, + rdfs:label "plasma membrane succinate dehydrogenase complex (ubiquinone)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045258"^^xsd:string + + EquivalentTo: + obo:GO_0045257 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0045282, + obo:GO_0045257 + + +Class: obo:GO_0030232 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "insulin control element activator complex"^^xsd:string, + oboInOwl:hasExactSynonym "ICE activator complex"^^xsd:string, + oboInOwl:id "GO:0030232"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7935390"^^xsd:string + obo:IAO_0000115 "Transcription factor complex that binds to the insulin control element (ICE), a DNA sequence element found within the 5'-flanking region of the insulin gene, and activates ICE-mediated transcription."^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0045259 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-transporting ATP synthase complex"^^xsd:string, + oboInOwl:id "GO:0045259"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogen-translocating F-type ATPase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "proton-transporting F-type ATPase complex"^^xsd:string, + rdfs:label "proton-transporting ATP synthase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.6.3.14"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string + obo:IAO_0000115 "A proton-transporting two-sector ATPase complex that catalyzes the phosphorylation of ADP to ATP during oxidative phosphorylation. The complex comprises a membrane sector (F0) that carries out proton transport and a cytoplasmic compartment sector (F1) that catalyzes ATP synthesis by a rotational mechanism; the extramembrane sector (containing 3 a and 3 b subunits) is connected via the d-subunit to the membrane sector by several smaller subunits. Within this complex, the g and e subunits and the 9-12 c subunits rotate by consecutive 120 degree angles and perform parts of ATP synthesis. This movement is driven by the hydrogen ion electrochemical potential gradient."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045255"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0016469 + + +Class: obo:GO_0042788 + + Annotations: + oboInOwl:hasBroadSynonym "active ribosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042788"^^xsd:string, + rdfs:label "polysomal ribosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A ribosome bound to mRNA that forms part of a polysome."^^xsd:string + + EquivalentTo: + obo:GO_0005840 + and (obo:BFO_0000050 some obo:GO_0005844) + + SubClassOf: + obo:GO_0005840, + obo:BFO_0000050 some obo:GO_0005844 + + +Class: obo:GO_0045250 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasRelatedSynonym "pyruvate dehydrogenase complex (lipoamide)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The functions of this complex are represented by the molecular function terms 'pyruvate dehydrogenase (lipoamide) activity ; GO:0004739', 'dihydrolipoamide S-acetyltransferase activity ; GO:0004742', and 'dihydrolipoamide dehydrogenase activity ; GO:0004148'."^^xsd:string, + oboInOwl:id "GO:0045250"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471331309"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716720094"^^xsd:string + obo:IAO_0000115 "Complex that carries out the oxidative decarboxylation of pyruvate to form acetyl-CoA; comprises subunits possessing three catalytic activities: pyruvate dehydrogenase (E1), dihydrolipoamide S-acetyltransferase (E2), and dihydrolipoamide dehydrogenase (E3). Usually contains fewer subunits than its eukaryotic counterpart; for example, the E. coli complex contains 12 E1 dimers, 8 E2 trimers, and 6 E3 dimers arranged in highly symmetric cubic order."^^xsd:string, + rdfs:label "cytosolic pyruvate dehydrogenase complex"^^xsd:string + + SubClassOf: + obo:GO_0045254 + + +Class: obo:GO_0045251 + + Annotations: + rdfs:label "electron transfer flavoprotein complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A protein complex containing flavin adenine dinucleotide (FAD) and acyl-CoA dehydrogenase, which form a system that oxidizes an acyl-CoA molecule and reduces ubiquinone and other acceptors in the mitochondrial electron transport system."^^xsd:string, + oboInOwl:id "GO:0045251"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009424 + + Annotations: + oboInOwl:hasExactSynonym "flagellar hook"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "bacterial-type flagellum hook"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum hook"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The portion of the flagellum that connects the filament to the basal body. Examples of this component are found in bacteria."^^xsd:string, + oboInOwl:id "GO:0009424"^^xsd:string + + SubClassOf: + obo:GO_0044461 + + +Class: obo:GO_0034493 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the melanosome membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "melanosome lumen"^^xsd:string, + oboInOwl:id "GO:0034493"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042470, + obo:GO_0060205 + + +Class: obo:GO_0009422 + + Annotations: + oboInOwl:inSubset , + rdfs:label "bacterial-type flagellum hook-filament junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The region of the flagellum where the hook and filament meet. Examples of this component are found in bacteria."^^xsd:string, + oboInOwl:hasExactSynonym "flagellar hook-filament junction"^^xsd:string, + oboInOwl:id "GO:0009422"^^xsd:string + + SubClassOf: + obo:GO_0044461 + + +Class: obo:GO_0034492 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the hydrogenosome membrane."^^xsd:string, + oboInOwl:id "GO:0034492"^^xsd:string, + rdfs:label "hydrogenosome lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042566, + obo:GO_0070013, + obo:GO_0044444 + + +Class: obo:GO_0000974 + + Annotations: + oboInOwl:hasNarrowSynonym "Prp19/CDC5 complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "NTC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Prp19 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16540691"^^xsd:string, + oboInOwl:hasDbXref "PMID:19239890"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of Prp19 and associated proteins that is involved in the transition from the precatalytic spliceosome to the activated form that catalyzes step 1 of splicing, and which remains associated with the spliceosome through the second catalytic step. It is widely conserved, found in both yeast and mammals, though the exact composition varies. In S. cerevisiae, it contains Prp19p, Ntc20p, Snt309p, Isy1p, Syf2p, Cwc2p, Prp46p, Clf1p, Cef1p, and Syf1p."^^xsd:string, + oboInOwl:id "GO:0000974"^^xsd:string, + oboInOwl:hasNarrowSynonym "nineteen complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0009421 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "flagellin-based flagellum filament cap"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "flagellar filament cap"^^xsd:string, + rdfs:label "bacterial-type flagellum filament cap"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The proteinaceous structure at the distal tip of the flagellar filament. Examples of this component are found in bacteria."^^xsd:string, + oboInOwl:id "GO:0009421"^^xsd:string + + SubClassOf: + obo:GO_0044461, + obo:BFO_0000050 some obo:GO_0009420 + + +Class: obo:GO_0009420 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "flagellar filament"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009420"^^xsd:string, + rdfs:label "bacterial-type flagellum filament"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The long (approximately 20 nm), thin external structure of the flagellum, which acts as a propeller. Examples of this component are found in bacteria."^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum filament"^^xsd:string + + SubClassOf: + obo:GO_0044461 + + +Class: obo:GO_0072487 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0072487"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16227571"^^xsd:string, + oboInOwl:hasDbXref "PMID:20018852"^^xsd:string + obo:IAO_0000115 "A histone acetyltransferase complex that catalyzes the acetylation of a histone H4 lysine residue at position 16. In human, it contains the catalytic subunit MOF, and MSL1, MSL2 and MSL3."^^xsd:string, + rdfs:label "MSL complex"^^xsd:string + + SubClassOf: + obo:GO_0000123 + + +Class: obo:GO_0045239 + + Annotations: + oboInOwl:hasExactSynonym "TCA cycle enzyme complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any of the heteromeric enzymes that act in the TCA cycle."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "tricarboxylic acid cycle enzyme complex"^^xsd:string, + oboInOwl:id "GO:0045239"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009429 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:11133968"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The portion of the central rod of the flagellar basal body that is proximal to the cell membrane; proximal rod connects the distal rod to the flagellar motor. Examples of this component are found in bacteria."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "flagellar basal body, proximal rod"^^xsd:string, + oboInOwl:id "GO:0009429"^^xsd:string, + rdfs:label "bacterial-type flagellum basal body, proximal rod"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, proximal rod"^^xsd:string + + SubClassOf: + obo:GO_0044461, + obo:BFO_0000050 some obo:GO_0030694 + + +Class: obo:GO_0034495 + + Annotations: + rdfs:label "protein storage vacuole lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034495"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the protein storage vacuole membrane."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000326, + obo:GO_0000330 + + +Class: obo:GO_0009428 + + Annotations: + oboInOwl:id "GO:0009428"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "bacterial-type flagellum basal body, distal rod, P ring"^^xsd:string, + oboInOwl:hasRelatedSynonym "flagellar basal body, distal rod, P ring"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, distal rod, P ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "One of the rings of the flagellar basal body; anchors the basal body to the peptidoglycan layer. Examples of this component are found in bacteria."^^xsd:string + + SubClassOf: + obo:GO_0044461, + obo:BFO_0000050 some obo:GO_0009426 + + +Class: obo:GO_0034494 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the microneme membrane."^^xsd:string, + oboInOwl:id "GO:0034494"^^xsd:string, + rdfs:label "microneme lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020009, + obo:GO_0070013 + + +Class: obo:GO_0009427 + + Annotations: + oboInOwl:id "GO:0009427"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, distal rod, L ring"^^xsd:string, + rdfs:label "bacterial-type flagellum basal body, distal rod, L ring"^^xsd:string, + oboInOwl:hasExactSynonym "flagellar basal body, distal rod, L ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "One of the rings of the flagellar basal body; anchors the basal body to the outer membrane. Examples of this component are found in bacteria."^^xsd:string + + SubClassOf: + obo:GO_0044461, + obo:BFO_0000050 some obo:GO_0009426 + + +Class: obo:GO_0009426 + + Annotations: + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, distal rod"^^xsd:string, + oboInOwl:id "GO:0009426"^^xsd:string, + rdfs:label "bacterial-type flagellum basal body, distal rod"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "flagellar basal body, distal rod"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:11133968"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The portion of the central rod of the flagellar basal body that is distal to the cell membrane; spans most of the distance between the inner and outer membranes. Examples of this component are found in bacteria."^^xsd:string + + SubClassOf: + obo:GO_0044461, + obo:BFO_0000050 some obo:GO_0030694 + + +Class: obo:GO_0009425 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasBroadSynonym "flagellar basal body"^^xsd:string, + oboInOwl:id "GO:0009425"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "bacterial-type flagellum basal body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "One of the three major substructures of the flagellin-based flagellum; a structure consisting of a rod, a series of rings, the Mot proteins, the switch complex and the flagellum-specific export apparatus. The rings anchor the flagellum to the cytoplasmic membrane (MS ring), the peptidoglycan (P ring) and the outer membrane (L ring). Examples of this component are found in bacteria."^^xsd:string + + SubClassOf: + obo:GO_0044461 + + +Class: obo:GO_0045243 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Cytosolic complex that possesses isocitrate dehydrogenase (NAD+) activity."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasBroadSynonym "isocitrate dehydrogenase complex (NAD+)"^^xsd:string, + oboInOwl:id "GO:0045243"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytosolic isocitrate dehydrogenase complex (NAD+)"^^xsd:string + + SubClassOf: + obo:GO_0045242, + obo:GO_0045246 + + +Class: obo:GO_0045244 + + Annotations: + oboInOwl:id "GO:0045244"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.2.1.4"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme complex, usually composed of an alpha and beta chain. Functions in the TCA cycle, hydrolyzing succinyl-CoA into succinate and CoA, thereby forming GTP."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:392"^^xsd:string + oboInOwl:hasExactSynonym "succinyl-CoA synthetase, GDP-forming"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008325"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045245"^^xsd:string, + rdfs:label "succinate-CoA ligase complex (GDP-forming)"^^xsd:string + + SubClassOf: + obo:GO_0030062, + obo:GO_0042709 + + +Class: obo:GO_0044196 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A small, dense body one or more of which are present in the nucleus of eukaryotic host cells."^^xsd:string, + rdfs:label "host cell nucleolus"^^xsd:string, + oboInOwl:id "GO:0044196"^^xsd:string + + SubClassOf: + obo:GO_0044094 + + +Class: obo:GO_0045241 + + Annotations: + oboInOwl:id "GO:0045241"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "2-oxoglutarate dehydrogenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Cytosolic complex that possesses alpha-ketoglutarate dehydrogenase activity."^^xsd:string, + rdfs:label "cytosolic alpha-ketoglutarate dehydrogenase complex"^^xsd:string + + SubClassOf: + obo:GO_0045246, + obo:GO_0045240 + + +Class: obo:GO_0044199 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the host nucleus and separating its contents from the rest of the host cytoplasm; includes the intermembrane space, a gap of width 20-40 nm (also called the perinuclear space)."^^xsd:string, + rdfs:label "host cell nuclear envelope"^^xsd:string, + oboInOwl:id "GO:0044199"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0033645, + obo:GO_0044094 + + +Class: obo:GO_0045242 + + Annotations: + oboInOwl:id "GO:0045242"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "isocitrate dehydrogenase complex (NAD+)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Complex that possesses isocitrate dehydrogenase (NAD+) activity."^^xsd:string + + SubClassOf: + obo:GO_0045239 + + +Class: obo:GO_0072493 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "host endosome lumen"^^xsd:string, + rdfs:label "host cell endosome lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the host cell endosome."^^xsd:string, + oboInOwl:id "GO:0072493"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:BFO_0000050 some obo:GO_0044174 + + +Class: obo:GO_0045247 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045247"^^xsd:string, + rdfs:label "cytosolic electron transfer flavoprotein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A protein complex located in the cytosol containing flavin adenine dinucleotide (FAD) that, together with an acyl-CoA dehydrogenase, forms a system that oxidizes an acyl-CoA molecule and reduces ubiquinone and other acceptors."^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0045251 + + +Class: obo:GO_0072492 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of the host cell mitochondrial envelope."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell mitochondrial intermembrane space"^^xsd:string, + oboInOwl:id "GO:0072492"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:BFO_0000050 some obo:GO_0044190 + + +Class: obo:GO_0045248 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045248"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10848975"^^xsd:string + obo:IAO_0000115 "A cytosolic complex of multiple copies of three enzymatic components: oxoglutarate dehydrogenase (lipoamide) ; EC:1.2.4.2 (E1), dihydrolipoamide S-succinyltransferase ; EC:2.3.1.61 (E2) and dihydrolipoamide dehydrogenase ; EC:1.8.1.4 (E3); catalyzes the overall conversion of 2-oxoglutarate to succinyl-CoA and carbon dioxide (CO2)."^^xsd:string, + rdfs:comment "See also the molecular functions term 'oxoglutarate dehydrogenase (succinyl-transferring) activity ; GO:0004591', 'dihydrolipoyllysine-residue succinyltransferase activity ; GO:0004149' and 'dihydrolipoyl dehydrogenase activity ; GO:0004148'."^^xsd:string, + rdfs:label "cytosolic oxoglutarate dehydrogenase complex"^^xsd:string + + SubClassOf: + obo:GO_0045252, + obo:GO_0044445 + + +Class: obo:GO_0072495 + + Annotations: + rdfs:label "host cell Cajal body"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A class of nuclear body in the eukaryotic host cell, first seen after silver staining by Ramon y Cajal in 1903, enriched in small nuclear ribonucleoproteins, and certain general RNA polymerase II transcription factors; ultrastructurally, they appear as a tangle of coiled, electron-dense threads roughly 0.5 micrometers in diameter; involved in aspects of snRNP biogenesis; the protein coilin serves as a marker for Cajal bodies. Some argue that Cajal bodies are the sites for preassembly of transcriptosomes, unitary particles involved in transcription and processing of RNA. The host is the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + oboInOwl:hasExactSynonym "coiled body of host"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "host cell coiled body"^^xsd:string, + oboInOwl:id "GO:0072495"^^xsd:string + + SubClassOf: + obo:GO_0044094, + obo:BFO_0000050 some obo:GO_0044095 + + +Class: obo:GO_0072494 + + Annotations: + rdfs:label "host multivesicular body"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A late endosome in which regions of the limiting host cell endosomal membrane invaginate to form internal vesicles; host membrane proteins that enter the internal vesicles are sequestered from the host cytoplasm."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "host cell multivesicular body"^^xsd:string, + oboInOwl:id "GO:0072494"^^xsd:string + + SubClassOf: + obo:GO_0044184 + + +Class: obo:GO_0045246 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045246"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Any of the heteromeric enzymes, located in the cytosol, that act in the tricarboxylic acid (TCA) cycle."^^xsd:string, + rdfs:label "cytosolic tricarboxylic acid cycle enzyme complex"^^xsd:string, + oboInOwl:hasBroadSynonym "tricarboxylic acid cycle enzyme complex "^^xsd:string, + oboInOwl:hasBroadSynonym "TCA cycle enzyme complex"^^xsd:string + + SubClassOf: + obo:GO_0045239, + obo:GO_0044445 + + +Class: obo:GO_0044191 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround the host cell mitochondrion and form the host cell mitochondrial envelope."^^xsd:string, + oboInOwl:id "GO:0044191"^^xsd:string, + rdfs:label "host cell mitochondrial membrane"^^xsd:string + + SubClassOf: + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0044190 + + +Class: obo:GO_0044190 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the host cell mitochondrion and separating its contents from the host cell cytoplasm; includes the intermembrane space."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "host cell mitochondrial envelope"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044190"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:BFO_0000050 some obo:GO_0033650 + + +Class: obo:GO_0044193 + + Annotations: + oboInOwl:inSubset , + rdfs:label "host cell mitochondrial outer membrane"^^xsd:string, + oboInOwl:id "GO:0044193"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the host cell mitochondrial envelope."^^xsd:string + + SubClassOf: + obo:GO_0044384, + obo:GO_0044191 + + +Class: obo:GO_0044192 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the host cell mitochondrial envelope. It is highly folded to form cristae."^^xsd:string, + oboInOwl:id "GO:0044192"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "host cell mitochondrial inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0044191 + + +Class: obo:GO_0045240 + + Annotations: + rdfs:label "dihydrolipoyl dehydrogenase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "alpha-ketoglutarate dehydrogenase complex"^^xsd:string, + oboInOwl:hasExactSynonym "2-oxoglutarate dehydrogenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses alpha-ketoglutarate dehydrogenase activity."^^xsd:string, + oboInOwl:id "GO:0045240"^^xsd:string + + SubClassOf: + obo:GO_0045239 + + +Class: obo:GO_0044195 + + Annotations: + oboInOwl:id "GO:0044195"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear channels"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:17959832"^^xsd:string, + oboInOwl:hasDbXref "PMID:9024685"^^xsd:string + obo:IAO_0000115 "Long, dynamic tubular channels, formed by invagination of the nuclear envelope, that extend deep into the nucleoplasm. The channels have an underlying lamina and are implicated in functioning in signaling and transport."^^xsd:string, + rdfs:label "nucleoplasmic reticulum"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005635, + obo:GO_0044428 + + +Class: obo:GO_0044194 + + Annotations: + oboInOwl:id "GO:0044194"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11052265"^^xsd:string, + oboInOwl:hasDbXref "PMID:12766758"^^xsd:string + obo:IAO_0000115 "A specialized secretory lysosome that is present in cells with cytolytic capability such as cytotoxic T lymphocytes and natural killer cells. Cytolytic granules mediate the storage and regulated excretion of lytic molecules for killing of target cells."^^xsd:string, + rdfs:label "cytolytic granule"^^xsd:string + + SubClassOf: + obo:GO_0005764 + + +Class: obo:GO_0005729 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "2-micrometer circle DNA"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12073320"^^xsd:string + obo:IAO_0000115 "A plasmid commonly found in Saccharomyces, inherited in a non-Mendelian manner and often present in 100-400 copies."^^xsd:string, + oboInOwl:id "GO:0005729"^^xsd:string + + SubClassOf: + obo:GO_0005727 + + +Class: obo:GO_0005728 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extrachromosomal rDNA circle"^^xsd:string, + oboInOwl:id "GO:0005728"^^xsd:string, + oboInOwl:hasExactSynonym "extrachromosomal ribosomal DNA circle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12044934"^^xsd:string + obo:IAO_0000115 "Circular DNA molecules encoding ribosomal RNA that are replicated independently of chromosomal replication. These molecules originate in the chromosome but are excised and circularized, often by intramolecular homologous recombination between direct tandem repeats."^^xsd:string + + SubClassOf: + obo:GO_0005727 + + +Class: obo:GO_0005727 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "Circular DNA structures that are not part of a chromosome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005727"^^xsd:string, + rdfs:label "extrachromosomal circular DNA"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0046821 + + +Class: obo:GO_0005726 + + Annotations: + rdfs:label "perichromatin fibrils"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14731598"^^xsd:string + obo:IAO_0000115 "Structures of variable diameter visible in the nucleoplasm by electron microscopy, mainly observed near the border of condensed chromatin. The fibrils are enriched in RNA, and are believed to be sites of pre-mRNA splicing and polyadenylylation representing the in situ form of nascent transcripts."^^xsd:string, + oboInOwl:id "GO:0005726"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454 + + +Class: obo:GO_0032444 + + Annotations: + rdfs:label "activin responsive factor complex"^^xsd:string, + oboInOwl:hasExactSynonym "ARF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12374795"^^xsd:string, + oboInOwl:hasDbXref "PMID:9288972"^^xsd:string + obo:IAO_0000115 "A transcriptionally active complex that binds to an activin response element (ARE) in the promoter of target genes, and is composed of two SMAD2 proteins, one SMAD4 protein and a Forkhead activin signal transducer (FAST) transcription factor."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term should not be confused with any of the molecular function and biological process terms that refer to the small GTPase ARF (ADP-ribosylation factor)."^^xsd:string, + oboInOwl:id "GO:0032444"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0048226 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "Region of plant cell wall specialised to act as a seal to prevent back leakage of secreted material (analogous to tight junction between epithelial cells). Found particularly where root parenchymal cells secrete solutes into xylem vessels. The barrier is composed of suberin; a fatty substance, containing long chain fatty acids and fatty esters, also found in the cell walls of cork cells (phellem) in higher plants."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Casparian_strip"^^xsd:string, + oboInOwl:id "GO:0048226"^^xsd:string, + rdfs:label "Casparian strip"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009531, + obo:GO_0044420 + + +Class: obo:GO_0048225 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "suberin network"^^xsd:string, + oboInOwl:id "GO:0048225"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18440267"^^xsd:string, + oboInOwl:hasDbXref "PMID:7706282"^^xsd:string + obo:IAO_0000115 "An extracellular matrix part that consists of fatty acid-derived polymers, including both aromatic and aliphatic components. The suberin network is found in specialized plant cell walls, where it is laid down between the primary wall and plasmalemma, forms protective and wound-healing layers, and provides a water-impermeable diffusion barrier."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009531, + obo:GO_0044420 + + +Class: obo:GO_0072546 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "endoplasmic reticulum membrane protein complex"^^xsd:string, + oboInOwl:id "GO:0072546"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgf"^^xsd:string, + oboInOwl:hasDbXref "PMID:19325107"^^xsd:string + obo:IAO_0000115 "A transmembrane protein complex that is involved in protein folding in the endoplasmic reticulum. In S. cerevisiae, it has six members: EMC1, EMC2, AIM27, EMC4, KRE27, and EMC6."^^xsd:string, + oboInOwl:hasExactSynonym "EMC"^^xsd:string, + rdfs:label "ER membrane protein complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030176, + obo:GO_0043234 + + +Class: obo:GO_0048224 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14503002"^^xsd:string, + oboInOwl:hasDbXref "PMID:16662709"^^xsd:string + obo:IAO_0000115 "An extracellular matrix part that consists of lignin in the form of a three-dimensional polymeric network. Lignins are complex racemic aromatic heteropolymers derived from a variety of phenylpropane monomers coupled together by an assortment of carbon-carbon and ether linkages. Lignin is crucial for structural integrity of the cell wall and stiffness and strength of the stem. In addition, lignin waterproofs the cell wall, enabling transport of water and solutes through the vascular system, and plays a role in protecting plants against pathogens."^^xsd:string, + rdfs:label "lignin network"^^xsd:string, + oboInOwl:id "GO:0048224"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009531, + obo:GO_0044420 + + +Class: obo:GO_0032437 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12485990"^^xsd:string, + oboInOwl:hasDbXref "PMID:2592408"^^xsd:string, + oboInOwl:hasDbXref "PMID:8071151"^^xsd:string + obo:IAO_0000115 "A dense network of actin filaments found beneath the apical cell surface of hair cells, and into which stereocilia are inserted."^^xsd:string, + rdfs:label "cuticular plate"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032437"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030864, + obo:GO_0044430, + obo:GO_0044448 + + +Class: obo:GO_0048223 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "DOI:10.1016/j.foodchem.2008.11.065"^^xsd:string, + oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "Network composed of hemicelluloses; members of a class of plant cell wall polysaccharide that cannot be extracted from the wall by hot water or chelating agents, but can be extracted by aqueous alkali. Includes xylan, glucuronoxylan, arabinoxylan, arabinogalactan II, glucomannan, xyloglucan and galactomannan."^^xsd:string, + oboInOwl:id "GO:0048223"^^xsd:string, + rdfs:label "hemicellulose network"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009531, + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009530, + obo:GO_0044420 + + +Class: obo:GO_0048222 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Extensin"^^xsd:string, + rdfs:label "glycoprotein network"^^xsd:string, + oboInOwl:hasExactSynonym "extensin"^^xsd:string, + oboInOwl:id "GO:0048222"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18508691"^^xsd:string, + oboInOwl:hasDbXref "PMID:7048321"^^xsd:string + obo:IAO_0000115 "An extracellular matrix part that consists of cross-linked glycoproteins."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009530, + obo:GO_0044420 + + +Class: obo:GO_0005731 + + Annotations: + oboInOwl:hasRelatedSynonym "nucleolus organizer complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14504406"^^xsd:string + obo:IAO_0000115 "A region of a chromosome where nucleoli form during interphase, and where genes encoding the largest rRNA precursor transcript are tandemly arrayed."^^xsd:string, + oboInOwl:id "GO:0005731"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nucleolus_organizer_region"^^xsd:string, + oboInOwl:hasExactSynonym "nucleolus organiser region"^^xsd:string, + oboInOwl:hasExactSynonym "NOR"^^xsd:string, + rdfs:label "nucleolus organizer region"^^xsd:string + + SubClassOf: + obo:GO_0030874, + obo:GO_0043234 + + +Class: obo:GO_0005732 + + Annotations: + oboInOwl:id "GO:0005732"^^xsd:string, + oboInOwl:hasExactSynonym "small nucleolar ribonucleoprotein"^^xsd:string, + rdfs:label "small nucleolar ribonucleoprotein complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains an RNA molecule of the small nucleolar RNA (snoRNA) family and associated proteins. Most are involved in a step of processing of rRNA: cleavage, 2'-O-methylation, or pseudouridylation. The majority, though not all, fall into one of two classes, box C/D type or box H/ACA type."^^xsd:string, + rdfs:comment "Note that 'nucleolar' in the term name is part of the RNA family designation 'small nucleolar', and does not necessarily reflect the location of the complex."^^xsd:string, + oboInOwl:hasExactSynonym "snoRNP"^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0005730 + + Annotations: + oboInOwl:id "GO:0005730"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "nucleolus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A small, dense body one or more of which are present in the nucleus of eukaryotic cells. It is rich in RNA and protein, is not bounded by a limiting membrane, and is not seen during mitosis. Its prime function is the transcription of the nucleolar DNA into 45S ribosomal-precursor RNA, the processing of this RNA into 5.8S, 18S, and 28S components of ribosomal RNA, and the association of these components with 5S RNA and proteins synthesized outside the nucleolus. This association results in the formation of ribonucleoprotein precursors; these pass into the cytoplasm and mature into the 40S and 60S subunits of the ribosome."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1820400233"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nucleolus"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031981, + obo:GO_0043232 + + +Class: obo:GO_0005736 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005736"^^xsd:string, + rdfs:label "DNA-directed RNA polymerase I complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "DNA-directed RNA polymerase I activity"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "RNA polymerase I, one of three nuclear DNA-directed RNA polymerases found in all eukaryotes, is a multisubunit complex; typically it produces rRNAs. Two large subunits comprise the most conserved portion including the catalytic site and share similarity with other eukaryotic and bacterial multisubunit RNA polymerases. The remainder of the complex is composed of smaller subunits (generally ten or more), some of which are also found in RNA polymerase III and others of which are also found in RNA polymerases II and III. Although the core is competent to mediate ribonucleic acid synthesis, it requires additional factors to select the appropriate template."^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:GO_0055029 + + +Class: obo:GO_0005715 + + Annotations: + rdfs:label "late recombination nodule"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "An electron dense structure that is associated with meiotic chromosomes in pachytene during meiosis I."^^xsd:string, + oboInOwl:id "GO:0005715"^^xsd:string + + SubClassOf: + obo:GO_0005713 + + +Class: obo:GO_0034066 + + Annotations: + oboInOwl:id "GO:0034066"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Ric1p-Rgp1p complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10990452"^^xsd:string + obo:IAO_0000115 "A protein complex that acts as a nucleotide exchange factor for the GTPase Ypt6p, and is required for fusion of endosome-derived vesicles with the Golgi."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044431 + + +Class: obo:GO_0005719 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear euchromatin"^^xsd:string, + oboInOwl:id "GO:0005719"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The dispersed less dense form of chromatin in the interphase nucleus. It exists in at least two forms, a some being in the form of transcriptionally active chromatin which is the least condensed, while the rest is inactive euchromatin which is more condensed than active chromatin but less condensed than heterochromatin."^^xsd:string + + EquivalentTo: + obo:GO_0000791 + and (obo:BFO_0000050 some obo:GO_0000228) + + SubClassOf: + obo:GO_0000791, + obo:GO_0000790 + + +Class: obo:GO_0034064 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17046992"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the transcription factor Ste11 and the RNA binding protein Mei2; involved in regulation of conjugation in fission yeast."^^xsd:string, + oboInOwl:id "GO:0034064"^^xsd:string, + rdfs:label "Tor2-Mei2-Ste11 complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0032433 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032433"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The end of a filopodium distal to the body of the cell."^^xsd:string, + rdfs:label "filopodium tip"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030175 + + +Class: obo:GO_0032432 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An assembly of actin filaments that are on the same axis but may be oriented with the same or opposite polarities and may be packed with different levels of tightness."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030482"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "actin cable"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000141"^^xsd:string, + rdfs:label "actin filament bundle"^^xsd:string, + oboInOwl:id "GO:0032432"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0015629 + + +Class: obo:GO_0032839 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "All of the contents of a dendrite, excluding the surrounding plasma membrane."^^xsd:string, + oboInOwl:hasExactSynonym "dendritic cytoplasm"^^xsd:string, + rdfs:label "dendrite cytoplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032839"^^xsd:string + + SubClassOf: + obo:GO_0032838, + obo:BFO_0000050 some obo:GO_0030425 + + +Class: obo:GO_0032838 + + Annotations: + rdfs:label "cell projection cytoplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032838"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "All of the contents of a cell projection, excluding the plasma membrane surrounding the projection."^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:GO_0044444 + + +Class: obo:GO_0034060 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The space enclosed by the double membrane of a cyanelle."^^xsd:string, + rdfs:label "cyanelle stroma"^^xsd:string, + oboInOwl:id "GO:0034060"^^xsd:string + + SubClassOf: + obo:GO_0009532, + obo:BFO_0000050 some obo:GO_0009842 + + +Class: obo:GO_0048217 + + Annotations: + rdfs:label "pectic matrix"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "PMID:11554482"^^xsd:string + obo:IAO_0000115 "The gel-like pectin matrix consists of the interlinked acidic and neutral pectin networks that are further cross-linked by calcium bridges. Pectins consist largely of long chains of mostly galacturonic acid units (typically 1,4 linkages and sometimes methyl esters). Three major pectic polysaccharides (homogalacturonan, rhamnogalacturonan I and rhamnogalacturonan II) are thought to occur in all primary cell walls."^^xsd:string, + oboInOwl:id "GO:0048217"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009531, + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009530, + obo:GO_0044420 + + +Class: obo:GO_0072556 + + Annotations: + oboInOwl:id "GO:0072556"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A presynaptic membrane that is part of another organism, i.e. a secondary organism with which the first organism is interacting. A presynaptic membrane is specialized area of membrane of the axon terminal that faces the plasma membrane of the neuron or muscle fiber with which the axon terminal establishes a synaptic junction; many synaptic junctions exhibit structural presynaptic characteristics, such as conical, electron-dense internal protrusions, that distinguish it from the remainder of the axon plasma membrane."^^xsd:string, + rdfs:label "other organism presynaptic membrane"^^xsd:string + + SubClassOf: + obo:GO_0044218 + + +Class: obo:GO_0072558 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0072558"^^xsd:string, + oboInOwl:hasExactSynonym "NALP1 inflammasome complex"^^xsd:string, + rdfs:label "NLRP1 inflammasome complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:vp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20303873"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of two components, NLRP1 (NALP1) and caspase-1 or caspase-5. The exact mechanisms of NLRP1 activation remain obscure, but potassium ion efflux appears to be essential."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0072557 + + Annotations: + oboInOwl:id "GO:0072557"^^xsd:string, + rdfs:label "IPAF inflammasome complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:vp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20303873"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of three components, IPAF, NAIP and caspase-1, and includes among its functions the sensing of flagellin derived from Legionella pneumophila, Salmonella typhimurium, Pseudomonas aeruginosa and Shigella flexneri."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0032426 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:17021180"^^xsd:string + obo:IAO_0000115 "The end of a stereocilium bundle, distal to the site of the bundle's attachment to the apical cell surface."^^xsd:string, + oboInOwl:id "GO:0032426"^^xsd:string, + rdfs:label "stereocilium bundle tip"^^xsd:string, + oboInOwl:hasRelatedSynonym "stereocilium tip"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0032421, + obo:GO_0044446 + + +Class: obo:GO_0072559 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:vp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20303873"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of three components, NLRP3 (NALP3), PYCARD and caspase-1. It is activated upon exposure to whole pathogens, as well as a number of structurally diverse pathogen- and danger-associated molecular patterns (PAMPs and DAMPs) and environmental irritants. Whole pathogens demonstrated to activate the NLRP3 inflammasome complex include the fungi Candida albicans and Saccharomyces cerevisiae, bacteria that produce pore-forming toxins, including Listeria monocytogenes and Staphylococcus aureus, and viruses such as Sendai virus, adenovirus, and influenza virus."^^xsd:string, + rdfs:label "NLRP3 inflammasome complex"^^xsd:string, + oboInOwl:hasExactSynonym "NALP3 inflammasome complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0072559"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0046798 + + Annotations: + rdfs:label "viral portal complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11602732"^^xsd:string + obo:IAO_0000115 "A multimeric ring of proteins through which the DNA enters and exits the viral capsid."^^xsd:string, + oboInOwl:id "GO:0046798"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0019028, + obo:GO_0044423, + obo:GO_0043234 + + +Class: obo:GO_0033203 + + Annotations: + oboInOwl:id "GO:0033203"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DNA helicase A complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9341218"^^xsd:string + obo:IAO_0000115 "A homohexameric protein complex that possesses DNA helicase activity; associates with DNA polymerase alpha-primase and translocates in the 5' to 3' direction."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0033202 + + +Class: obo:GO_0005720 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A condensed form of chromatin, occurring in the nucleus during interphase, that stains strongly with basophilic dyes. The DNA of heterochromatin is typically replicated at a later stage in the cell-division cycle than euchromatin."^^xsd:string, + oboInOwl:id "GO:0005720"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear heterochromatin"^^xsd:string + + EquivalentTo: + obo:GO_0000792 + and (obo:BFO_0000050 some obo:GO_0000228) + + SubClassOf: + obo:GO_0000792, + obo:GO_0000790 + + +Class: obo:GO_0033202 + + Annotations: + oboInOwl:id "GO:0033202"^^xsd:string, + rdfs:label "DNA helicase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses DNA helicase activity."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005721 + + Annotations: + oboInOwl:id "GO:0005721"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "centric heterochromatin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12019236"^^xsd:string + obo:IAO_0000115 "A region of heterochromatin located near the centromere of a chromosome."^^xsd:string, + rdfs:label "centromeric heterochromatin"^^xsd:string + + EquivalentTo: + obo:GO_0000792 + and (obo:BFO_0000050 some obo:GO_0000775) + + SubClassOf: + obo:GO_0000792, + obo:BFO_0000050 some obo:GO_0000775 + + +Class: obo:GO_0005722 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11404334"^^xsd:string, + oboInOwl:hasDbXref "PMID:8878678"^^xsd:string + obo:IAO_0000115 "A diffusely banded region of heterochromatin located between euchromatin and alpha-heterochromatin in the polytene chromosome chromocenter; normally replicated during polytenization."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005722"^^xsd:string, + rdfs:label "beta-heterochromatin"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005701, + obo:GO_0005721 + + +Class: obo:GO_0005723 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:8878678"^^xsd:string + obo:IAO_0000115 "A small, compact region of heterochromatin located in the middle of the polytene chromosome chromocenter, which undergoes little or no replication during polytenization."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005723"^^xsd:string, + rdfs:label "alpha-heterochromatin"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005701, + obo:GO_0005721 + + +Class: obo:GO_0005724 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear telomeric heterochromatin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "Heterochromatic regions of the chromosome found at the telomeres of a chromosome in the nucleus."^^xsd:string, + oboInOwl:id "GO:0005724"^^xsd:string + + EquivalentTo: + obo:GO_0031933 + and (obo:BFO_0000050 some obo:GO_0000228) + + SubClassOf: + obo:GO_0031933, + obo:GO_0005720, + obo:BFO_0000050 some obo:GO_0000784 + + +Class: obo:GO_0005725 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:14579245"^^xsd:string + obo:IAO_0000115 "Any of the regions of heterochromatin that form a reproducible set of dense bands scattered along the euchromatic arms in polytene chromosomes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intercalary heterochromatin"^^xsd:string, + oboInOwl:id "GO:0005725"^^xsd:string + + SubClassOf: + obo:GO_0005720 + + +Class: obo:GO_0005706 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "polytene chromosome ectopic fibre"^^xsd:string, + rdfs:label "polytene chromosome ectopic fiber"^^xsd:string, + oboInOwl:id "GO:0005706"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0120649012"^^xsd:string + obo:IAO_0000115 "A thread-like connection joining two regions of ectopically paired polytene chromosomes."^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005700 + + +Class: obo:GO_0005705 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:11361342"^^xsd:string + obo:IAO_0000115 "A stretch of less tightly packed chromatin along the polytene chromosome, found between bands."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005705"^^xsd:string, + rdfs:label "polytene chromosome interband"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005700 + + +Class: obo:GO_0005704 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:11361342"^^xsd:string + obo:IAO_0000115 "A stretch of densely packed chromatin along the polytene chromosome, visible as a morphologically distinct band."^^xsd:string, + rdfs:label "polytene chromosome band"^^xsd:string, + oboInOwl:id "GO:0005704"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005700 + + +Class: obo:GO_0042385 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "http://www.mrc-lmb.cam.ac.uk/myosin/Review/Reviewframeset.html"^^xsd:string + obo:IAO_0000115 "A myosin complex containing a class III myosin heavy chain and associated light chains; myosin III is monomeric myosin that serves as a link between the cytoskeleton and the signaling complex involved in phototransduction, and differs from all other myosins in having an N-terminal kinase domain."^^xsd:string, + oboInOwl:id "GO:0042385"^^xsd:string, + rdfs:label "myosin III complex"^^xsd:string + + SubClassOf: + obo:GO_0016461 + + +Class: obo:GO_0042383 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sarcolemma"^^xsd:string, + rdfs:label "sarcolemma"^^xsd:string, + oboInOwl:id "GO:0042383"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The outer membrane of a muscle cell, consisting of the plasma membrane, a covering basement membrane (about 100 nm thick and sometimes common to more than one fiber), and the associated loose network of collagen fibers."^^xsd:string + + SubClassOf: + obo:GO_0005886 + + +Class: obo:GO_0042382 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "paraspeckles"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Paraspeckle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11790299"^^xsd:string + obo:IAO_0000115 "Discrete subnuclear bodies in the interchromatin nucleoplasmic space, often located adjacent to nuclear specks. 10-20 paraspeckles are typically found in human cell nuclei."^^xsd:string, + oboInOwl:id "GO:0042382"^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0072563 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16373184"^^xsd:string + obo:IAO_0000115 "A blood microparticle that is derived from, and contains membrane receptors as well as other proteins characteristic of, an endothelial cell."^^xsd:string, + rdfs:label "endothelial microparticle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0072563"^^xsd:string, + rdfs:comment "Note that this heterodimeric cytokine utilizes the IL-12p35 subunit as its alpha chain, which is also used by IL-35 as its alpha chain, and utilizes the IL-12p40 subunit as its beta chain, which is also used by IL-23 as its beta chain."^^xsd:string + + SubClassOf: + obo:GO_0072562 + + +Class: obo:GO_0072562 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "blood microparticle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16373184"^^xsd:string + oboInOwl:hasExactSynonym "cell membrane microparticle"^^xsd:string, + oboInOwl:id "GO:0072562"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16373184"^^xsd:string + obo:IAO_0000115 "A phospholipid microvesicle that is derived from any of several cell types, such as platelets, blood cells, endothelial cells, or others, and contains membrane receptors as well as other proteins characteristic of the parental cell. Microparticles are heterogeneous in size, and are characterized as microvesicles free of nucleic acids."^^xsd:string, + rdfs:comment "Note that this heterodimeric cytokine utilizes the IL-12p35 subunit as its alpha chain, which is also used by IL-35 as its alpha chain, and utilizes the IL-12p40 subunit as its beta chain, which is also used by IL-23 as its beta chain."^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615 + + +Class: obo:GO_0005713 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "An electron dense structure that is associated with meiotic chromosomes."^^xsd:string, + oboInOwl:id "GO:0005713"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "recombination nodule"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794 + + +Class: obo:GO_0005714 + + Annotations: + oboInOwl:id "GO:0005714"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "early recombination nodule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string + obo:IAO_0000115 "An electron dense structure that is associated with meiotic chromosomes in leptotene or zygotene during meiosis I."^^xsd:string + + SubClassOf: + obo:GO_0005713 + + +Class: obo:GO_0055120 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:17492481"^^xsd:string + obo:IAO_0000115 "A vinculin-containing myofibril attachment structure of striated muscle that connects sarcomeres to the extracellular matrix. In nematode body wall muscle, the dense body performs the dual role of Z-disk and costamere."^^xsd:string, + rdfs:label "striated muscle dense body"^^xsd:string, + oboInOwl:id "GO:0055120"^^xsd:string + + SubClassOf: + obo:GO_0044449 + + +Class: obo:GO_0005712 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A connection formed between chromatids, visible during meiosis, thought to be the point of the interchange involved in crossing-over."^^xsd:string, + oboInOwl:id "GO:0005712"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Chiasma_(genetics)"^^xsd:string, + rdfs:label "chiasma"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794 + + +Class: obo:GO_0055126 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:12791264"^^xsd:string, + oboInOwl:hasDbXref "PMID:15741174"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of the nuclear pore complex. It forms a subcomplex with Nup159p and Nsp1p, interacts with Nup116p, and is required for proper localization of Nup116p. In Saccharomyces cerevisiae this complex contains Nup82p, Nsp1p, Nup159p, Nup116p, and Gle2p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0055126"^^xsd:string, + rdfs:label "Nup82 complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0005643, + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0055125 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:12791264"^^xsd:string, + oboInOwl:hasDbXref "PMID:15741174"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of the nuclear pore complex, and is required for its correct assembly. In Saccharomyces cerevisiae Nic96 contains Nsp1p, Nup57p, Nup49p, and Nic96p."^^xsd:string, + oboInOwl:id "GO:0055125"^^xsd:string, + rdfs:label "Nic96 complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005643, + obo:GO_0044425, + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0034082 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "type II polyketide synthase complex"^^xsd:string, + oboInOwl:hasExactSynonym "type II PKS complex"^^xsd:string, + oboInOwl:hasExactSynonym "type II PKS"^^xsd:string, + oboInOwl:hasExactSynonym "type II polyketide synthase"^^xsd:string, + oboInOwl:id "GO:0034082"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cb"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12636085"^^xsd:string + obo:IAO_0000115 "A polyketide synthase complex that consists of several different polypeptide chains, each of which catalyzes a single reaction."^^xsd:string + + SubClassOf: + obo:GO_0034081 + + +Class: obo:GO_0034081 + + Annotations: + rdfs:label "polyketide synthase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12636085"^^xsd:string + obo:IAO_0000115 "A protein complex that carries out enzymatic reactions involved in the biosynthesis of polyketides, any of a diverse group of natural products synthesized via linear poly-beta-ketones."^^xsd:string, + oboInOwl:hasRelatedSynonym "PKS"^^xsd:string, + oboInOwl:id "GO:0034081"^^xsd:string, + oboInOwl:hasExactSynonym "PKS complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0034083 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12636085"^^xsd:string + obo:IAO_0000115 "A polyketide synthase complex that consists of two identical ketosynthase polypeptides."^^xsd:string, + oboInOwl:hasExactSynonym "type III polyketide synthase"^^xsd:string, + oboInOwl:id "GO:0034083"^^xsd:string, + rdfs:label "type III polyketide synthase complex"^^xsd:string, + oboInOwl:hasExactSynonym "type III PKS complex"^^xsd:string, + oboInOwl:hasExactSynonym "type III PKS"^^xsd:string + + SubClassOf: + obo:GO_0034081 + + +Class: obo:GO_0009986 + + Annotations: + oboInOwl:inSubset , + rdfs:label "cell surface"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:sm"^^xsd:string + obo:IAO_0000115 "The external part of the cell wall and/or plasma membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term is intended to annotate gene products that are attached (integrated or loosely bound) to the plasma membrane or cell wall."^^xsd:string, + oboInOwl:id "GO:0009986"^^xsd:string, + oboInOwl:hasExactSynonym "cell associated"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0009929"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009928"^^xsd:string, + oboInOwl:hasExactSynonym "cell bound"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0048238 + + Annotations: + rdfs:label "smooth endoplasmic reticulum lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao927884761"^^xsd:string, + oboInOwl:hasExactSynonym "SER lumen"^^xsd:string, + oboInOwl:id "GO:0048238"^^xsd:string, + oboInOwl:hasExactSynonym "smooth ER lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the smooth endoplasmic reticulum."^^xsd:string + + SubClassOf: + obo:GO_0005788, + obo:BFO_0000050 some obo:GO_0005790 + + +Class: obo:GO_0032449 + + Annotations: + oboInOwl:id "GO:0032449"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "CARMA1-BCL10-Malt1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12909454"^^xsd:string + obo:IAO_0000115 "A protein complex comprising Carma1, Bcl10 and MALT1; plays a role in signal transduction during NF-kappaB activation."^^xsd:string, + rdfs:label "CBM complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0048237 + + Annotations: + oboInOwl:hasExactSynonym "RER lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "rough ER lumen"^^xsd:string, + oboInOwl:id "GO:0048237"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of the rough endoplasmic reticulum."^^xsd:string, + rdfs:label "rough endoplasmic reticulum lumen"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1819509473"^^xsd:string + + SubClassOf: + obo:GO_0005788, + obo:BFO_0000050 some obo:GO_0005791 + + +Class: obo:GO_0005700 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Polytene_chromosome"^^xsd:string, + oboInOwl:id "GO:0005700"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A type of chromosome in a polyploid cell, formed when multiple copies of homologous chromosomes are aligned side by side to give a giant chromosome in which distinct chromosome bands are readily visible."^^xsd:string, + rdfs:label "polytene chromosome"^^xsd:string + + SubClassOf: + obo:GO_0005694 + + +Class: obo:GO_0005701 + + Annotations: + oboInOwl:id "GO:0005701"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0120649012"^^xsd:string + obo:IAO_0000115 "A region at which the centric regions of polytene chromosomes are joined together."^^xsd:string, + oboInOwl:hasExactSynonym "polytene chromosome chromocentre"^^xsd:string, + rdfs:label "polytene chromosome chromocenter"^^xsd:string + + EquivalentTo: + obo:GO_0010369 + and (obo:BFO_0000050 some obo:GO_0005700) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005700, + obo:GO_0010369 + + +Class: obo:GO_0005702 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0120649012"^^xsd:string + obo:IAO_0000115 "A region of the polytene chromosome where the diameter is considerably decreased, probably resulting from local differences in chromosome organization."^^xsd:string, + oboInOwl:hasBroadSynonym "constriction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005702"^^xsd:string, + rdfs:label "polytene chromosome weak point"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005700 + + +Class: obo:GO_0005703 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0120649012"^^xsd:string + obo:IAO_0000115 "A swelling at a site along the length of a polytene chromosome, thought to be the site of active transcription."^^xsd:string, + oboInOwl:id "GO:0005703"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "polytene chromosome puff"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0005700 + + +Class: obo:GO_0016235 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "aggresome"^^xsd:string, + oboInOwl:id "GO:0016235"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Aggresome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11121744"^^xsd:string + obo:IAO_0000115 "An inclusion body formed by dynein-dependent retrograde transport of an aggregated protein on microtubules."^^xsd:string + + SubClassOf: + obo:GO_0016234 + + +Class: obo:GO_0016234 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11121744"^^xsd:string + obo:IAO_0000115 "A discrete intracellular part formed of aggregated molecules such as proteins or other biopolymers."^^xsd:string, + oboInOwl:id "GO:0016234"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Inclusion_bodies"^^xsd:string, + rdfs:label "inclusion body"^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0044447 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "axoneme part"^^xsd:string, + oboInOwl:id "GO:0044447"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of an axoneme, the bundle of microtubules and associated proteins that forms the core of cilia and flagella in eukaryotic cells and is responsible for their movements."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005930) + + SubClassOf: + obo:GO_0044463, + obo:GO_0044424, + obo:GO_0044422, + obo:BFO_0000050 some obo:GO_0005930 + + +Class: obo:GO_0044446 + + Annotations: + oboInOwl:inSubset , + rdfs:label "intracellular organelle part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044446"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0043229, + obo:GO_0044422 + + +Class: obo:GO_0019185 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7715707"^^xsd:string, + oboInOwl:hasDbXref "PMID:9003788"^^xsd:string + obo:IAO_0000115 "A protein complex that recognizes the proximal sequence element of RNA polymerase II and III snRNA promoters."^^xsd:string, + oboInOwl:id "GO:0019185"^^xsd:string, + oboInOwl:hasExactSynonym "SNAPc"^^xsd:string, + rdfs:label "snRNA-activating protein complex"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0044449 + + Annotations: + oboInOwl:hasExactSynonym "contractile fibre component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a contractile fiber, a fiber composed of actin, myosin, and associated proteins, found in cells of smooth or striated muscle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044449"^^xsd:string, + oboInOwl:hasBroadSynonym "muscle fiber component"^^xsd:string, + rdfs:label "contractile fiber part"^^xsd:string, + oboInOwl:hasBroadSynonym "muscle fibre component"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0043292) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043292, + obo:GO_0044422, + obo:GO_0044444 + + +Class: obo:GO_0044448 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044448"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the cell cortex, the region of a cell that lies just beneath the plasma membrane and often, but not always, contains a network of actin filaments and associated proteins."^^xsd:string, + rdfs:label "cell cortex part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005938) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005938, + obo:GO_0044444 + + +Class: obo:GO_0051077 + + Annotations: + oboInOwl:id "GO:0051077"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "secondary septum"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:15194814"^^xsd:string + obo:IAO_0000115 "Cell wall structures composed of linear polysaccharides which are deposited at both sides of the primary septum at 90 degrees to the primary septum."^^xsd:string, + rdfs:label "secondary cell septum"^^xsd:string + + SubClassOf: + obo:GO_0030428 + + +Class: obo:GO_0010168 + + Annotations: + oboInOwl:hasExactSynonym "endoplasmic reticulum body"^^xsd:string, + oboInOwl:id "GO:0010168"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ER body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11577182"^^xsd:string + obo:IAO_0000115 "A novel compartment found in plant cells that is derived from the ER. The structures have a characteristic shape and size (10 mm long and 0.5 mm wide) and are surrounded with ribosomes. They have been found in Arabidopsis thaliana and related Brassicaceae species."^^xsd:string + + SubClassOf: + obo:GO_0043231 + + +Class: obo:GO_0010169 + + Annotations: + rdfs:label "thioglucosidase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010169"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10682349"^^xsd:string + obo:IAO_0000115 "A large (200-800 kDa) multiprotein complex formed by 70-kDa and 5-kDa myrosinases, myrosinase- binding proteins (MBPs), MBP-related proteins and myrosinase-associated proteins. The complex has been identified in Brassica napus seeds."^^xsd:string, + oboInOwl:hasExactSynonym "myrosinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0033257 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9407099"^^xsd:string + obo:IAO_0000115 "A protein complex containing one Bcl protein and one or more copies of NF-kappaB2; formation of complexes of different stoichiometry depends on the Bcl3:NF-kappaB2 ratio, and allow Bcl3 to exert different regulatory effects on NF-kappaB2-dependent transcription."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Bcl3-p52 complex"^^xsd:string, + rdfs:label "Bcl3/NF-kappaB2 complex"^^xsd:string, + oboInOwl:id "GO:0033257"^^xsd:string, + oboInOwl:hasRelatedSynonym "Bcl3-NFKB2 complex"^^xsd:string + + SubClassOf: + obo:GO_0033256 + + +Class: obo:GO_0005776 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "PMID:11099404"^^xsd:string + obo:IAO_0000115 "A double-membrane-bounded compartment in which endogenous cellular material is sequestered; known as autophagosome in yeast."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "autophagic vacuole"^^xsd:string, + oboInOwl:hasExactSynonym "autophagosome"^^xsd:string, + oboInOwl:id "GO:0005776"^^xsd:string + + SubClassOf: + obo:GO_0005773 + + +Class: obo:GO_0005775 + + Annotations: + rdfs:label "vacuolar lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005775"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The volume enclosed within the vacuolar membrane."^^xsd:string + + EquivalentTo: + obo:GO_0031974 + and (obo:BFO_0000050 some obo:GO_0005773) + + SubClassOf: + obo:GO_0044437, + obo:GO_0070013 + + +Class: obo:GO_0044450 + + Annotations: + oboInOwl:id "GO:0044450"^^xsd:string, + oboInOwl:hasExactSynonym "microtubule organizing centre component"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a microtubule organizing center, a region in a eukaryotic cell, such as a centrosome or basal body, from which microtubules grow."^^xsd:string, + rdfs:label "microtubule organizing center part"^^xsd:string, + oboInOwl:hasExactSynonym "MTOC component"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005815) + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0005815, + obo:GO_0044444 + + +Class: obo:GO_0033255 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11731480"^^xsd:string, + oboInOwl:hasDbXref "PMID:12626510"^^xsd:string, + oboInOwl:hasDbXref "PMID:15788653"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses histone acetyltransferase activity and links histone acetylation to the assembly of transcriptionally silent chromatin. In vitro, the complex acetylates lysine 16 of histone H4 and lysine 14 of histone H3, although the latter may not be relevant in vivo. The complex contains a catalytic subunit and at least two other subunits; in Saccharomyces, the catalytic subunit is Sas2p and additional subunits are Sas4p and Sas5p."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033255"^^xsd:string, + rdfs:label "SAS acetyltransferase complex"^^xsd:string, + oboInOwl:hasExactSynonym "SAS-I complex"^^xsd:string + + SubClassOf: + obo:GO_0032777 + + +Class: obo:GO_0005774 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005774"^^xsd:string, + rdfs:label "vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the vacuole and separating its contents from the cytoplasm of the cell."^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0031090 + + +Class: obo:GO_0044451 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044451"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the nucleoplasm, that part of the nuclear content other than the chromosomes or the nucleolus."^^xsd:string, + rdfs:label "nucleoplasm part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005654) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005654, + obo:GO_0044428 + + +Class: obo:GO_0033256 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0033256"^^xsd:string, + rdfs:label "I-kappaB/NF-kappaB complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:9407099"^^xsd:string + obo:IAO_0000115 "A protein complex containing an I-kappaB protein and one or more copies of an NF-kappaB protein; mediates regulation of NF-kappaB activity by I-kappaB."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005773 + + Annotations: + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:label "vacuole"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005773"^^xsd:string, + oboInOwl:hasRelatedSynonym "vacuolar carboxypeptidase Y"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Vacuole"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A closed structure, found only in eukaryotic cells, that is completely surrounded by unit membrane and contains liquid material. Cells contain one or several vacuoles, that may have different functions from each other. Vacuoles have a diverse array of functions. They can act as a storage organelle for nutrients or waste products, as a degradative compartment, as a cost-effective way of increasing cell size, and as a homeostatic regulator controlling both turgor pressure and pH of the cytosol."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0044452 + + Annotations: + oboInOwl:id "GO:0044452"^^xsd:string, + oboInOwl:hasExactSynonym "nucleolus component"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a nucleolus, a small, dense body one or more of which are present in the nucleus of eukaryotic cells. It is rich in RNA and protein, is not bounded by a limiting membrane, and is not seen during mitosis."^^xsd:string, + rdfs:label "nucleolar part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005730) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005730, + obo:GO_0044428 + + +Class: obo:GO_0044453 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044453"^^xsd:string, + rdfs:label "nuclear membrane part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the nuclear membrane, the envelope that surrounds the nucleus of eukaryotic cells."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0031965) + + SubClassOf: + obo:GO_0044425, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031965 + + +Class: obo:GO_0033254 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11823419"^^xsd:string, + oboInOwl:hasDbXref "PMID:17079729"^^xsd:string + obo:IAO_0000115 "A protein complex that contains four related proteins that have been implicated in several membrane-related processes, such as sorting of H+-translocating ATPases, endocytosis, ER-Golgi trafficking, vacuole fusion, vacuolar polyphosphate homeostasis and the microautophagic scission of vesicles into the vacuolar lumen. The complex is enriched at the vacuolar membrane, but also found in other cellular compartments, including the ER and the cell periphery. In Saccharomyces, the subunits are Vtc1p, Vtc2p, Vtc3p and Vtc4p."^^xsd:string, + rdfs:label "vacuolar transporter chaperone complex"^^xsd:string, + oboInOwl:id "GO:0033254"^^xsd:string, + oboInOwl:hasExactSynonym "VTC complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005779 + + Annotations: + oboInOwl:id "GO:0005779"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to peroxisomal membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a peroxisomal membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0031301, + obo:GO_0031231 + + +Class: obo:GO_0044454 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a nuclear chromosome, a chromosome found in the nucleus of a eukaryotic cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044454"^^xsd:string, + rdfs:label "nuclear chromosome part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0000228) + + SubClassOf: + obo:GO_0044427, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0000228 + + +Class: obo:GO_0005778 + + Annotations: + oboInOwl:hasExactSynonym "peroxisome membrane"^^xsd:string, + oboInOwl:id "GO:0005778"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a peroxisome."^^xsd:string, + rdfs:label "peroxisomal membrane"^^xsd:string + + SubClassOf: + obo:GO_0044439, + obo:GO_0031903 + + +Class: obo:GO_0044455 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a mitochondrial membrane, either of the lipid bilayers that surround the mitochondrion and form the mitochondrial envelope."^^xsd:string, + oboInOwl:id "GO:0044455"^^xsd:string, + rdfs:label "mitochondrial membrane part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0031966) + + SubClassOf: + obo:GO_0044425, + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0031966 + + +Class: obo:GO_0019183 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a transmembrane channel through which chloride ions may pass in response to histamine binding to the channel complex or one of its constituent parts."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "histamine-gated chloride channel complex"^^xsd:string, + oboInOwl:id "GO:0019183"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0034707 + + +Class: obo:GO_0044456 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a synapse, the junction between a nerve fiber of one neuron and another neuron or muscle fiber or glial cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044456"^^xsd:string, + rdfs:label "synapse part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0045202) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045202, + obo:GO_0005575 + + +Class: obo:GO_0005777 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao499555322"^^xsd:string, + rdfs:label "peroxisome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0019818"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A small, membrane-bounded organelle that uses dioxygen (O2) to oxidize organic molecules; contains some enzymes that produce and others that degrade hydrogen peroxide (H2O2)."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Peroxisome"^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string, + oboInOwl:id "GO:0005777"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset + + SubClassOf: + obo:GO_0042579 + + +Class: obo:GO_0070289 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19154717"^^xsd:string + oboInOwl:hasRelatedSynonym "serum ferritin complex"^^xsd:string, + rdfs:label "extracellular ferritin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19154717"^^xsd:string + obo:IAO_0000115 "A ferritin complex located in the extracellular region. Extracellular ferritin complexes contain L (light) chains but few or no H (heavy) chains."^^xsd:string, + oboInOwl:id "GO:0070289"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:GO_0070288 + + +Class: obo:GO_0005771 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12122203"^^xsd:string + oboInOwl:hasExactSynonym "multivesicular endosome"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao2045955158"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005771"^^xsd:string, + rdfs:label "multivesicular body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11566881"^^xsd:string + obo:IAO_0000115 "A type of late endosome in which regions of the limiting endosomal membrane invaginate to form internal vesicles; membrane proteins that enter the internal vesicles are sequestered from the cytoplasm."^^xsd:string, + oboInOwl:hasExactSynonym "MVB"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12122203"^^xsd:string + oboInOwl:hasExactSynonym "MVE"^^xsd:string + + SubClassOf: + obo:GO_0005770 + + +Class: obo:GO_0016222 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016222"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14500733"^^xsd:string, + oboInOwl:hasDbXref "PMID:7753822"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the formation of procollagen trans-4-hydroxy-L-proline and succinate from procollagen L-proline and 2-oxoglutarate, requiring Fe2+ and ascorbate. Contains two alpha subunits that contribute to most parts of the catalytic sites, and two beta subunits that are identical to protein-disulfide isomerase."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.14.11.2"^^xsd:string + oboInOwl:hasExactSynonym "procollagen-proline, 2-oxoglutarate-4-dioxygenase complex"^^xsd:string, + rdfs:label "procollagen-proline 4-dioxygenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.14.11.2"^^xsd:string + oboInOwl:hasBroadSynonym "prolyl 4-hydroxylase complex"^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0005770 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11964142"^^xsd:string, + oboInOwl:hasDbXref "PMID:2557062"^^xsd:string + obo:IAO_0000115 "A prelysosomal endocytic organelle differentiated from early endosomes by lower lumenal pH and different protein composition. Late endosomes are more spherical than early endosomes and are mostly juxtanuclear, being concentrated near the microtubule organizing center."^^xsd:string, + oboInOwl:hasExactSynonym "prevacuolar compartment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005770"^^xsd:string, + oboInOwl:hasBroadSynonym "PVC"^^xsd:string, + rdfs:label "late endosome"^^xsd:string + + SubClassOf: + obo:GO_0005768 + + +Class: obo:GO_0000500 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11500378"^^xsd:string + obo:IAO_0000115 "A complex required for the transcription of rDNA by RNA polymerase I. In yeast the complex consists of Rrrn5p, Rrn9p, Rrn10p, histones H3 and H4, and Uaf30p."^^xsd:string, + oboInOwl:id "GO:0000500"^^xsd:string, + oboInOwl:hasExactSynonym "UAF"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "RNA polymerase I upstream activation factor complex"^^xsd:string, + rdfs:label "RNA polymerase I upstream activating factor complex"^^xsd:string + + SubClassOf: + obo:GO_0000120 + + +Class: obo:GO_0070288 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ferritin complex"^^xsd:string, + oboInOwl:id "GO:0070288"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19154717"^^xsd:string + obo:IAO_0000115 "A protein complex that binds iron and acts as a major iron storage system. Intracellular and extracellular ferritin complexes have different ratios of two types of ferritin monomer, the L (light) chain and H (heavy) chain."^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0005759 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1804523077"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031980"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial lumen"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Mitochondrial_matrix"^^xsd:string, + oboInOwl:id "GO:0005759"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao-1899375636"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:as"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The gel-like material, with considerable fine structure, that lies in the matrix space, or lumen, of a mitochondrion. It contains the enzymes of the tricarboxylic acid cycle and, in some organisms, the enzymes concerned with fatty acid oxidation."^^xsd:string, + rdfs:label "mitochondrial matrix"^^xsd:string, + oboInOwl:hasNarrowSynonym "mitochondrial stroma"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:GO_0070013 + + +Class: obo:GO_0044459 + + Annotations: + rdfs:label "plasma membrane part"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of the plasma membrane, the membrane surrounding a cell that separates the cell from its external environment. It consists of a phospholipid bilayer and associated proteins."^^xsd:string, + oboInOwl:id "GO:0044459"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005886, + obo:GO_0044425 + + +Class: obo:GO_0019197 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "phosphoenolpyruvate-dependent sugar phosphotransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "Includes phosphoenolpyruvate-protein phosphatase (enzyme I of the phosphotransferase system) and protein-N(PI)-phosphohistidine-sugar phosphotransferase (enzyme II of the phosphotransferase system)."^^xsd:string, + oboInOwl:id "GO:0019197"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0044457 + + Annotations: + rdfs:label "cell septum part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044457"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a cell septum, a structure composed of peptidoglycan and often chitin in addition to other materials. It usually forms perpendicular to the long axis of a cell or hypha and grows centripetally from the cell wall to the center of the cell and often functions in the compartmentalization of a cell into two daughter cells."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0030428) + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0030428 + + +Class: obo:GO_0044462 + + Annotations: + oboInOwl:id "GO:0044462"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "external encapsulating structure part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of an external encapsulating structure, a structure that lies outside the plasma membrane and surrounds the entire cell."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0030312) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030312, + obo:GO_0044464 + + +Class: obo:GO_0005763 + + Annotations: + oboInOwl:hasNarrowSynonym "28S ribosomal subunit, mitochondrial"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The smaller of the two subunits of a mitochondrial ribosome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial ribosomal small subunit complex"^^xsd:string, + oboInOwl:id "GO:0005763"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial ribosomal SSU complex"^^xsd:string, + rdfs:label "mitochondrial small ribosomal subunit"^^xsd:string + + EquivalentTo: + obo:GO_0015935 + and (obo:BFO_0000050 some obo:GO_0005761) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005761, + obo:GO_0044429, + obo:GO_0000314 + + +Class: obo:GO_0072516 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string + oboInOwl:hasRelatedSynonym "viral assembly site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20374631"^^xsd:string + obo:IAO_0000115 "A membrane-bounded compartment that forms in the cytoplasm of virus-infected cells, in which virus assembly takes place."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral assembly compartment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "virion assembly compartment"^^xsd:string, + oboInOwl:id "GO:0072516"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0005762 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + obo:IAO_0000115 "The larger of the two subunits of a mitochondrial ribosome. Two sites on the ribosomal large subunit are involved in translation: the aminoacyl site (A site) and peptidyl site (P site)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005762"^^xsd:string, + oboInOwl:hasNarrowSynonym "39S ribosomal subunit, mitochondrial"^^xsd:string, + rdfs:label "mitochondrial large ribosomal subunit"^^xsd:string + + EquivalentTo: + obo:GO_0015934 + and (obo:BFO_0000050 some obo:GO_0005761) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005761, + obo:GO_0044429, + obo:GO_0000315 + + +Class: obo:GO_0044463 + + Annotations: + oboInOwl:id "GO:0044463"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a cell projection, a prolongation or process extending from a cell, e.g. a flagellum or axon."^^xsd:string, + rdfs:label "cell projection part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0042995) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042995, + obo:GO_0044464 + + +Class: obo:GO_0072517 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell viral assembly compartment"^^xsd:string, + oboInOwl:id "GO:0072517"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string + oboInOwl:hasRelatedSynonym "host cell viral assembly site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "host cell virion assembly compartment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:20374631"^^xsd:string + obo:IAO_0000115 "A membrane-bounded compartment that forms in the cytoplasm of the host cell, in which virus assembly takes place."^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0044460 + + Annotations: + rdfs:label "flagellum part"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044460"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a flagellum, a long whiplike or feathery structure borne either singly or in groups by the motile cells of many bacteria and unicellular eukaryotes and by the motile male gametes of many eukaryotic organisms, which propel the cell through a liquid medium."^^xsd:string, + oboInOwl:hasExactSynonym "flagellum component"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0019861) + + SubClassOf: + obo:GO_0044463, + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0019861, + obo:GO_0044422 + + +Class: obo:GO_0005765 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005765"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding the lysosome and separating its contents from the cell cytoplasm."^^xsd:string, + rdfs:label "lysosomal membrane"^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:BFO_0000050 some obo:GO_0005764 + + +Class: obo:GO_0005764 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao585356902"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005764"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "lysosome"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Lysosome"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A small lytic vacuole that has cell cycle-independent morphology and is found in most animal cells and that contains a variety of hydrolases, most of which have their maximal activities in the pH range 5-6. The contained enzymes display latency if properly isolated. About 40 different lysosomal hydrolases are known and lysosomes have a great variety of morphologies and functions."^^xsd:string + + SubClassOf: + obo:GO_0000323 + + +Class: obo:GO_0044461 + + Annotations: + oboInOwl:id "GO:0044461"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum part"^^xsd:string, + rdfs:label "bacterial-type flagellum part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Any constituent part of flagellum, a 20 nm diameter filament composed of subunits of flagellin driven passively at its base by a motor powered by the transmembrane proton potential. Examples of this component are found in bacterial species."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0009288) + + SubClassOf: + obo:GO_0044460, + obo:BFO_0000050 some obo:GO_0009288 + + +Class: obo:GO_0005767 + + Annotations: + oboInOwl:id "GO:0005767"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "secondary lysosome"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1549842807"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Vacuole formed by the fusion of a lysosome with an organelle (autosome) or with a primary phagosome."^^xsd:string + + SubClassOf: + obo:GO_0005764 + + +Class: obo:GO_0005766 + + Annotations: + oboInOwl:id "GO:0005766"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "primary lysosome"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1140587416"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A lysosome before it has fused with a vesicle or vacuole."^^xsd:string + + SubClassOf: + obo:GO_0005764 + + +Class: obo:GO_0005769 + + Annotations: + oboInOwl:id "GO:0005769"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "early endosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19696797"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle that receives incoming material from primary endocytic vesicles that have been generated by clathrin-dependent and clathrin-independent endocytosis; vesicles fuse with the early endosome to deliver cargo for sorting into recycling or degradation pathways."^^xsd:string + + SubClassOf: + obo:GO_0005768 + + +Class: obo:GO_0044464 + + Annotations: + rdfs:label "cell part"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044464"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "protoplast"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a cell, the basic structural and functional unit of all organisms."^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0005623) + + SubClassOf: + obo:GO_0005575, + obo:BFO_0000050 some obo:GO_0005623 + + +Class: obo:GO_0032195 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "post-lysosomal vacuole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pf"^^xsd:string, + oboInOwl:hasDbXref "PMID:9276759"^^xsd:string, + oboInOwl:hasDbXref "PMID:9394012"^^xsd:string + obo:IAO_0000115 "A membrane-bounded intracellular vesicle formed late in the endocytic pathway when the pH in the vacuole becomes neutral prior to exocytosis."^^xsd:string, + oboInOwl:id "GO:0032195"^^xsd:string + + SubClassOf: + obo:GO_0005773, + obo:GO_0030139 + + +Class: obo:GO_0005768 + + Annotations: + oboInOwl:id "GO:0005768"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "PMID:19696797"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle to which materials ingested by endocytosis are delivered."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Endosome"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "endosome"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1720343330"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0030289 + + Annotations: + rdfs:label "protein phosphatase 4 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10026142"^^xsd:string + obo:IAO_0000115 "The complex formed by the catalytic subunit of protein phosphatase 4 plus a regulatory subunit."^^xsd:string, + oboInOwl:id "GO:0030289"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0008287 + + +Class: obo:GO_0005761 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A ribosome found in the mitochondrion of a eukaryotic cell; contains a characteristic set of proteins distinct from those of cytosolic ribosomes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "55S ribosome, mitochondrial"^^xsd:string, + oboInOwl:id "GO:0005761"^^xsd:string, + rdfs:label "mitochondrial ribosome"^^xsd:string + + EquivalentTo: + obo:GO_0005840 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044429, + obo:GO_0000313, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0005760 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045093"^^xsd:string + obo:IAO_0000115 "A DNA polymerase complex consisting of a large subunit, responsible for the catalytic activities, and a small accessory subunit. Functions in the replication and repair of mitochondrial DNA."^^xsd:string, + oboInOwl:id "GO:0005760"^^xsd:string, + rdfs:label "gamma DNA polymerase complex"^^xsd:string + + SubClassOf: + obo:GO_0042575, + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0032807 + + Annotations: + rdfs:label "DNA ligase IV complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "DNA ligase IV-XRCC4 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16314503"^^xsd:string + obo:IAO_0000115 "A eukaryotically conserved protein complex that contains DNA ligase IV and is involved in DNA repair by non-homologous end joining; in addition to the ligase, the complex also contains XRCC4 or a homolog, e.g. Saccharomyces Lif1p."^^xsd:string, + oboInOwl:id "GO:0032807"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0032806 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15047695"^^xsd:string, + oboInOwl:hasDbXref "PMID:16721054"^^xsd:string, + oboInOwl:hasDbXref "PMID:17079683"^^xsd:string + obo:IAO_0000115 "A protein complex that phosphorylates amino acid residues of RNA polymerase II C-terminal domain repeats; phosphorylation occurs mainly on Ser2 and Ser5."^^xsd:string, + rdfs:label "carboxy-terminal domain protein kinase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "CTDK complex"^^xsd:string, + oboInOwl:id "GO:0032806"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0032421 + + Annotations: + oboInOwl:id "GO:0032421"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:15661519"^^xsd:string, + oboInOwl:hasDbXref "PMID:7840137"^^xsd:string + obo:IAO_0000115 "An actin-based, cross-linked cellular protrusion on the apical surface of auditory and vestibular hair cells. Stereocilium bundles act as mechanosensory organelles by responding to fluid motion or fluid pressure changes."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "stereocilium bundle"^^xsd:string, + oboInOwl:hasExactSynonym "stereocilia bundle"^^xsd:string + + SubClassOf: + obo:GO_0043232 + + +Class: obo:GO_0032809 + + Annotations: + rdfs:label "neuronal cell body membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The plasma membrane of a neuron cell body - excludes the plasma membrane of cell projections such as axons and dendrites."^^xsd:string, + oboInOwl:id "GO:0032809"^^xsd:string, + oboInOwl:hasExactSynonym "neuronal cell soma membrane"^^xsd:string, + oboInOwl:hasExactSynonym "neuron cell body membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043025, + obo:GO_0044298 + + +Class: obo:GO_0032420 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032420"^^xsd:string, + rdfs:label "stereocilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "PMID:15661519"^^xsd:string, + oboInOwl:hasDbXref "PMID:7840137"^^xsd:string + obo:IAO_0000115 "An actin-based protrusion from the apical surface of auditory and vestibular hair cells. Bundles of stereocilia act as mechanosensory organelles."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0032421, + obo:GO_0044422, + obo:GO_0005902 + + +Class: obo:GO_0005749 + + Annotations: + oboInOwl:hasAlternativeId "GO:0008136"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial respiratory chain complex II"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial fumarate reductase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A protein complex located in the mitochondrial inner membrane that forms part of the mitochondrial respiratory chain. Contains the four polypeptide subunits of succinate dehydrogenase, flavin-adenine dinucleotide and iron-sulfur. Catalyzes the oxidation of succinate by ubiquinone. Connects the TCA cycle with the respiratory chain."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0019738"^^xsd:string, + oboInOwl:id "GO:0005749"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0009362"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030390"^^xsd:string + + EquivalentTo: + obo:GO_0045283 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045257, + obo:GO_0044455, + obo:GO_0045283, + obo:BFO_0000050 some obo:GO_0005746 + + +Class: obo:GO_0005758 + + Annotations: + oboInOwl:hasAlternativeId "GO:0031971"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao118944228"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial envelope lumen"^^xsd:string, + oboInOwl:hasRelatedSynonym "mitochondrial membrane lumen"^^xsd:string, + oboInOwl:id "GO:0005758"^^xsd:string, + rdfs:label "mitochondrial intermembrane space"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region between the inner and outer lipid bilayers of the mitochondrial envelope."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005740, + obo:GO_0044429, + obo:GO_0031970 + + +Class: obo:GO_0033276 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033276"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10373431"^^xsd:string, + oboInOwl:hasDbXref "PMID:9603525"^^xsd:string + obo:IAO_0000115 "A protein complex that does not contain either a TATA-binding protein (TBP) or a TBP-like factor, but is composed of several TAFIIs and other proteins, including a histone acetyltransferase. This complex is able to nucleate transcription initiation by RNA polymerase II, can mediate transcriptional activation, and has histone acetyltransferase activity."^^xsd:string, + rdfs:label "transcription factor TFTC complex"^^xsd:string + + SubClassOf: + obo:GO_0070461, + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0005757 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005757"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10393078"^^xsd:string + obo:IAO_0000115 "A protein complex that connects the inner and outer membranes of animal mitochondria and acts as a pore that can open transiently to allow free diffusion of solutes between the mitochondrial matrix and the cytosol."^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial PT pore complex"^^xsd:string, + rdfs:label "mitochondrial permeability transition pore complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005740, + obo:GO_0044429, + obo:GO_0046930 + + +Class: obo:GO_0005756 + + Annotations: + rdfs:label "mitochondrial proton-transporting ATP synthase, central stalk"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005756"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "One of two stalks that connect the catalytic core of the hydrogen-transporting ATP synthase to the mitochondrial membrane-associated F0 proteins; rotates within the catalytic core during catalysis."^^xsd:string + + EquivalentTo: + obo:GO_0045269 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0000275, + obo:GO_0045269 + + +Class: obo:GO_0005754 + + Annotations: + oboInOwl:id "GO:0005754"^^xsd:string, + rdfs:label "mitochondrial proton-transporting ATP synthase, catalytic core"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "The hexamer, comprising three alpha and three beta subunits, that possesses the catalytic activity of the mitochondrial hydrogen-transporting ATP synthase."^^xsd:string + + EquivalentTo: + obo:GO_0045267 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:GO_0045267, + obo:BFO_0000050 some obo:GO_0000275 + + +Class: obo:GO_0005753 + + Annotations: + oboInOwl:id "GO:0005753"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial proton-transporting ATP synthase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A proton-transporting ATP synthase complex found in the mitochondrial membrane."^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial respiratory chain complex V"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0016470"^^xsd:string + + EquivalentTo: + obo:GO_0045259 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:GO_0045259, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0005751 + + Annotations: + oboInOwl:id "GO:0005751"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial respiratory chain complex IV"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A protein complex located in the mitochondrial inner membrane that forms part of the mitochondrial respiratory chain. Contains the 13 polypeptide subunits of cytochrome c oxidase, including cytochrome a and cytochrome a3. Catalyzes the oxidation of reduced cytochrome c by dioxygen (O2)."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005752"^^xsd:string + + EquivalentTo: + obo:GO_0045277 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005746, + obo:GO_0045277 + + +Class: obo:GO_0071920 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cleavage body"^^xsd:string, + oboInOwl:id "GO:0071920"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10564273"^^xsd:string, + oboInOwl:hasDbXref "PMID:11598190"^^xsd:string, + oboInOwl:hasDbXref "PMID:8654386"^^xsd:string + obo:IAO_0000115 "A nuclear body that contains proteins involved in pre-mRNA 3'-end cleavage and polyadenylation, such as DDX1, CSTF2 and CPSFs, as well as the transcription factors TFIIE and TFIIF. Cleavage bodies are localized adjacent to Cajal bodies and are involved in mRNA3'-end processing."^^xsd:string + + SubClassOf: + obo:GO_0016604 + + +Class: obo:GO_0005750 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasRelatedSynonym "mitochondrial electron transport complex III"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0015008"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "mitochondrial complex III"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "mitochondrial ubiquinol-cytochrome-c reductase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "mitochondrial ubiquinol-cytochrome c oxidoreductase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "mitochondrial cytochrome bc1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A protein complex located in the mitochondrial inner membrane that forms part of the mitochondrial respiratory chain. Contains about 10 polypeptide subunits including four redox centers: cytochrome b/b6, cytochrome c1 and an 2Fe-2S cluster. Catalyzes the oxidation of ubiquinol by oxidized cytochrome c1."^^xsd:string, + rdfs:label "mitochondrial respiratory chain complex III"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "mitochondrial cytochrome bc(1) complex"^^xsd:string, + oboInOwl:id "GO:0005750"^^xsd:string + + EquivalentTo: + obo:GO_0045275 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005746, + obo:GO_0045275 + + +Class: obo:GO_0032419 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "extrinsic to lysosomal membrane"^^xsd:string, + rdfs:label "extrinsic to lysosome membrane"^^xsd:string, + oboInOwl:id "GO:0032419"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the lysosome membrane, but not integrated into the hydrophobic region."^^xsd:string + + SubClassOf: + obo:GO_0000306, + obo:BFO_0000050 some obo:GO_0005765 + + +Class: obo:GO_0033270 + + Annotations: + oboInOwl:hasExactSynonym "paranode"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "An axon part that is located adjacent to the nodes of Ranvier and surrounded by lateral loop portions of myelin sheath."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033270"^^xsd:string, + rdfs:label "paranode region of axon"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao234066064"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0000506 + + Annotations: + oboInOwl:hasExactSynonym "GPI-N-acetylglucosaminyltransferase complex"^^xsd:string, + rdfs:comment "Note that this term should not be confused with 'GPI-anchor transamidase complex ; GO:0042765', which represents a distinct complex with a different catalytic activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "glycosylphosphatidylinositol-N-acetylglucosaminyltransferase (GPI-GnT) complex"^^xsd:string, + oboInOwl:hasExactSynonym "GPI-GnT complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kp"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:10944123"^^xsd:string, + oboInOwl:hasDbXref "PMID:15163411"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the transfer of GlcNAc from UDP-GlcNAc to an acceptor phosphatidylinositol, the first step in the production of GPI anchors for cell surface proteins. The complex contains PIG-A, PIG-C, PIG-H, PIG-Q, PIG-P, and DPM2 in human, and Eri1p, Gpi1p, Gpi2p, Gpi15p, Gpi19p, and Spt14p in budding yeast."^^xsd:string, + oboInOwl:hasExactSynonym "GPI-GlcNAc transferase complex"^^xsd:string, + oboInOwl:id "GO:0000506"^^xsd:string + + SubClassOf: + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0000502 + + Annotations: + rdfs:label "proteasome complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string + obo:IAO_0000115 "A large multisubunit complex which catalyzes protein degradation. This complex consists of the barrel shaped proteasome core complex and one or two associated proteins or complexes that act in regulating entry into or exit from the core."^^xsd:string, + oboInOwl:hasNarrowSynonym "26S proteasome"^^xsd:string, + oboInOwl:id "GO:0000502"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0034044 + + Annotations: + oboInOwl:id "GO:0034044"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16498409"^^xsd:string, + oboInOwl:hasDbXref "PMID:17000877"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a coat structure on vesicles involved in exocytosis of proteins from the trans-Golgi network to the cell surface; in Saccharomyces, the complex contains Chs5p, Chs6p, and Chs6p paralogues."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "exomer complex"^^xsd:string + + SubClassOf: + obo:GO_0044433, + obo:BFO_0000050 some obo:GO_0030140, + obo:GO_0043234, + obo:GO_0044431 + + +Class: obo:GO_0034045 + + Annotations: + oboInOwl:hasRelatedSynonym "isolation membrane"^^xsd:string, + oboInOwl:id "GO:0034045"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "PAS membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20811355"^^xsd:string + oboInOwl:hasRelatedSynonym "phagophore"^^xsd:string, + rdfs:label "pre-autophagosomal structure membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:16874040"^^xsd:string, + oboInOwl:hasDbXref "PMID:17382324"^^xsd:string + obo:IAO_0000115 "A cellular membrane associated with the pre-autophagosomal structure."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000407, + obo:GO_0016020, + obo:GO_0044444 + + +Class: obo:GO_0030689 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Noc complex"^^xsd:string, + rdfs:comment "Note that the definition uses Saccharomyces gene product names because this complex has only been described in Saccharomyces cerevisiae and no other names have yet arisen; the term nevertheless can be used for analogous complexes in other eukaryotes, and the definition can be changed if better wording is found."^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:12446671"^^xsd:string + obo:IAO_0000115 "Any of several heterodimers containing one or two Noc proteins, associated with preribosomal complexes; involved in ribosome biogenesis."^^xsd:string, + oboInOwl:id "GO:0030689"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0005737 + + Annotations: + rdfs:label "cytoplasm"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cytoplasm"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0005737"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0030687 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "preribosome, large subunit precursor"^^xsd:string, + oboInOwl:id "GO:0030687"^^xsd:string, + rdfs:comment "Note that this complex is 66S in Saccharomyces."^^xsd:string, + oboInOwl:hasNarrowSynonym "66S preribosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10567516"^^xsd:string + obo:IAO_0000115 "A preribosomal complex consisting of 27SA, 27SB, and/or 7S pre-rRNA, 5S rRNA, ribosomal proteins including late-associating large subunit proteins, and associated proteins; a precursor of the eukaryotic cytoplasmic large ribosomal subunit."^^xsd:string + + SubClassOf: + obo:GO_0030684 + + +Class: obo:GO_0030688 + + Annotations: + rdfs:label "preribosome, small subunit precursor"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10567516"^^xsd:string + obo:IAO_0000115 "A preribosomal complex consisting of 20S pre-rRNA, ribosomal proteins including late-associating small subunit proteins, and associated proteins; a precursor of the eukaryotic cytoplasmic small ribosomal subunit."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030688"^^xsd:string, + oboInOwl:hasNarrowSynonym "43S preribosome"^^xsd:string, + rdfs:comment "Note that this complex is 43S in Saccharomyces."^^xsd:string + + SubClassOf: + obo:GO_0030684 + + +Class: obo:GO_0005739 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A semiautonomous, self replicating organelle that occurs in varying numbers, shapes, and sizes in the cytoplasm of virtually all eukaryotic cells. It is notably the site of tissue respiration."^^xsd:string, + oboInOwl:id "GO:0005739"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Mitochondrion"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1860313010"^^xsd:string, + rdfs:label "mitochondrion"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondria"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0030685 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030685"^^xsd:string, + rdfs:label "nucleolar preribosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10567516"^^xsd:string + obo:IAO_0000115 "Any complex of pre-rRNAs, ribosomal proteins, and associated proteins formed in the nucleolus during ribosome biogenesis."^^xsd:string + + EquivalentTo: + obo:GO_0030684 + and (obo:BFO_0000050 some obo:GO_0005730) + + SubClassOf: + obo:GO_0044452, + obo:GO_0030684 + + +Class: obo:GO_0030686 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "90S preribosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12150911"^^xsd:string, + oboInOwl:hasDbXref "PMID:12957375"^^xsd:string, + oboInOwl:hasDbXref "PMID:15120992"^^xsd:string + obo:IAO_0000115 "A large ribonucleoprotein complex considered to be the earliest preribosomal complex. In S. cerevisiae, it has a size of 90S and consists of the 35S pre-rRNA, early-associating ribosomal proteins most of which are part of the small ribosomal subunit, the U3 snoRNA and associated proteins."^^xsd:string, + oboInOwl:id "GO:0030686"^^xsd:string + + SubClassOf: + obo:GO_0030684 + + +Class: obo:GO_0005745 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "m-AAA complex"^^xsd:string, + oboInOwl:id "GO:0005745"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:12417197"^^xsd:string, + oboInOwl:hasDbXref "PMID:21147776"^^xsd:string + obo:IAO_0000115 "Protease complex of the mitochondrial inner membrane that is involved in mitochondrial protein turnover and in processing of proteins imported into mitochondria."^^xsd:string + + SubClassOf: + obo:GO_0031305, + obo:GO_0043234 + + +Class: obo:GO_0071914 + + Annotations: + rdfs:label "prominosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "prominin-containing extracellular membrane vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071914"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15976444"^^xsd:string, + oboInOwl:hasDbXref "PMID:17109118"^^xsd:string, + oboInOwl:hasDbXref "PMID:17283184"^^xsd:string + obo:IAO_0000115 "An extracellular membrane-bounded vesicle that contains prominin proteins (in mouse Prom1/CD33 or Prom2) and are found in body fluids including ventricular fluid, saliva, urine and seminal fluid. In the ventricular fluid of the developing mouse brain two major classes of these particles have been observed (P2 particles of 500-1000 nm and P4 particles of 50-80 nm) which likely originate from microvilli, primary cilia and/or the midbody of neuroepithelial cells. The physiological role is not known."^^xsd:string + + SubClassOf: + obo:GO_0031988, + obo:GO_0065010 + + +Class: obo:GO_0033263 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033263"^^xsd:string, + rdfs:label "CORVET complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17488625"^^xsd:string + obo:IAO_0000115 "A multimeric protein complex that acts as an endosomal tethering complex (CORVET = class C core vacuole/endosome tethering) by cooperating with Rab GTPases to capture endosomal vesicles and trap them prior to the action of SNAREs; the complex is involved in endo-lysosomal biogenesis and required for transport between endosome and vacuole. The Saccharomyces cerevisiae complex contains Vps8p, Vps3p, Pep5p, Vps16p, Pep3p, and Vps33p."^^xsd:string + + SubClassOf: + obo:GO_0044440, + obo:GO_0043234 + + +Class: obo:GO_0005744 + + Annotations: + oboInOwl:hasNarrowSynonym "Tim23 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005744"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "mitochondrial inner membrane presequence translocase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.6.3.51"^^xsd:string, + oboInOwl:hasDbXref "PMID:8851659"^^xsd:string + obo:IAO_0000115 "The protein transport machinery of the mitochondrial inner membrane that contains three essential Tim proteins: Tim17 and Tim23 are thought to build a preprotein translocation channel while Tim44 interacts transiently with the matrix heat-shock protein Hsp70 to form an ATP-driven import motor."^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial inner membrane translocase complex"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial inner membrane pre-sequence translocase complex"^^xsd:string, + rdfs:comment "See also the cellular component term 'mitochondrial inner membrane ; GO:0005743'."^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005743, + obo:GO_0043234 + + +Class: obo:GO_0030694 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10572114"^^xsd:string, + oboInOwl:hasDbXref "PMID:11133968"^^xsd:string, + oboInOwl:hasDbXref "PMID:12624192"^^xsd:string + obo:IAO_0000115 "The central portion of the flagellar basal body, which spans the periplasm and threads through the rings. Examples of this component are found in Bacterial species."^^xsd:string, + rdfs:label "bacterial-type flagellum basal body, rod"^^xsd:string, + oboInOwl:id "GO:0030694"^^xsd:string, + oboInOwl:hasExactSynonym "flagellin-based flagellum basal body, rod"^^xsd:string, + oboInOwl:hasExactSynonym "flagellar basal body, rod"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009425, + obo:GO_0044461 + + +Class: obo:GO_0005747 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005747"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A protein complex located in the mitochondrial inner membrane that forms part of the mitochondrial respiratory chain. It contains about 25 different polypeptide subunits, including NADH dehydrogenase (ubiquinone), flavin mononucleotide and several different iron-sulfur clusters containing non-heme iron. The iron undergoes oxidation-reduction between Fe(II) and Fe(III), and catalyzes proton translocation linked to the oxidation of NADH by ubiquinone."^^xsd:string, + rdfs:label "mitochondrial respiratory chain complex I"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005748"^^xsd:string + + EquivalentTo: + obo:GO_0045271 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045271, + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005746 + + +Class: obo:GO_0005746 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial electron transport chain"^^xsd:string, + oboInOwl:id "GO:0005746"^^xsd:string, + rdfs:label "mitochondrial respiratory chain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "GOC:ecd"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The protein complexes that form the mitochondrial electron transport system (the respiratory chain), associated with the inner mitochondrial membrane. The respiratory chain complexes transfer electrons from an electron donor to an electron acceptor and are associated with a proton pump to create a transmembrane electrochemical gradient."^^xsd:string + + EquivalentTo: + obo:GO_0070469 + and (obo:BFO_0000050 some obo:GO_0005743) + + SubClassOf: + obo:GO_0044455, + obo:GO_0070469, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0030692 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "Nop7 complex"^^xsd:string, + rdfs:label "Noc4p-Nop14p complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12446671"^^xsd:string + obo:IAO_0000115 "A heterodimer associated with precursors of the eukaryotic small ribosomal subunit, including the 90S preribosome; involved in small subunit biogenesis."^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + oboInOwl:id "GO:0030692"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18448671"^^xsd:string + oboInOwl:hasExactSynonym "Nop7 subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:BFO_0000050 some obo:GO_0030688, + obo:GO_0030689, + obo:GO_0044444 + + +Class: obo:GO_0005741 + + Annotations: + oboInOwl:hasExactSynonym "outer mitochondrial membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005741"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the mitochondrial envelope."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Outer_mitochondrial_membrane"^^xsd:string, + rdfs:label "mitochondrial outer membrane"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1289741256"^^xsd:string + + SubClassOf: + obo:GO_0031968, + obo:GO_0031966 + + +Class: obo:GO_0030691 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Noc2p-Noc3p complex"^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + oboInOwl:id "GO:0030691"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12446671"^^xsd:string + obo:IAO_0000115 "A heterodimer associated with 66S preribosomes; also found throughout the nucleoplasm; involved in ribosomal large subunit biogenesis."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030687, + obo:GO_0030689, + obo:GO_0044444 + + +Class: obo:GO_0033267 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A part of an axon, a cell projection of a neuron."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "axon part"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao280355188"^^xsd:string, + oboInOwl:id "GO:0033267"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0030424) + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030424 + + +Class: obo:GO_0005740 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string, + oboInOwl:hasDbXref "GOC:pz"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the mitochondrion and separating its contents from the cell cytoplasm; includes the intermembrane space."^^xsd:string, + oboInOwl:id "GO:0005740"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "mitochondrial envelope"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0031967, + obo:GO_0044429 + + +Class: obo:GO_0030690 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12446671"^^xsd:string + obo:IAO_0000115 "A heterodimer associated with 90S and 66S preribosomes in the nucleolus; involved in ribosomal large subunit biogenesis."^^xsd:string, + rdfs:label "Noc1p-Noc2p complex"^^xsd:string, + oboInOwl:id "GO:0030690"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:BFO_0000050 some obo:GO_0030687, + obo:GO_0030689, + obo:GO_0044444 + + +Class: obo:GO_0033268 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:birnlex_1152_2"^^xsd:string, + rdfs:label "node of Ranvier"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nodes_of_Ranvier"^^xsd:string, + oboInOwl:id "GO:0033268"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "An axon part that is a gap in the myelin where voltage-gated sodium channels cluster and saltatory conduction is executed."^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0005743 + + Annotations: + oboInOwl:hasExactSynonym "inner mitochondrial membrane"^^xsd:string, + oboInOwl:id "GO:0005743"^^xsd:string, + rdfs:label "mitochondrial inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1371347282"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the mitochondrial envelope. It is highly folded to form cristae."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Inner_mitochondrial_membrane"^^xsd:string + + SubClassOf: + obo:GO_0019866, + obo:GO_0031966 + + +Class: obo:GO_0033269 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "internode"^^xsd:string, + rdfs:label "internode region of axon"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao206157942"^^xsd:string, + oboInOwl:id "GO:0033269"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "An axon part that is located between the nodes of Ranvier and surrounded by compact myelin sheath."^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0005742 + + Annotations: + oboInOwl:id "GO:0005742"^^xsd:string, + oboInOwl:hasNarrowSynonym "TOM complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12581629"^^xsd:string + obo:IAO_0000115 "A large complex of the mitochondrial outer membrane that mediates transport of proteins into all mitochondrial compartments."^^xsd:string, + rdfs:label "mitochondrial outer membrane translocase complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "GIP complex"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005741, + obo:GO_0043234 + + +Class: obo:GO_0072534 + + Annotations: + rdfs:label "perineuronal net"^^xsd:string, + oboInOwl:id "GO:0072534"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18364019"^^xsd:string + obo:IAO_0000115 "A dense extracellular matrix (ECM) structure that forms around many neuronal cell bodies and dendrites late in development and is responsible for synaptic stabilization in the adult brain."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sl"^^xsd:string + oboInOwl:hasExactSynonym "PNN"^^xsd:string + + SubClassOf: + obo:GO_0044420 + + +Class: obo:GO_0072536 + + Annotations: + oboInOwl:id "GO:0072536"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12023369"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-23. The complex comprises two subunits, including the same beta subunit found in the interleukin-12 receptor."^^xsd:string, + rdfs:label "interleukin-23 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "IL-23 receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0032160 + + Annotations: + oboInOwl:hasRelatedSynonym "septin bar"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "Arrays of septin filaments, or bars, found in a series of filamentous structures. Such structures have been observed in the prospore membrane during spore formation in S. cerevisiae and in the chlamydospore membrane during chlamydospore formation in C. albicans."^^xsd:string, + rdfs:label "septin filament array"^^xsd:string, + oboInOwl:id "GO:0032160"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0032156 + + +Class: obo:GO_0031308 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to nuclear outer membrane"^^xsd:string, + oboInOwl:id "GO:0031308"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the nuclear outer membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:GO_0044453, + obo:GO_0031300, + obo:BFO_0000050 some obo:GO_0005640 + + +Class: obo:GO_0033291 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "eukaryotic 80S initiation complex"^^xsd:string, + oboInOwl:id "GO:0033291"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:15145049"^^xsd:string + obo:IAO_0000115 "A protein complex composed of the large and small ribosomal subunits, methionyl-initiatior tRNA, and the capped mRNA. The initiator tRNA is positioned at the ribosomal P site at the AUG codon corresponding to the beginning of the coding region."^^xsd:string + + SubClassOf: + obo:GO_0070992 + + +Class: obo:GO_0032161 + + Annotations: + rdfs:label "cleavage apparatus septin structure"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032161"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:12101122"^^xsd:string, + oboInOwl:hasDbXref "PMID:15774761"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "Any of a series of structures composed of septins and septin-associated proteins localized to the cleavage plane which are involved in cytokinesis."^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0032155, + obo:BFO_0000050 some obo:GO_0032156, + obo:GO_0044448 + + +Class: obo:GO_0031307 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the mitochondrial outer membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:id "GO:0031307"^^xsd:string, + rdfs:label "integral to mitochondrial outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0031306, + obo:GO_0032592 + + +Class: obo:GO_0031306 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031306"^^xsd:string, + rdfs:label "intrinsic to mitochondrial outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the mitochondrial outer membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:GO_0031300, + obo:BFO_0000050 some obo:GO_0005741 + + +Class: obo:GO_0031305 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031305"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the mitochondrial inner membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + rdfs:label "integral to mitochondrial inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0031304, + obo:GO_0032592 + + +Class: obo:GO_0031304 + + Annotations: + oboInOwl:id "GO:0031304"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to mitochondrial inner membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the mitochondrial inner membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:GO_0031300, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0010598 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15608332"^^xsd:string + obo:IAO_0000115 "Complex that possesses NAD(P)H dehydrogenase (plastoquinone) activity. The complex is one of the components of the electron transport chain. It is involved in electron transport from an unidentified electron donor, possibly NADH, NADPH or ferredoxin(Fd) to the plastoquinone pool."^^xsd:string, + rdfs:label "NAD(P)H dehydrogenase complex (plastoquinone)"^^xsd:string, + oboInOwl:id "GO:0010598"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0031303 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031303"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the endosome membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + rdfs:label "integral to endosome membrane"^^xsd:string + + SubClassOf: + obo:GO_0031302, + obo:GO_0031301 + + +Class: obo:GO_0033290 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "eukaryotic 48S initiation complex"^^xsd:string, + oboInOwl:hasExactSynonym "eukaryotic 48S pre-initiation complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0016283"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:15145049"^^xsd:string + obo:IAO_0000115 "A protein complex composed of the small ribosomal subunit, eIF3, eIF1A, methionyl-initiatior methionine and a capped mRNA. The complex is initially positioned at the 5'-end of the capped mRNA."^^xsd:string, + oboInOwl:id "GO:0033290"^^xsd:string, + rdfs:label "eukaryotic 48S preinitiation complex"^^xsd:string + + SubClassOf: + obo:GO_0070993 + + +Class: obo:GO_0031302 + + Annotations: + oboInOwl:id "GO:0031302"^^xsd:string, + rdfs:label "intrinsic to endosome membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the endosome membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0031300, + obo:GO_0044440 + + +Class: obo:GO_0031301 + + Annotations: + oboInOwl:id "GO:0031301"^^xsd:string, + rdfs:label "integral to organelle membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of an organelle membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0016021, + obo:GO_0031300 + + +Class: obo:GO_0032168 + + Annotations: + oboInOwl:id "GO:0032168"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A tight ring-shaped structure that forms in the division plane within hyphae of filamentous fungi at sites where a septum will form; composed of septins as well as septin-associated proteins."^^xsd:string, + rdfs:label "hyphal septin ring"^^xsd:string + + SubClassOf: + obo:GO_0005940 + + +Class: obo:GO_0032169 + + Annotations: + oboInOwl:id "GO:0032169"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A tight ring-shaped structure that forms in the division plane at the site of cytokinesis in a prospore; composed of septins as well as septin-associated proteins."^^xsd:string, + rdfs:label "prospore septin ring"^^xsd:string + + EquivalentTo: + obo:GO_0005940 + and (obo:BFO_0000050 some obo:GO_0042764) + + SubClassOf: + obo:GO_0032161, + obo:BFO_0000050 some obo:GO_0042764, + obo:GO_0005940 + + +Class: obo:GO_0030680 + + Annotations: + rdfs:label "dimeric ribonuclease P complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030680"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045094"^^xsd:string + obo:IAO_0000115 "A ribonuclease P complex that contains a single RNA molecule that is necessary and usually sufficient for catalysis, and a single protein molecule. Examples of this complex are found in Bacterial species."^^xsd:string, + oboInOwl:hasExactSynonym "dimeric RNase P complex"^^xsd:string + + SubClassOf: + obo:GO_0030677 + + +Class: obo:GO_0032166 + + Annotations: + oboInOwl:id "GO:0032166"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "Arrays of septin filaments, or bars, found in a series of filamentous structures. Observed in the chlamydospore membrane during chlamydospore formation."^^xsd:string, + rdfs:label "chlamydospore septin filament array"^^xsd:string + + SubClassOf: + obo:GO_0032160 + + +Class: obo:GO_0009930 + + Annotations: + rdfs:label "longitudinal side of cell surface"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:sm"^^xsd:string + obo:IAO_0000115 "The side of the cell parallel to the zygotic axis."^^xsd:string, + oboInOwl:id "GO:0009930"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009986, + obo:GO_0044464 + + +Class: obo:GO_0032164 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A faint structure formed of septins found at the leading edge of growth in hyphae of fungal cells growing filamentously. This cap of septins colocalizes with a region of the plasma membrane that is rich in ergosterol."^^xsd:string, + rdfs:label "hyphal septin cap"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032164"^^xsd:string + + SubClassOf: + obo:GO_0032159 + + +Class: obo:GO_0032165 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032165"^^xsd:string, + rdfs:label "prospore septin filament array"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "Arrays of septin filaments, or bars, found in a series of filamentous structures; observed in the prospore membrane during spore formation."^^xsd:string + + SubClassOf: + obo:GO_0032160 + + +Class: obo:GO_0030684 + + Annotations: + rdfs:label "preribosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030684"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10567516"^^xsd:string + obo:IAO_0000115 "Any complex of pre-rRNAs, ribosomal proteins, and associated proteins formed during ribosome biogenesis."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0032162 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A septin band, i.e. a diffuse ring composed of a series of septin bars running parallel to the long axis of the cell, located at the neck of a shmoo (mating projection)."^^xsd:string, + oboInOwl:id "GO:0032162"^^xsd:string, + rdfs:label "mating projection septin band"^^xsd:string + + EquivalentTo: + obo:GO_0032158 + and (obo:BFO_0000050 some obo:GO_0005937) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005937, + obo:GO_0044463, + obo:GO_0032158 + + +Class: obo:GO_0030681 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030681"^^xsd:string, + oboInOwl:hasExactSynonym "multimeric RNase P complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11142368"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045094"^^xsd:string + obo:IAO_0000115 "A ribonuclease P complex that generally contains a single RNA molecule and several protein molecules. Examples of this complex are found in Archaeal species."^^xsd:string, + rdfs:label "multimeric ribonuclease P complex"^^xsd:string + + SubClassOf: + obo:GO_0030677 + + +Class: obo:GO_0032163 + + Annotations: + rdfs:label "hyphal septin band"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032163"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A septin band, i.e. a diffuse ring composed of a series of septin bars running parallel to the long axis of the cell, located at the junction between the mother cell and the germ tube (hypha) of a fungal cell growing filamentously."^^xsd:string + + SubClassOf: + obo:GO_0032158 + + +Class: obo:GO_0031309 + + Annotations: + rdfs:label "integral to nuclear outer membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031309"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the nuclear outer membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0031308, + obo:GO_0031301 + + +Class: obo:GO_0030677 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045094"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that catalyzes cleavage of the leader sequence of precursor tRNAs (pre-tRNAs), generating the mature 5' end of tRNAs."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "RNase P complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that chloroplasts possess a complex that is called 'RNase P' because it catalyzes pre-tRNA cleavage, but the chloroplast complex appears not to contain RNA."^^xsd:string, + rdfs:label "ribonuclease P complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030677"^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0071821 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "FANCM-MHF complex"^^xsd:string, + oboInOwl:id "GO:0071821"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:20347428"^^xsd:string + obo:IAO_0000115 "A protein complex contains the proteins FANCM and MHF, or their orthologs, plays an essential role in DNA remodeling, protects replication forks, and is conserved in eukaryotes."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0035101 + + Annotations: + rdfs:label "FACT complex"^^xsd:string, + oboInOwl:hasExactSynonym "Facilitates chromatin transcription complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_ks"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_ras"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_tf"^^xsd:string, + oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:12934006"^^xsd:string, + oboInOwl:hasDbXref "PMID:12934007"^^xsd:string, + oboInOwl:hasDbXref "PMID:16678108"^^xsd:string + obo:IAO_0000115 "An abundant nuclear complex, which was originally identified in mammalian systems as a factor required for transcription elongation on chromatin templates. The FACT complex has been shown to destablilize the interaction between the H2A/H2B dimer and the H3/H4 tetramer of the nucleosome, thus reorganizing the structure of the nucleosome. In this way, the FACT complex may play a role in DNA replication and other processes that traverse the chromatin, as well as in transcription elongation. FACT is composed of two proteins that are evolutionarily conserved in all eukaryotes and homologous to mammalian Spt16 and SSRP1. In metazoans, the SSRP1 homolog contains an HMG domain; however in fungi and protists, it does not. For example, in S. cerevisiae the Pob3 protein is homologous to SSRP1, but lacks the HMG chromatin binding domain. Instead, the yFACT complex of Spt16p and Pob3p, binds to nucleosomes where multiple copies of the HMG-domain containing protein Nhp6p have already bound, but Nhp6p does not form a stable complex with the Spt16p/Pob3p heterodimer."^^xsd:string, + oboInOwl:id "GO:0035101"^^xsd:string + + SubClassOf: + obo:GO_0008023 + + +Class: obo:GO_0035102 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10412979"^^xsd:string + obo:IAO_0000115 "An insect multiprotein complex containing the products of many of the Polycomb Group genes including Polycomb, Posterior sex combs, polyhomeotic and Sex comb on midleg. The Polycomb Group proteins are required for stable long-term maintenance of transcriptionally repressed states and the PRC1 complex directly antagonizes ATP-dependent remodeling of nucleosomal arrays."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "PRC1 complex"^^xsd:string, + oboInOwl:id "GO:0035102"^^xsd:string, + oboInOwl:hasExactSynonym "Polycomb repressive complex 1"^^xsd:string + + SubClassOf: + obo:GO_0031519 + + +Class: obo:GO_0030679 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cyanelle ribonuclease P complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045094"^^xsd:string + obo:IAO_0000115 "A ribonuclease P complex located in the cyanelle, where it catalyzes the 5' endonucleolytic cleavage of precursor tRNAs to yield mature tRNAs. The best characterized cyanelle ribonuclease P complex, from the alga Cyanophora paradoxa, contains a single RNA molecule that is necessary but not sufficient for catalysis, and several protein molecules."^^xsd:string, + oboInOwl:hasExactSynonym "cyanelle RNase P complex"^^xsd:string, + oboInOwl:id "GO:0030679"^^xsd:string + + EquivalentTo: + obo:GO_0030677 + and (obo:BFO_0000050 some obo:GO_0009842) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009842, + obo:GO_0030681 + + +Class: obo:GO_0032159 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "septin cap"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A faint structure formed of septins found at the leading edge of growth in germ tubes and hyphae in fungal cells growing filamentously. This cap of septins colocalizes with a region of the plasma membrane that is rich in ergosterol."^^xsd:string, + oboInOwl:id "GO:0032159"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0032156 + + +Class: obo:GO_0030678 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "mitochondrial RNase P complex"^^xsd:string, + rdfs:label "mitochondrial ribonuclease P complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045094"^^xsd:string + obo:IAO_0000115 "A ribonuclease P complex located in the mitochondrion of a eukaryotic cell, where it catalyzes the 5' endonucleolytic cleavage of precursor tRNAs to yield mature tRNAs. The subunit composition of mitochondrial ribonuclease P complexes varies between species, but the complex often contains a single RNA molecule and a single protein molecule."^^xsd:string, + oboInOwl:id "GO:0030678"^^xsd:string + + EquivalentTo: + obo:GO_0030677 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0030677, + obo:GO_0044429 + + +Class: obo:GO_0031310 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the vacuolar membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to vacuolar membrane"^^xsd:string, + oboInOwl:id "GO:0031310"^^xsd:string + + SubClassOf: + obo:GO_0044437, + obo:GO_0031300, + obo:BFO_0000050 some obo:GO_0005774 + + +Class: obo:GO_0031311 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to contractile vacuolar membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the contractile vacuolar membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:id "GO:0031311"^^xsd:string + + SubClassOf: + obo:GO_0031310, + obo:GO_0044433, + obo:BFO_0000050 some obo:GO_0031164 + + +Class: obo:GO_0071819 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:19226466"^^xsd:string + oboInOwl:hasExactSynonym "deubiquitination module"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string + oboInOwl:hasNarrowSynonym "SAGA DUBm complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DUBm complex"^^xsd:string, + oboInOwl:id "GO:0071819"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19226466"^^xsd:string, + oboInOwl:hasDbXref "PMID:20395473"^^xsd:string + obo:IAO_0000115 "A protein complex that forms part of SAGA-type complexes SAGA and SLIK, and mediates deubiquitination of histone H2B. In S. cerevisiae, the DUBm consists of the proteins Ubp8p, Sgf11p, Sus1p, and Sgf73p."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20395473"^^xsd:string + oboInOwl:hasExactSynonym "deubiquitinating module"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0033282 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-acrosin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000003652"^^xsd:string, + oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-ACR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pr"^^xsd:string, + oboInOwl:hasDbXref "PMID:11120760"^^xsd:string, + oboInOwl:hasDbXref "PMID:7521127"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex of protein C inhibitor (SERPINA5) and acrosin; formation of the complex inhibits the protease activity of acrosin."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-acrosin complex"^^xsd:string, + oboInOwl:id "GO:0033282"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-acrosin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-acrosin complex"^^xsd:string, + rdfs:label "protein C inhibitor-acrosin complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0002080, + obo:GO_0044425, + obo:GO_0044433, + obo:GO_0097180 + + +Class: obo:GO_0019819 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019819"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10629216"^^xsd:string + obo:IAO_0000115 "A subform of peroxisome that corresponds to an intermediate in a peroxisome assembly pathway, which operates by conversion of peroxisomal subforms in the direction P1, P2 -> P3 -> P4 -> P5 -> P6. P1 peroxisomes are distinguished from the other subforms on the bases of buoyant density and protein content; they contain fewer peroxisomal proteins than the other subforms."^^xsd:string, + rdfs:comment "Note that this peroxisome assembly pathway is described in the yeast Yarrowia lipolytica. See also the cellular component terms 'P2 peroxisome ; GO:0019820', 'P3 peroxisome ; GO:0019821', 'P4 peroxisome ; GO:0019822', 'P5 peroxisome ; GO:0019823', and 'P6 peroxisome ; GO:0019824'."^^xsd:string, + rdfs:label "P1 peroxisome"^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0033281 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "Twin-arginine translocation complex "^^xsd:string, + oboInOwl:hasNarrowSynonym "TAT protein secretion complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A complex of three proteins integral to the cytoplasmic membrane of bacteria and membranes of organelles derived from bacteria (chloroplasts and mitochondria) involved in membrane transport of folded proteins."^^xsd:string, + oboInOwl:id "GO:0033281"^^xsd:string, + rdfs:label "TAT protein transport complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "TAT protein translocation system complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0034400 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12654863"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151876"^^xsd:string + obo:IAO_0000115 "A plastid found in senescing, formerly green tissues that is derived from a chloroplast that undergoes an organized developmental program of senescence."^^xsd:string, + rdfs:label "gerontoplast"^^xsd:string, + oboInOwl:id "GO:0034400"^^xsd:string + + SubClassOf: + obo:GO_0009536 + + +Class: obo:GO_0009925 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009925"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The region of the plasma membrane located at the basal end of the cell. Often used in reference to animal polarized epithelial membranes, where the basal membrane is the part attached to the extracellular matrix, or in plant cells, where the basal membrane is defined with respect to the zygotic axis."^^xsd:string, + rdfs:label "basal plasma membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045178, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0016323 + + +Class: obo:GO_0009923 + + Annotations: + oboInOwl:id "GO:0009923"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "fatty acid elongase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "A tetrameric complex of four different subunits which catalyzes the elongation of fatty acids chains 2 carbon units at a time in the synthesis of very long chain fatty acids."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0009921 + + Annotations: + oboInOwl:id "GO:0009921"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "auxin efflux carrier complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9843496"^^xsd:string + obo:IAO_0000115 "The protein complex associated with the plasma membrane of certain plant cells (e.g. root cortex, epidermal cells) that functions to transport auxin out of the cell."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0032155 + + Annotations: + oboInOwl:id "GO:0032155"^^xsd:string, + oboInOwl:hasExactSynonym "cell division plane part"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any constituent part of the cell division plane, the eventual plane of cell division in a dividing cell."^^xsd:string, + rdfs:label "cell division site part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0032153) + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0032153 + + +Class: obo:GO_0032156 + + Annotations: + oboInOwl:id "GO:0032156"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The part of the cytoskeleton (the internal framework of a cell) composed of septins and associated proteins. Includes septin cytoskeleton-associated complexes."^^xsd:string, + rdfs:label "septin cytoskeleton"^^xsd:string + + SubClassOf: + obo:GO_0005856 + + +Class: obo:GO_0033289 + + Annotations: + oboInOwl:id "GO:0033289"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11901169"^^xsd:string, + oboInOwl:hasDbXref "PMID:16518471"^^xsd:string + obo:IAO_0000115 "A microtubule located such that it threads through the conoid and projects through the polar ring."^^xsd:string, + rdfs:label "intraconoid microtubule"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0005874 + + +Class: obo:GO_0032157 + + Annotations: + rdfs:label "prospore contractile ring"^^xsd:string, + oboInOwl:id "GO:0032157"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "A contractile ring, i.e. a cytoskeletal structure composed of actin filaments and myosin, that forms beneath the plasma membrane of the prospore envelope in meiotic cells in preparation for completing cytokinesis."^^xsd:string, + oboInOwl:hasBroadSynonym "actomyosin ring"^^xsd:string, + oboInOwl:hasRelatedSynonym "meiotic contractile ring"^^xsd:string, + oboInOwl:hasBroadSynonym "cytokinetic ring"^^xsd:string + + EquivalentTo: + obo:GO_0005826 + and (obo:BFO_0000050 some obo:GO_0042764) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0042764, + obo:GO_0005826 + + +Class: obo:GO_0032158 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A diffuse ring composed of a series of septin bars that run parallel to the long axis of the cell. This type of septin structure has been observed in a number of locations associated with polarized grown and/or deposition of new membrane, but not with cytokinesis, such as at the shmoo (mating projection) neck, at the junction between the mother cell and the germ tube (hypha) of a fungal cell growing filamentously."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032158"^^xsd:string, + rdfs:label "septin band"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0032156 + + +Class: obo:GO_0032151 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032151"^^xsd:string, + rdfs:label "mitotic septin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "A heterooligomeric septin complex that acts during mitotic cell division."^^xsd:string + + SubClassOf: + obo:GO_0031105 + + +Class: obo:GO_0030670 + + Annotations: + rdfs:label "phagocytic vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a phagocytic vesicle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030670"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "phagosome membrane"^^xsd:string + + SubClassOf: + obo:GO_0030666, + obo:BFO_0000050 some obo:GO_0045335 + + +Class: obo:GO_0032152 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032152"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "A heterooligomeric septin complex that acts during meiotic cell division."^^xsd:string, + rdfs:label "meiotic septin complex"^^xsd:string + + SubClassOf: + obo:GO_0031105 + + +Class: obo:GO_0030671 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin-coated phagocytic vesicle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "clathrin-coated phagocytic vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0030671"^^xsd:string + + SubClassOf: + obo:GO_0030669, + obo:BFO_0000050 some obo:GO_0045336, + obo:GO_0030670 + + +Class: obo:GO_0032153 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032153"^^xsd:string, + rdfs:comment "Note that this term refers to the future site of division in a cell that has not yet divided."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "cell division site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:ns"^^xsd:string, + oboInOwl:hasDbXref "PMID:12101122"^^xsd:string, + oboInOwl:hasDbXref "PMID:15380095"^^xsd:string + obo:IAO_0000115 "The eventual plane of cell division (also known as cell cleavage or cytokinesis) in a dividing cell. The cleavage apparatus, composed of septin structures and the actomyosin contractile ring, forms along this plane. The mitotic, or meiotic, spindle is aligned perpendicular to the division plane."^^xsd:string, + oboInOwl:hasExactSynonym "cell division plane"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0030672 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030672"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a synaptic vesicle."^^xsd:string, + rdfs:label "synaptic vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0030665, + obo:GO_0044456, + obo:BFO_0000050 some obo:GO_0008021 + + +Class: obo:GO_0032154 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032154"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0805319409"^^xsd:string + obo:IAO_0000115 "In animal cells, the first sign of cleavage, or cytokinesis, is the appearance of a shallow groove in the cell surface near the old metaphase plate. A contractile ring containing actin and myosin is located just inside the plasma membrane at the location of the furrow. Ring contraction is associated with centripetal growth of the membrane that deepens the cleavage furrow and divides the cytoplasm of the two daughter cells. While the term 'cleavage furrow' was initially associated with animal cells, such a structure occurs in many other types of cells, including unicellular protists."^^xsd:string, + rdfs:label "cleavage furrow"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cleavage_furrow"^^xsd:string + + SubClassOf: + obo:GO_0032155 + + +Class: obo:GO_0030673 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao250772229"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030673"^^xsd:string, + rdfs:label "axolemma"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Axolemma"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vk"^^xsd:string + oboInOwl:hasExactSynonym "axonal membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string, + oboInOwl:hasDbXref "http://www.medik.sk/clanky/bio_jun.htm"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding an axon; it is a specialized trilaminar random mosaic of protein molecules floating within a fluid matrix of highly mobile phospholipid molecules, 7-8 nm in thickness."^^xsd:string + + SubClassOf: + obo:GO_0032589, + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0030663 + + Annotations: + rdfs:label "COPI coated vesicle membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030663"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a COPI-coated vesicle."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030137, + obo:GO_0030662, + obo:GO_0030660 + + +Class: obo:GO_0030666 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "endocytic vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding an endocytic vesicle."^^xsd:string, + oboInOwl:id "GO:0030666"^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0030139 + + +Class: obo:GO_0030665 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin-coated vesicle."^^xsd:string, + rdfs:label "clathrin coated vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0030665"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030136, + obo:GO_0030662 + + +Class: obo:GO_0030668 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a dense granule of the type found in apicomplexan parasites."^^xsd:string, + oboInOwl:id "GO:0030668"^^xsd:string, + rdfs:label "merozoite dense granule membrane"^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0020026 + + +Class: obo:GO_0030667 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a secretory granule."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "secretory vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0030667"^^xsd:string, + rdfs:label "secretory granule membrane"^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0030141 + + +Class: obo:GO_0030669 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "clathrin-coated endocytic vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0030669"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin-coated endocytic vesicle."^^xsd:string + + SubClassOf: + obo:GO_0030666, + obo:GO_0030665, + obo:BFO_0000050 some obo:GO_0045334 + + +Class: obo:GO_0019822 + + Annotations: + rdfs:comment "Note that this peroxisome assembly pathway is described in the yeast Yarrowia lipolytica. See also the cellular component terms 'P1 peroxisome ; GO:0019819', 'P2 peroxisome ; GO:0019820', 'P3 peroxisome ; GO:0019821', 'P5 peroxisome ; GO:0019823', and 'P6 peroxisome ; GO:0019824'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019822"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10629216"^^xsd:string + obo:IAO_0000115 "A subform of peroxisome that corresponds to an intermediate in a peroxisome assembly pathway, which operates by conversion of peroxisomal subforms in the direction P1, P2 -> P3 -> P4 -> P5 -> P6. P4 peroxisomes are distinguished from the other subforms on the bases of buoyant density and protein content."^^xsd:string, + rdfs:label "P4 peroxisome"^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0042807 + + Annotations: + oboInOwl:id "GO:0042807"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:9780815341116"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Vacuole"^^xsd:string + obo:IAO_0000115 "A membrane-enclosed sac that takes up most of the volume of a mature plant cell. Functions include storage, separation of toxic byproducts, and cell growth determination."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "central vacuole"^^xsd:string + + SubClassOf: + obo:GO_0000325 + + +Class: obo:GO_0019823 + + Annotations: + rdfs:comment "Note that this peroxisome assembly pathway is described in the yeast Yarrowia lipolytica. See also the cellular component terms 'P1 peroxisome ; GO:0019819', 'P2 peroxisome ; GO:0019820', 'P3 peroxisome ; GO:0019821', 'P4 peroxisome ; GO:0019822', and 'P6 peroxisome ; GO:0019824'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019823"^^xsd:string, + rdfs:label "P5 peroxisome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10629216"^^xsd:string + obo:IAO_0000115 "A subform of peroxisome that corresponds to an intermediate in a peroxisome assembly pathway, which operates by conversion of peroxisomal subforms in the direction P1, P2 -> P3 -> P4 -> P5 -> P6. P5 peroxisomes are distinguished from the other subforms on the bases of buoyant density and protein content."^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0019820 + + Annotations: + rdfs:comment "Note that this peroxisome assembly pathway is described in the yeast Yarrowia lipolytica. See also the cellular component terms 'P1 peroxisome ; GO:0019819', 'P3 peroxisome ; GO:0019821', 'P4 peroxisome ; GO:0019822', 'P5 peroxisome ; GO:0019823', and 'P6 peroxisome ; GO:0019824'."^^xsd:string, + rdfs:label "P2 peroxisome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019820"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10629216"^^xsd:string + obo:IAO_0000115 "A subform of peroxisome that corresponds to an intermediate in a peroxisome assembly pathway, which operates by conversion of peroxisomal subforms in the direction P1, P2 -> P3 -> P4 -> P5 -> P6. P2 peroxisomes are distinguished from the other subforms on the bases of buoyant density and protein content; they are the least dense of the subforms observed."^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0060473 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasRelatedSynonym "cortical vesicle"^^xsd:string, + oboInOwl:id "GO:0060473"^^xsd:string, + rdfs:label "cortical granule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "A secretory vesicle that is stored under the cell membrane of an egg. These vesicles fuse with the egg plasma membrane as part of egg activation and are part of the block to polyspermy."^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0019821 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019821"^^xsd:string, + rdfs:label "P3 peroxisome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10629216"^^xsd:string + obo:IAO_0000115 "A subform of peroxisome that corresponds to an intermediate in a peroxisome assembly pathway, which operates by conversion of peroxisomal subforms in the direction P1, P2 -> P3 -> P4 -> P5 -> P6. P3 peroxisomes are formed by fusion of P1 and P2 peroxisomes, and are distinguished from the other subforms on the bases of buoyant density and protein content."^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string, + rdfs:comment "Note that this peroxisome assembly pathway is described in the yeast Yarrowia lipolytica. See also the cellular component terms 'P1 peroxisome ; GO:0019819', 'P2 peroxisome ; GO:0019820', 'P4 peroxisome ; GO:0019822', 'P5 peroxisome ; GO:0019823', and 'P6 peroxisome ; GO:0019824'."^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0031300 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in an organelle membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to organelle membrane"^^xsd:string, + oboInOwl:id "GO:0031300"^^xsd:string + + SubClassOf: + obo:GO_0031224, + obo:BFO_0000050 some obo:GO_0031090, + obo:GO_0044446 + + +Class: obo:GO_0071818 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "BAT3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20676083"^^xsd:string + obo:IAO_0000115 "An ER membrane insertion complex that acts by facilitating tail-anchored protein capture by ASNA1/TRC40. In mammals the complex contains Bat3, TRC35 and Ubl4A."^^xsd:string, + oboInOwl:id "GO:0071818"^^xsd:string + + SubClassOf: + obo:GO_0072379 + + +Class: obo:GO_0019824 + + Annotations: + rdfs:label "P6 peroxisome"^^xsd:string, + oboInOwl:id "GO:0019824"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10629216"^^xsd:string + obo:IAO_0000115 "A subform of peroxisome that corresponds to an intermediate in a peroxisome assembly pathway, which operates by conversion of peroxisomal subforms in the direction P1, P2 -> P3 -> P4 -> P5 -> P6. P6 peroxisomes are distinguished from the other subforms on the bases of buoyant density and protein content, and are equivalent to mature peroxisomes."^^xsd:string, + rdfs:comment "Note that this peroxisome assembly pathway is described in the yeast Yarrowia lipolytica. See also the cellular component terms 'P1 peroxisome ; GO:0019819', 'P2 peroxisome ; GO:0019820', 'P3 peroxisome ; GO:0019821', 'P4 peroxisome ; GO:0019822', and 'P5 peroxisome ; GO:0019823'."^^xsd:string, + oboInOwl:hasBroadSynonym "peroxisome vesicle"^^xsd:string + + SubClassOf: + obo:GO_0005777 + + +Class: obo:GO_0071817 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20797633"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the proteins MMS19, MIP18 and XPD, localizes to mitotic spindle during mitosis, and is required for proper chromosome segregation."^^xsd:string, + rdfs:label "MMXD complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:20797633"^^xsd:string + oboInOwl:hasExactSynonym "MMS19-MIP18-XPD complex"^^xsd:string, + oboInOwl:id "GO:0071817"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:BFO_0000050 some obo:GO_0005819, + obo:GO_0043234 + + +Class: obo:GO_0008247 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10542206"^^xsd:string + obo:IAO_0000115 "An enzyme complex composed of two catalytic alpha subunits, which form a catalytic dimer, and a non-catalytic, regulatory beta subunit; the catalytic dimer may be an alpha1/alpha1 or alpha2/alpha2 homodimer, or an alpha1/alpha2 heterodimer. Modulates the action of platelet-activating factor (PAF)."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "platelet-activating factor acetylhydrolase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "1-alkyl-2-acetylglycerophosphocholine esterase complex"^^xsd:string, + rdfs:comment "See also the molecular function term '1-alkyl-2-acetylglycerophosphocholine esterase activity ; GO:0003847'."^^xsd:string, + oboInOwl:hasExactSynonym "2-acetyl-1-alkylglycerophosphocholine esterase complex"^^xsd:string, + oboInOwl:id "GO:0008247"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0030661 + + Annotations: + oboInOwl:id "GO:0030661"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chitosome membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a chitosome."^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0045009 + + +Class: obo:GO_0030662 + + Annotations: + oboInOwl:id "GO:0030662"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a coated vesicle."^^xsd:string, + rdfs:label "coated vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0030135 + + +Class: obo:GO_0015630 + + Annotations: + oboInOwl:id "GO:0015630"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "microtubule cytoskeleton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0395825172"^^xsd:string + obo:IAO_0000115 "The part of the cytoskeleton (the internal framework of a cell) composed of microtubules and associated proteins."^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0005856 + + +Class: obo:GO_0030660 + + Annotations: + oboInOwl:id "GO:0030660"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vesicle associated with the Golgi apparatus."^^xsd:string, + rdfs:label "Golgi-associated vesicle membrane"^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi vesicle membrane"^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0005798, + obo:GO_0000139 + + +Class: obo:GO_0071439 + + Annotations: + oboInOwl:id "GO:0071439"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16493411"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of three clathrin heavy chains and three clathrin light chains, organized into a symmetrical three-legged structure called a triskelion. In clathrin-coated vesicles clathrin is the main component of the coat and forms a polymeric mechanical scaffold on the vesicle surface."^^xsd:string, + rdfs:label "clathrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "clathrin triskelion"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030118, + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0071437 + + Annotations: + oboInOwl:id "GO:0071437"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16651416"^^xsd:string, + oboInOwl:hasDbXref "PMID:19491051"^^xsd:string, + oboInOwl:hasDbXref "PMID:19931459"^^xsd:string + obo:IAO_0000115 "A cell projection that emerges from the ECM-facing surface of a cell, is enriched in actin and associated cytoskeletal proteins, and displays localized proteolytic activity toward the substrate."^^xsd:string, + rdfs:label "invadopodium"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0043384 + + Annotations: + oboInOwl:hasExactSynonym "pre-T lymphocyte receptor complex"^^xsd:string, + rdfs:label "pre-T cell receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "pre-T-lymphocyte receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "pre-T-cell receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "pre-TCR complex"^^xsd:string, + oboInOwl:id "GO:0043384"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:12220932"^^xsd:string + obo:IAO_0000115 "A receptor complex found on immature T cells consisting of a T cell receptor beta chain and the pre-TCR-alpha chain, along with additional signaling components including CD3 family members and additional signaling proteins."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0071438 + + Annotations: + oboInOwl:id "GO:0071438"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "invadopodium membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding an invadopodium."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0071437, + obo:GO_0031253 + + +Class: obo:GO_0015627 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "PMID:16448494"^^xsd:string + obo:IAO_0000115 "A large protein complex, containing 12-15 subunits, that spans the cell envelope of Gram-negative bacteria and mediates the movement of proteins into the extracellular environment. The complex includes a component in the cytoplasm, an inner membrane subcomplex that reaches into the periplasmic compartment and a secretion pore in the outer membrane. Proteins using the Type II pathway are transported across the cytoplasmic membrane by the Sec or Tat complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "main terminal branch"^^xsd:string, + rdfs:label "type II protein secretion system complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "general secretion pathway-associated complex"^^xsd:string, + oboInOwl:id "GO:0015627"^^xsd:string, + oboInOwl:hasExactSynonym "T2SS-associated complexes"^^xsd:string, + rdfs:comment "Note that the type II protein secretion system complex does not include components of the Sec or Tat pathways. For components of these pathways, consider annotating to 'cell envelope Sec complex ; GO:0031522' or 'TAT protein translocation system complex ; GO:0033281'."^^xsd:string, + oboInOwl:hasExactSynonym "MTB"^^xsd:string, + oboInOwl:hasRelatedSynonym "Sec-dependent secretion system-associated complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0030659 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoplasmic vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a cytoplasmic vesicle."^^xsd:string, + oboInOwl:id "GO:0030659"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016023, + obo:GO_0012506, + obo:GO_0044433 + + +Class: obo:GO_0030658 + + Annotations: + rdfs:label "transport vesicle membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "secretory vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0030658"^^xsd:string, + oboInOwl:hasExactSynonym "constitutive secretory pathway transport vesicle membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a transport vesicle."^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0030133 + + +Class: obo:GO_0015629 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "actin cytoskeleton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0395825172"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "The part of the cytoskeleton (the internal framework of a cell) composed of actin and associated proteins. Includes actin cytoskeleton-associated complexes."^^xsd:string, + oboInOwl:id "GO:0015629"^^xsd:string + + SubClassOf: + obo:GO_0005856 + + +Class: obo:GO_0031332 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14704433"^^xsd:string + obo:IAO_0000115 "Any protein complex that mediates the effects of small interfering RNAs on gene expression. Most known examples contain one or more members of the Argonaute family of proteins."^^xsd:string, + oboInOwl:id "GO:0031332"^^xsd:string, + rdfs:label "RNAi effector complex"^^xsd:string + + SubClassOf: + obo:GO_0030529 + + +Class: obo:GO_0008230 + + Annotations: + rdfs:label "ecdysone receptor holocomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008230"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:14592980"^^xsd:string + obo:IAO_0000115 "A heterodimeric complex containing the products of the insect genes Ecdysone receptor (EcR) and ultraspiracle (usp). Binding of ecdysone promotes association between the two subunits, and the receptor complex then initiates molting and metamorphosis by binding DNA and regulating the transcription of target genes."^^xsd:string + + SubClassOf: + obo:GO_0043235, + obo:GO_0005667 + + +Class: obo:GO_0031313 + + Annotations: + oboInOwl:id "GO:0031313"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the endosome membrane, but not integrated into the hydrophobic region."^^xsd:string, + rdfs:label "extrinsic to endosome membrane"^^xsd:string + + SubClassOf: + obo:GO_0031312, + obo:BFO_0000050 some obo:GO_0010008, + obo:GO_0044440 + + +Class: obo:GO_0031312 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031312"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of an organelle membrane, but not integrated into the hydrophobic region."^^xsd:string, + rdfs:label "extrinsic to organelle membrane"^^xsd:string + + SubClassOf: + obo:GO_0019898, + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0031090 + + +Class: obo:GO_0070820 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070820"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12070036"^^xsd:string + obo:IAO_0000115 "A secretory granule that contains cathepsin and gelatinase and is readily exocytosed upon cell activation; found primarily in mature neutrophil cells."^^xsd:string, + rdfs:label "tertiary granule"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0008232 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "activator ecdysone receptor holocomplex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10488333"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of a heterodimer of Ecdysone receptor (EcR) and ultraspiracle (usp) bound to the ligand ecdysone, which activates transcription of target genes."^^xsd:string, + rdfs:label "activator ecdysone receptor complex"^^xsd:string, + oboInOwl:id "GO:0008232"^^xsd:string + + SubClassOf: + obo:GO_0008230 + + +Class: obo:GO_0031315 + + Annotations: + oboInOwl:id "GO:0031315"^^xsd:string, + rdfs:label "extrinsic to mitochondrial outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the mitochondrial outer membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0031312, + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005741 + + +Class: obo:GO_0008231 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10488333"^^xsd:string + obo:IAO_0000115 "A protein complex consisting of a heterodimer of Ecdysone receptor (EcR) and ultraspiracle (usp) plus an associated corepressor such as SMRTER, which represses transcription of target genes."^^xsd:string, + rdfs:label "repressor ecdysone receptor complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "repressor ecdysone receptor holocomplex"^^xsd:string, + oboInOwl:id "GO:0008231"^^xsd:string + + SubClassOf: + obo:GO_0008230 + + +Class: obo:GO_0031314 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the mitochondrial inner membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0031314"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extrinsic to mitochondrial inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0031312, + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0031317 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A complex consisting of two membrane proteins and one extracytoplasmic solute receptor. Such transporters transport a variety of substrates without direct ATP power, instead using energy from ion gradients."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "TRAP transporter complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031317"^^xsd:string, + oboInOwl:hasExactSynonym "TRAP-T transporter complex"^^xsd:string, + rdfs:label "tripartite ATP-independent periplasmic transporter complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0032170 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "pseudohyphal septin ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A tight ring-shaped structure that forms in the division plane at the junction between the mother cell and a pseudohyphal projection; composed of septins as well as septin-associated proteins."^^xsd:string, + oboInOwl:id "GO:0032170"^^xsd:string + + SubClassOf: + obo:GO_0005940 + + +Class: obo:GO_0031316 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031316"^^xsd:string, + rdfs:label "extrinsic to nuclear outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the nuclear outer membrane, but not integrated into the hydrophobic region."^^xsd:string + + SubClassOf: + obo:GO_0031312, + obo:GO_0044453, + obo:BFO_0000050 some obo:GO_0005640 + + +Class: obo:GO_0032171 + + Annotations: + rdfs:label "germ tube septin cap"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A faint structure formed of septins found at the leading edge of growth in germ tubes of fungal cells growing filamentously. This cap of septins colocalizes with a region of the plasma membrane that is rich in ergosterol."^^xsd:string, + oboInOwl:id "GO:0032171"^^xsd:string + + EquivalentTo: + obo:GO_0032159 + and (obo:BFO_0000050 some obo:GO_0032179) + + SubClassOf: + obo:GO_0032159, + obo:BFO_0000050 some obo:GO_0032179 + + +Class: obo:GO_0032172 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A tight ring-shaped structure that forms in the division plane within the germ tube of filamentous fungi at sites where a septum will form; composed of septins as well as septin-associated proteins."^^xsd:string, + rdfs:label "germ tube septin ring"^^xsd:string, + oboInOwl:id "GO:0032172"^^xsd:string + + EquivalentTo: + obo:GO_0005940 + and (obo:BFO_0000050 some obo:GO_0032179) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0032179, + obo:GO_0005940 + + +Class: obo:GO_0070826 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:11842004"^^xsd:string, + oboInOwl:hasDbXref "PMID:8639593"^^xsd:string + obo:IAO_0000115 "A cytoplasmic protein complex that contains integrin, mobilferrin and a flavin monooxygenase, is capable of reducing Fe(III) to Fe(II) utilizing NADPH, and is involved in iron transport. Fe(II) is required in the cell as the substrate for ferrochelatase in the synthesis of heme."^^xsd:string, + oboInOwl:id "GO:0070826"^^xsd:string, + rdfs:label "paraferritin complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0032173 + + Annotations: + oboInOwl:id "GO:0032173"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A tubular, hourglass-shaped structure composed of highly ordered arrays of septin filaments; in budding yeast cells, the septin collar forms from the initial septin ring by expanding into the daughter cell."^^xsd:string, + rdfs:label "septin collar"^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0032156 + + +Class: obo:GO_0070825 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "micropyle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cvs"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:18649270"^^xsd:string + obo:IAO_0000115 "An external encapsulating structure part of the chorion. A single cone-shaped specialization that forms an opening in the chorion that allows sperm entry into the egg prior to fertilization."^^xsd:string, + oboInOwl:id "GO:0070825"^^xsd:string + + SubClassOf: + obo:GO_0044462, + obo:BFO_0000050 some obo:GO_0042600 + + +Class: obo:GO_0032174 + + Annotations: + rdfs:label "cellular bud neck septin collar"^^xsd:string, + oboInOwl:id "GO:0032174"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "A tubular structure with flared ends, shaped like an hourglass and composed of highly ordered arrays of septin filaments, that forms at the bud neck of a dividing cell. In S. cerevisiae, this structure is located at the bud neck throughout most of the cell cycle and the septins are fixed within the structure, not exchanging with soluble septins. This septin structure acts as a scaffold for other proteins that function at the bud neck."^^xsd:string + + EquivalentTo: + obo:GO_0032173 + and (obo:BFO_0000050 some obo:GO_0005935) + + SubClassOf: + obo:GO_0032161, + obo:GO_0000399, + obo:GO_0032173 + + +Class: obo:GO_0032175 + + Annotations: + oboInOwl:id "GO:0032175"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mating projection septin ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A septin ring, i.e. a ring-shaped structure composed of septins and septin-associated proteins, located at the neck of a shmoo (mating projection). The septin ring in the neck of a shmoo may act as a barrier to localize mating factors in the shmoo tip."^^xsd:string + + EquivalentTo: + obo:GO_0005940 + and (obo:BFO_0000050 some obo:GO_0005937) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005937, + obo:GO_0044463, + obo:GO_0005940 + + +Class: obo:GO_0032176 + + Annotations: + oboInOwl:id "GO:0032176"^^xsd:string, + rdfs:label "split septin rings"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string, + oboInOwl:hasDbXref "PMID:16151244"^^xsd:string + obo:IAO_0000115 "A pair of rings that flank the site of cell division, formed by splitting of the septin ring (or collar) prior to cytokinesis; this double ring structure is thought to trap proteins needed for cytokinesis or the formation of the new membrane or cell wall between the two septin rings. Split septin rings are known to occur in budding yeast cells and probably occur in other cell types as well."^^xsd:string + + SubClassOf: + obo:GO_0044430, + obo:GO_0032156 + + +Class: obo:GO_0032177 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032177"^^xsd:string, + rdfs:label "cellular bud neck split septin rings"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16009555"^^xsd:string + obo:IAO_0000115 "Two separate septin rings that are formed from the septin collar at the time of cytokinesis in cells that divide by budding. These two rings are thought to delineate a special compartment in which factors involved in cytokinesis are concentrated."^^xsd:string + + EquivalentTo: + obo:GO_0032176 + and (obo:BFO_0000050 some obo:GO_0005935) + + SubClassOf: + obo:GO_0032161, + obo:GO_0000399, + obo:GO_0032176 + + +Class: obo:GO_0070822 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Sin3-type complex"^^xsd:string, + oboInOwl:id "GO:0070822"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15565322"^^xsd:string, + oboInOwl:hasDbXref "PMID:18292778"^^xsd:string + obo:IAO_0000115 "Any of a number of evolutionarily conserved histone deacetylase complexes (HDACs) containing a core consisting of a paired amphipathic helix motif protein (e.g. Sin3p in S. cerevisiae, Pst1 in S. pombe or Sin3A in mammals) at least one class I histone deacetylase (e.g. Rpd3p in S. cerevisiae, Clr6 in S. pombe, or HDAC1 and HDAC2 in mammals), and at least one WD40 repeat protein (e.g. Ume1p in S. cerevisiae, Prw1 in S. pombe, or RbAp46 and RbAp48 in mammals). These complexes also contain a variable number of other proteins that direct histone binding, DNA binding, or add other functionality to the complex."^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454 + + +Class: obo:GO_0070821 + + Annotations: + rdfs:label "tertiary granule membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12070036"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a tertiary granule."^^xsd:string, + oboInOwl:id "GO:0070821"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0070820, + obo:GO_0030667 + + +Class: obo:GO_0032178 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "sterol-rich membrane band"^^xsd:string, + oboInOwl:id "GO:0032178"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15517003"^^xsd:string + obo:IAO_0000115 "A sterol-rich region of the plasma membrane which forms at the cell surface overlying the contractile ring and spreads into the invaginating plasma membrane surrounding the septum."^^xsd:string, + rdfs:label "medial membrane band"^^xsd:string + + SubClassOf: + obo:GO_0032155, + obo:GO_0044459 + + +Class: obo:GO_0070824 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SHREC complex"^^xsd:string, + oboInOwl:id "GO:0070824"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17289569"^^xsd:string + obo:IAO_0000115 "A histone deacetylase complex that contains a core of four proteins -- Clr1, Clr2, Clr3, and Mit1 in fission yeast -- and localizes to all heterochromatic regions in the genome as well as some euchromatic sites. The complex is involved in regulating nucleosome positioning to assemble higher-order chromatin structures."^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:GO_0017053 + + +Class: obo:GO_0032179 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "germ tube"^^xsd:string, + oboInOwl:id "GO:0032179"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0877799148"^^xsd:string + obo:IAO_0000115 "The slender tubular outgrowth first produced by most spores in germination."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Germ_tube"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0070823 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "HDA1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgf"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11287668"^^xsd:string, + oboInOwl:hasDbXref "PMID:8663039"^^xsd:string + obo:IAO_0000115 "A tetrameric histone deacetylase complex that contains a Class II deacetylase catalytic subunit. In S. cerevisiae it is composed of two Hda1p subunits along with Hda2p and Hda3p."^^xsd:string, + oboInOwl:id "GO:0070823"^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:GO_0000790 + + +Class: obo:GO_0010170 + + Annotations: + rdfs:label "glucose-1-phosphate adenylyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PMID:12748181"^^xsd:string + obo:IAO_0000115 "Complex that catalyzes the synthesis of ADP-glucose and pyrophosphate from glucose-1-phosphate and ATP. In plants, the complex is a heterotetramer composed of two types of subunits (small and large). In bacteria, the enzyme complex is composed of four identical subunits."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010170"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0032123 + + Annotations: + rdfs:label "deep fiber"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "deep fibre"^^xsd:string, + oboInOwl:id "GO:0032123"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10503189"^^xsd:string + obo:IAO_0000115 "Inward projections of the cytoskeletal structures of the oral apparatus, which form a fiber that extends past the cytostome into the cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0031912, + obo:GO_0044430 + + +Class: obo:GO_0071458 + + Annotations: + rdfs:label "integral to cytosolic side of endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "integral to ER membrane, cytosolic side"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of the endoplasmic reticulum membrane, with the bulk of the gene product located on the side that faces the cytosol."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "integral to cytosolic side of ER membrane"^^xsd:string, + oboInOwl:id "GO:0071458"^^xsd:string + + SubClassOf: + obo:GO_0030176 + + +Class: obo:GO_0031355 + + Annotations: + oboInOwl:id "GO:0031355"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to plastid outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a plastid outer membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0031351, + obo:BFO_0000050 some obo:GO_0009527 + + +Class: obo:GO_0031354 + + Annotations: + rdfs:label "intrinsic to plastid outer membrane"^^xsd:string, + oboInOwl:id "GO:0031354"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in a plastid outer membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:GO_0031350, + obo:BFO_0000050 some obo:GO_0009527 + + +Class: obo:GO_0031353 + + Annotations: + oboInOwl:id "GO:0031353"^^xsd:string, + rdfs:label "integral to plastid inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a plastid inner membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0031351, + obo:BFO_0000050 some obo:GO_0009528 + + +Class: obo:GO_0031352 + + Annotations: + oboInOwl:id "GO:0031352"^^xsd:string, + rdfs:label "intrinsic to plastid inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in a plastid inner membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:GO_0031350, + obo:BFO_0000050 some obo:GO_0009528 + + +Class: obo:GO_0031351 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031351"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a plastid membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + rdfs:label "integral to plastid membrane"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0031301, + obo:BFO_0000050 some obo:GO_0042170 + + +Class: obo:GO_0031350 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in a plastid membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to plastid membrane"^^xsd:string, + oboInOwl:id "GO:0031350"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0042170, + obo:GO_0031300 + + +Class: obo:GO_0035974 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035974"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:21775631"^^xsd:string + obo:IAO_0000115 "The microtubule organizing center on a spindle that forms as part of meiosis; functionally homologous to the animal cell centrosome."^^xsd:string, + rdfs:label "meiotic spindle pole body"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0072687, + obo:GO_0005816 + + +Class: obo:GO_0032117 + + Annotations: + rdfs:label "horsetail-astral microtubule array"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032117"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16111942"^^xsd:string + obo:IAO_0000115 "An array of astral microtubules that emanates from the spindle pole body during meiosis and facilitates horsetail nuclear movement."^^xsd:string, + oboInOwl:hasExactSynonym "HAA"^^xsd:string + + SubClassOf: + obo:GO_0005818 + + +Class: obo:GO_0035145 + + Annotations: + rdfs:label "exon-exon junction complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035145"^^xsd:string, + oboInOwl:hasExactSynonym "EJC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11532962"^^xsd:string, + oboInOwl:hasDbXref "PMID:11743026"^^xsd:string + obo:IAO_0000115 "A multi-subunit complex deposited by the spliceosome upstream of messenger RNA exon-exon junctions. The exon-exon junction complex provides a binding platform for factors involved in mRNA export and nonsense-mediated mRNA decay."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0032865 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:19556461"^^xsd:string + obo:IAO_0000115 "A protein complex that links the endoplasmic reticulum with mitochondria and may have a role in promoting exchange of calcium and phospholipids between the two organelles. The complex is also associated with actively replicating mitochondrial DNA nucleoids, and may further coordinate mitochondrial genome replication and membrane growth."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "MMM1 complex"^^xsd:string, + rdfs:label "ERMES complex"^^xsd:string, + oboInOwl:hasExactSynonym "ER-mitochondria encounter structure"^^xsd:string, + oboInOwl:hasExactSynonym "Mdm10/Mdm12/Mmm1 complex"^^xsd:string, + oboInOwl:id "GO:0032865"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "mitochore"^^xsd:string + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0044233, + obo:BFO_0000050 some obo:GO_0005741, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0032116 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasNarrowSynonym "cohesin loading complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasRelatedSynonym "chromatin loading complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasNarrowSynonym "SCC2/SCC4 loading complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:10882066"^^xsd:string + obo:IAO_0000115 "A protein complex required for the loading of a structural maintenance of chromosome (SMC) complex, such as cohesin, condensin or SMC5/SMC6, onto DNA. Appears to be eukaryotically conserved."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032116"^^xsd:string, + rdfs:label "SMC loading complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0019867 + + Annotations: + rdfs:label "outer membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The external membrane of Gram-negative bacteria or certain organelles such as mitochondria and chloroplasts; freely permeable to most ions and metabolites."^^xsd:string, + oboInOwl:id "GO:0019867"^^xsd:string + + SubClassOf: + obo:GO_0016020 + + +Class: obo:GO_0019866 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of an organelle envelope; usually highly selective to most ions and metabolites."^^xsd:string, + rdfs:label "organelle inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the cellular component term 'outer membrane ; GO:0019867'."^^xsd:string, + oboInOwl:id "GO:0019866"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0031967 + + +Class: obo:GO_0019861 + + Annotations: + oboInOwl:id "GO:0019861"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0008223"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "SP_KW:KW-0282"^^xsd:string + obo:IAO_0000115 "Long whiplike or feathery structures borne either singly or in groups by the motile cells of many bacteria and unicellular eukaryotes and by the motile male gametes of many eukaryotic organisms, which propel the cell through a liquid medium."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Flagellum"^^xsd:string, + rdfs:label "flagellum"^^xsd:string + + SubClassOf: + obo:GO_0042995, + obo:GO_0043229 + + +Class: obo:GO_0097209 + + Annotations: + rdfs:label "epidermal lamellar body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097209"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cjm"^^xsd:string, + oboInOwl:hasDbXref "http://en.wikipedia.org/wiki/Lamellar_granule"^^xsd:string + obo:IAO_0000115 "A specialized secretory organelle found in keratinocytes and involved in the formation of an impermeable, lipid-containing membrane that serves as a water barrier and is required for correct skin barrier function."^^xsd:string + + SubClassOf: + obo:GO_0042599 + + +Class: obo:GO_0097208 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097208"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cjm"^^xsd:string, + oboInOwl:hasDbXref "http://en.wikipedia.org/wiki/Lamellar_granule"^^xsd:string + obo:IAO_0000115 "A specialized secretory organelle found in type II pneumocytes and involved in the synthesis, secretion, and reutilization of pulmonary surfactant."^^xsd:string, + rdfs:label "alveolar lamellar body"^^xsd:string + + SubClassOf: + obo:GO_0042599 + + +Class: obo:GO_0097204 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0097204"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pf"^^xsd:string, + oboInOwl:hasDbXref "PMID:20200225"^^xsd:string + obo:IAO_0000115 "The older part of the phagocytic cup where the actin cytoskeleton disassembles, allowing early incoming and outgoing vesicular trafficking."^^xsd:string, + rdfs:label "phagocytic cup base"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0001891, + obo:GO_0044459 + + +Class: obo:GO_0097203 + + Annotations: + oboInOwl:id "GO:0097203"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pf"^^xsd:string, + oboInOwl:hasDbXref "PMID:20200225"^^xsd:string + obo:IAO_0000115 "The tip or margin of the progressing circular lamella that engulfs a particle during phagocytosis. When the two lips of the cup fuse it is converted into a phagosome."^^xsd:string, + rdfs:label "phagocytic cup lip"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0001891, + obo:GO_0044459 + + +Class: obo:GO_0032144 + + Annotations: + rdfs:label "4-aminobutyrate transaminase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15528998"^^xsd:string + obo:IAO_0000115 "A homodimeric protein complex that possesses 4-aminobutyrate transaminase activity."^^xsd:string, + oboInOwl:hasExactSynonym "GABA transaminase complex"^^xsd:string, + oboInOwl:hasExactSynonym "ABAT complex"^^xsd:string, + oboInOwl:id "GO:0032144"^^xsd:string, + oboInOwl:hasExactSynonym "GABA-T complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0016281 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string, + oboInOwl:hasDbXref "PMID:8449919"^^xsd:string + obo:IAO_0000115 "The eukaryotic translation initiation factor 4F complex is composed of eIF4E, eIF4A and eIF4G; it is involved in the recognition of the mRNA cap, ATP-dependent unwinding of the 5'-terminal secondary structure and recruitment of the mRNA to the ribosome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016281"^^xsd:string, + oboInOwl:hasExactSynonym "eIF-4F"^^xsd:string, + rdfs:label "eukaryotic translation initiation factor 4F complex"^^xsd:string, + oboInOwl:hasBroadSynonym "eukaryotic translation initiation factor 4 complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0016282 + + Annotations: + oboInOwl:hasExactSynonym "eukaryotic 43S pre-initiation complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "PMID:15145049"^^xsd:string + obo:IAO_0000115 "A protein complex composed of the 40S ribosomal subunit plus eIF1A, eIF3, and eIF2-GTP-bound methionyl-initiator methionine tRNA."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016282"^^xsd:string, + rdfs:label "eukaryotic 43S preinitiation complex"^^xsd:string + + SubClassOf: + obo:GO_0070993 + + +Class: obo:GO_0031372 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031372"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:15772086"^^xsd:string + obo:IAO_0000115 "A heterodimeric ubiquitin conjugating enzyme complex that catalyzes assembly of K63-linked polyubiquitin chains, which act as a signal to promote error-free DNA postreplication repair; in Saccharomyces the complex comprises Ubc13p and Mms2p."^^xsd:string, + rdfs:label "UBC13-MMS2 complex"^^xsd:string + + SubClassOf: + obo:GO_0031371 + + +Class: obo:GO_0031371 + + Annotations: + oboInOwl:id "GO:0031371"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex that possesses ubiquitin conjugating enzyme activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "ubiquitin conjugating enzyme complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "E2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0019898 + + Annotations: + rdfs:comment "Note that proteins extrinsic to membranes can be removed by treatments that do not disrupt the membrane, such as salt solutions."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Peripheral_membrane_protein"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030396"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral membrane protein"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of a membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0019898"^^xsd:string, + rdfs:label "extrinsic to membrane"^^xsd:string + + SubClassOf: + obo:GO_0044425 + + +Class: obo:GO_0019897 + + Annotations: + rdfs:label "extrinsic to plasma membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000157"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the plasma membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasExactSynonym "peripheral plasma membrane protein"^^xsd:string, + oboInOwl:id "GO:0019897"^^xsd:string, + oboInOwl:hasBroadSynonym "juxtamembrane"^^xsd:string + + SubClassOf: + obo:GO_0019898, + obo:GO_0044459 + + +Class: obo:GO_0009941 + + Annotations: + oboInOwl:id "GO:0009941"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast envelope"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the chloroplast and separating its contents from the rest of the cytoplasm; includes the intermembrane space."^^xsd:string + + SubClassOf: + obo:GO_0009526, + obo:GO_0044434 + + +Class: obo:GO_0032133 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chromosome passenger complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasBroadSynonym "CPC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string + oboInOwl:hasExactSynonym "chromosomal passenger complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:16824200"^^xsd:string, + oboInOwl:hasDbXref "PMID:19570910"^^xsd:string + obo:IAO_0000115 "A eukaryotically conserved protein complex that localizes to kinetochores in early mitosis, the spindle mid-zone in anaphase B and to the telophase midbody. It has been proposed that the passenger complex coordinates various events based on its location to different structures during the course of mitosis. Complex members include the BIR-domain-containing protein Survivin, Aurora B kinase, INCENP and Borealin."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "CPC complex"^^xsd:string, + oboInOwl:id "GO:0032133"^^xsd:string + + SubClassOf: + obo:GO_0005875 + + +Class: obo:GO_0031356 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the chloroplast inner membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to chloroplast inner membrane"^^xsd:string, + oboInOwl:id "GO:0031356"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009706, + obo:GO_0031352, + obo:GO_0044434 + + +Class: obo:GO_0031357 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the chloroplast inner membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031357"^^xsd:string, + rdfs:label "integral to chloroplast inner membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009706, + obo:GO_0031353, + obo:GO_0044434 + + +Class: obo:GO_0031358 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the chloroplast outer membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:id "GO:0031358"^^xsd:string, + rdfs:label "intrinsic to chloroplast outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0031354, + obo:BFO_0000050 some obo:GO_0009707, + obo:GO_0044434 + + +Class: obo:GO_0031359 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to chloroplast outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the chloroplast outer membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:id "GO:0031359"^^xsd:string + + SubClassOf: + obo:GO_0031355, + obo:BFO_0000050 some obo:GO_0009707, + obo:GO_0044434 + + +Class: obo:GO_0016272 + + Annotations: + oboInOwl:hasNarrowSynonym "GIM complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016272"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Prefoldin"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:17384227"^^xsd:string, + oboInOwl:hasDbXref "PMID:9630229"^^xsd:string + obo:IAO_0000115 "A multisubunit chaperone that acts to delivers unfolded proteins to cytosolic chaperonin. In humans, the complex is a heterohexamer of two PFD-alpha and four PFD-beta type subunits."^^xsd:string, + rdfs:label "prefoldin complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0031360 + + Annotations: + oboInOwl:id "GO:0031360"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in a thylakoid membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + rdfs:label "intrinsic to thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:BFO_0000050 some obo:GO_0042651, + obo:GO_0031224 + + +Class: obo:GO_0031362 + + Annotations: + oboInOwl:id "GO:0031362"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Tethered to the plasma membrane by a covalently attached anchor, such as a lipid group, that is embedded in the membrane, with the bulk of the gene product located on the side opposite to the side that faces the cytoplasm. When used to describe a protein, indicates that the peptide sequence does not span the membrane."^^xsd:string, + rdfs:label "anchored to external side of plasma membrane"^^xsd:string + + EquivalentTo: + obo:GO_0046658 + and (obo:BFO_0000050 some obo:GO_0009897) + + SubClassOf: + obo:GO_0046658, + obo:GO_0031233 + + +Class: obo:GO_0031361 + + Annotations: + oboInOwl:id "GO:0031361"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "integral to thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a thylakoid membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:BFO_0000050 some obo:GO_0042651, + obo:GO_0016021 + + +Class: obo:GO_0032126 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "eisosome"^^xsd:string, + oboInOwl:id "GO:0032126"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Eisosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16496001"^^xsd:string + obo:IAO_0000115 "Any of the large immobile protein assemblies at the plasma membrane that mark endocytic sites. In yeast, S. cerevisiae, these structures are primarily composed of Pil1p and Lsp1p."^^xsd:string + + SubClassOf: + obo:GO_0044448, + obo:GO_0043234 + + +Class: obo:GO_0032127 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string + oboInOwl:hasExactSynonym "dense core vesicle membrane"^^xsd:string, + rdfs:label "dense core granule membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032127"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a dense core granule."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031045, + obo:GO_0030667 + + +Class: obo:GO_0060417 + + Annotations: + oboInOwl:id "GO:0060417"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PMID:18046696"^^xsd:string + obo:IAO_0000115 "The cytoplasmic part that serves as a nutrient reserve or energy source for the developing embryo."^^xsd:string, + rdfs:label "yolk"^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0060418 + + Annotations: + rdfs:label "yolk plasma"^^xsd:string, + oboInOwl:id "GO:0060418"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PMID:18046696"^^xsd:string + obo:IAO_0000115 "Discrete structures that partition the water-soluble portion of the yolk of oocytes and ova, which may or may not be membrane enclosed."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0060417, + obo:GO_0044444 + + +Class: obo:GO_0044284 + + Annotations: + oboInOwl:hasExactSynonym "cristae junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial crista junction"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1825845900"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1825845900"^^xsd:string, + oboInOwl:hasDbXref "PMID:21944719"^^xsd:string, + oboInOwl:hasDbXref "PMID:21987634"^^xsd:string, + oboInOwl:hasDbXref "PMID:22009199"^^xsd:string + obo:IAO_0000115 "A tubular structure of relatively uniform size that connects a mitochondrial crista to the mitochondrial inner boundary membrane."^^xsd:string, + oboInOwl:id "GO:0044284"^^xsd:string, + oboInOwl:hasExactSynonym "crista junction"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005743 + + +Class: obo:GO_0044285 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1858501007"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1858501007"^^xsd:string + obo:IAO_0000115 "Site of contact between the inner and outer mitochondrial membrane found in neuronal mitochondria; may play a role in maintaining the structural integrity of the inner and outer boundary membranes."^^xsd:string, + oboInOwl:id "GO:0044285"^^xsd:string, + rdfs:label "bridge contact site"^^xsd:string + + SubClassOf: + obo:GO_0044455 + + +Class: obo:GO_0044286 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tfm"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1943947957"^^xsd:string, + oboInOwl:hasDbXref "PMID:12883993"^^xsd:string, + oboInOwl:hasDbXref "PMID:16166562"^^xsd:string, + oboInOwl:hasDbXref "PMID:17591898"^^xsd:string + obo:IAO_0000115 "A cell-cell contact zone that consists of membrane invaginations extending from either cell, which contain tight-, gap-, and adherens junctions. Peg and socket contacts form between endothelial cells and pericytes, and between lens fiber cells."^^xsd:string, + rdfs:label "peg and socket contact"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1943947957"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tfm"^^xsd:string, + oboInOwl:hasDbXref "PMID:17591898"^^xsd:string + oboInOwl:hasExactSynonym "ball and socket contact"^^xsd:string, + oboInOwl:id "GO:0044286"^^xsd:string + + SubClassOf: + obo:GO_0044291 + + +Class: obo:GO_0044288 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao257629430"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao257629430"^^xsd:string + obo:IAO_0000115 "A small version of the zonula adherens type junction, characterized by a symmetrical adherent point between two cells."^^xsd:string, + oboInOwl:id "GO:0044288"^^xsd:string, + rdfs:label "puncta adhaerentia"^^xsd:string + + SubClassOf: + obo:GO_0005915 + + +Class: obo:GO_0044289 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044289"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao447856407"^^xsd:string + obo:IAO_0000115 "Sites of close apposition of the inner and outer mitochondrial membrane."^^xsd:string, + rdfs:label "contact site"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao447856407"^^xsd:string + + SubClassOf: + obo:GO_0044455 + + +Class: obo:GO_0044280 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1938587839"^^xsd:string, + oboInOwl:id "GO:0044280"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1938587839"^^xsd:string + obo:IAO_0000115 "Electron dense material observed coating the cytoplasmic face of the plasma membrane in certain regions of a neuron, e.g., the axon initial segment; the nodal membrane at the Node of Ranvier."^^xsd:string, + rdfs:label "subplasmalemmal coating"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031232, + obo:GO_0044459 + + +Class: obo:GO_0035861 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20096808"^^xsd:string, + oboInOwl:hasDbXref "PMID:21035408"^^xsd:string + oboInOwl:hasRelatedSynonym "IRIF"^^xsd:string, + oboInOwl:id "GO:0035861"^^xsd:string, + rdfs:label "site of double-strand break"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasRelatedSynonym "DNA damage foci"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20096808"^^xsd:string, + oboInOwl:hasDbXref "PMID:21035408"^^xsd:string + oboInOwl:hasRelatedSynonym "ionizing radiation-induced foci"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:21035408"^^xsd:string + oboInOwl:hasExactSynonym "site of DSB"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:20096808"^^xsd:string, + oboInOwl:hasDbXref "PMID:21035408"^^xsd:string + obo:IAO_0000115 "A region of a chromosome at which a DNA double-strand break has occurred. DNA damage signaling and repair proteins accumulate at the lesion to respond to the damage and repair the DNA to form a continuous DNA helix."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:20096808"^^xsd:string, + oboInOwl:hasDbXref "PMID:21035408"^^xsd:string + oboInOwl:hasRelatedSynonym "DNA damage focus"^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0060110 + + Annotations: + oboInOwl:id "GO:0060110"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "The layer of cuticle most closely apposed to the hypodermal cells. The morphology of the basal layer varies with life stage. In adult C. elegans animals, the basal layers is comprised of three sublayers: two fibrous layers whose fibers run in clockwise and counter-clockwise directions meeting one another at a 60 degree angle, and an amorphous basal layer that lies underneath the fibrous layers and directly contacts the hypodermis. In C. elegans dauer and L1 larval stage animals, the basal layer is characterized by a striated pattern that appears to derive from interwoven laminae. An example of this component is found in Caenorhabditis elegans."^^xsd:string, + rdfs:label "basal layer of collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "basal layer of collagen and cuticulin-based exoskeleton extracellular matrix"^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0060111 + + Annotations: + oboInOwl:id "GO:0060111"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "alae of collagen and cuticulin-based exoskeleton extracellular matrix"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "Raised, thickened cuticular ridges that run longitudinally, and in parallel, along the left and right sides of the animal. The alae lie above the hypodermal cells known as the lateral seam cells. In C. elegans, alae are produced in L1 larvae, dauer larvae and adult stage animals, where they consist of three, five, and three ridges of distinct morphology, respectively."^^xsd:string, + rdfs:label "alae of collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0035859 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:21454883"^^xsd:string + oboInOwl:hasExactSynonym "SEA complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "PMID:21454883"^^xsd:string + obo:IAO_0000115 "A protein complex that associates dynamically with the vacuolar membrane, and is proposed to have a role in membrane-associated trafficking or regulatory processes. In S. cerevisiae the complex contains Seh1p, Sec13p, Npr2p, Npr3p, Iml1p, Mtc5p, Rtc1p, and Sea4p."^^xsd:string, + oboInOwl:id "GO:0035859"^^xsd:string, + rdfs:label "Seh1-associated complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0031298 + + Annotations: + rdfs:label "replication fork protection complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031298"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "replisome progression complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "Swi1-Swi3 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasNarrowSynonym "TIMELESS-TIPIN complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15367656"^^xsd:string + obo:IAO_0000115 "A protein complex conserved in eukaryotes and associated with the replication fork; the complex stabilizes stalled replication forks and is thought to be involved in coordinating leading- and lagging-strand synthesis and in replication checkpoint signaling."^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0043596, + obo:GO_0043234 + + +Class: obo:GO_0044279 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "other organism membrane"^^xsd:string, + oboInOwl:id "GO:0044279"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A membrane of a secondary organism with which the first organism is interacting."^^xsd:string + + SubClassOf: + obo:GO_0044217 + + +Class: obo:GO_0032221 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:12773392"^^xsd:string, + oboInOwl:hasDbXref "PMID:17450151"^^xsd:string + obo:IAO_0000115 "A eukaryotically conserved histone deacetylase complex which deacetylates histones preferentially in promoter regions. Composed of a catalytic histone deacetylase subunit, a chromodomain protein, a SIN3 family co-repressor, and a WD repeat protein (Clr6p, Alp13p, Pst2p, and Prw1p respectively in Schizosaccharomyces; Rpd3p, Sin3p, Ume1p, Rco1p and Eaf3 in Saccharomyces; homologs thereof in other species)."^^xsd:string, + oboInOwl:hasExactSynonym "Rpd3C(S)"^^xsd:string, + rdfs:label "Rpd3S complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0000509"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19040720"^^xsd:string + oboInOwl:hasExactSynonym "Clr6S complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Clr6 histone deacetylase complex II'"^^xsd:string, + oboInOwl:id "GO:0032221"^^xsd:string + + SubClassOf: + obo:GO_0070822 + + +Class: obo:GO_0060102 + + Annotations: + rdfs:label "collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060102"^^xsd:string, + oboInOwl:hasRelatedSynonym "collagen and cuticulin-based exoskeleton extracellular matrix"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "A collagen and cuticulin-based noncellular, multilayered structure that is synthesized by an underlying ectodermal (hypodermal) cell layer. The cuticle serves essential functions in body morphology, locomotion, and environmental protection. An example of this component is found in Caenorhabditis elegans."^^xsd:string + + SubClassOf: + obo:GO_0005578 + + +Class: obo:GO_0060105 + + Annotations: + oboInOwl:hasRelatedSynonym "epicuticle of collagen and cuticulin-based exoskeleton extracellular matrix"^^xsd:string, + oboInOwl:id "GO:0060105"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "epicuticle of collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "A lipid-containing layer of cuticle that lies between the cortical layer and the surface coat. An example of this component is found in Caenorhabditis elegans."^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0035867 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:ebc"^^xsd:string, + oboInOwl:hasDbXref "PMID:19578119"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to insulin-like growth factor-1 (IGF-1) and type I insulin-like growth factor receptor (IGF1R). IGF1R is a heterotetramer that consists of two alpha-subunits and two beta-subunits."^^xsd:string, + rdfs:label "alphav-beta3 integrin-IGF-1-IGF1R complex"^^xsd:string, + oboInOwl:id "GO:0035867"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0060106 + + Annotations: + oboInOwl:id "GO:0060106"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "The cuticle layer that lies directly beneath the lipid-containing epicuticle. The cortical layer contains collagens and insoluble, non-collagenous cuticulins and is characterized by a distinct annular pattern consisting of regularly spaced annular ridges delineated by annular furrows. An example of this component is found in Caenorhabditis elegans."^^xsd:string, + rdfs:label "cortical layer of collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0035866 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ebc"^^xsd:string + oboInOwl:hasExactSynonym "alphav-beta3 integrin-PKCa complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:ebc"^^xsd:string, + oboInOwl:hasDbXref "PMID:16014375"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to protein kinase C alpha."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "alphav-beta3 integrin-protein kinase C alpha complex"^^xsd:string, + oboInOwl:id "GO:0035866"^^xsd:string, + rdfs:label "alphav-beta3 integrin-PKCalpha complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0060103 + + Annotations: + oboInOwl:id "GO:0060103"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Any constituent part of the collagen and cuticulin-based cuticle extracellular matrix, a collagen and cuticulin-based noncellular, multilayered structure that is synthesized by an underlying ectodermal (hypodermal) cell layer."^^xsd:string, + rdfs:label "collagen and cuticulin-based cuticle extracellular matrix part"^^xsd:string + + EquivalentTo: + obo:GO_0005575 + and (obo:BFO_0000050 some obo:GO_0060102) + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0035869 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:21422230"^^xsd:string + obo:IAO_0000115 "A region of the cilium between the basal body and proximal segment that is characterized by Y-shaped assemblages that connect axonemal microtubules to the ciliary membrane. The ciliary transition zone appears to function as a gate that controls ciliary membrane composition."^^xsd:string, + rdfs:label "ciliary transition zone"^^xsd:string, + oboInOwl:id "GO:0035869"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031513, + obo:GO_0044441 + + +Class: obo:GO_0060104 + + Annotations: + oboInOwl:id "GO:0060104"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "surface coat of collagen and cuticulin-based exoskeleton extracellular matrix"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "An electron dense, amorphous envelope that comprises the outermost layer of the cuticle. The surface coat is loosely apposed to the epicuticle, has distinct biochemical properties, is synthesized by cells other than the underlying hypodermis, and is labile. In addition to serving as a lubricant to protect against abrasion and dehydration, the surface coat may also play important roles in infection and immune evasion. An example of this component is found in Caenorhabditis elegans."^^xsd:string, + rdfs:label "surface coat of collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0035868 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ebc"^^xsd:string + oboInOwl:hasExactSynonym "alphaV-beta3 integrin-HMGB1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "alphav-beta3 integrin-high mobility group box 1 complex"^^xsd:string, + rdfs:label "alphav-beta3 integrin-HMGB1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:ebc"^^xsd:string, + oboInOwl:hasDbXref "PMID:20826760"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of an alphav-beta3 integrin complex bound to high mobility group box 1 protein."^^xsd:string, + oboInOwl:id "GO:0035868"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0060109 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "The fluid-filled cuticle layer that lies between the cortical and basal layers and is characterized by the presence of regularly spaced columnar struts that lie on either side of the annular furrows and link the two surrounding layers. In C. elegans, a defined medial layer is found only in adult animals."^^xsd:string, + oboInOwl:hasRelatedSynonym "medial layer struts"^^xsd:string, + oboInOwl:id "GO:0060109"^^xsd:string, + rdfs:label "medial layer of collagen and cuticulin-based cuticle extracellular matrix"^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060102 + + +Class: obo:GO_0060107 + + Annotations: + oboInOwl:hasRelatedSynonym "annular rings"^^xsd:string, + rdfs:label "annuli extracellular matrix"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "The extracellular matrix that is a regularly spaced circumferential ridge present in the cortical region of the cuticle. Annuli are delineated by annular furrows and are present throughout the cuticle with the exception of lateral regions where longitudinal alae are present."^^xsd:string, + oboInOwl:hasRelatedSynonym "annulae"^^xsd:string, + oboInOwl:hasRelatedSynonym "annule(s)"^^xsd:string, + oboInOwl:hasRelatedSynonym "annulus"^^xsd:string, + oboInOwl:id "GO:0060107"^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060106 + + +Class: obo:GO_0060108 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "annular furrow extracellular matrix"^^xsd:string, + oboInOwl:id "GO:0060108"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "ISSN:15518507"^^xsd:string + obo:IAO_0000115 "The extracellular matrix part that is a regularly spaced indentation in the outer cortical layer of the cuticle. The pattern of annular furrows corresponds to sites of invaginations in hypodermal cell membranes that, in turn, correspond to submembranous regions where actin microfilament bundles assemble early in lethargus, the first phase of the molting cycle in which activity and feeding decline."^^xsd:string + + SubClassOf: + obo:GO_0060103, + obo:BFO_0000050 some obo:GO_0060106 + + +Class: obo:GO_0017023 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.1.3.16"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the removal of the phosphate group from phosphomyosin."^^xsd:string, + oboInOwl:id "GO:0017023"^^xsd:string, + rdfs:label "myosin phosphatase complex"^^xsd:string + + SubClassOf: + obo:GO_0008287 + + +Class: obo:GO_0031262 + + Annotations: + rdfs:label "Ndc80 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031262"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15509863"^^xsd:string, + oboInOwl:hasDbXref "PMID:15661517"^^xsd:string + obo:IAO_0000115 "A protein complex conserved among eukaryotes that forms part of the kinetochore and plays an essential role in forming stable kinetochore-microtubule attachments. The complex contains proteins known in several species, including budding and fission yeasts, as Ndc80p, Nuf2p, Spc24p, and Spc25p. In vertebrates it is part of the outer plate of the kinetochore."^^xsd:string, + oboInOwl:hasExactSynonym "Nuf2-Ndc80 complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000776, + obo:GO_0043234 + + +Class: obo:GO_0034359 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A chylomicron that contains apolipoprotein C2 (APOC2), a cofactor for lipoprotein lipase (LPL) activity, and has a mean diameter of 500 nm and density of 0.95g/ml. Mature chylomicron particles transport exogenous (dietary) lipids from the intestines to other body tissues, via the blood and lymph."^^xsd:string, + oboInOwl:id "GO:0034359"^^xsd:string, + rdfs:label "mature chylomicron"^^xsd:string + + SubClassOf: + obo:GO_0042627 + + +Class: obo:GO_0031260 + + Annotations: + rdfs:label "pseudopodium membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031260"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a pseudopodium."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031143, + obo:GO_0031253 + + +Class: obo:GO_0031261 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031261"^^xsd:string, + oboInOwl:hasExactSynonym "pre-IC"^^xsd:string, + rdfs:label "DNA replication preinitiation complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:12694535"^^xsd:string, + oboInOwl:hasDbXref "PMID:15194812"^^xsd:string + obo:IAO_0000115 "A protein-DNA complex assembled at eukaryotic DNA replication origins immediately prior to the initiation of DNA replication. The preinitiation complex is formed by the assembly of additional proteins onto an existing prereplicative complex. In budding yeast, the additional proteins include Cdc45p, Sld2p, Sld3p, Dpb11p, DNA polymerases, and others; in fission yeast the GINS complex is present."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0032993 + + +Class: obo:GO_0031266 + + Annotations: + oboInOwl:id "GO:0031266"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12628743"^^xsd:string, + oboInOwl:hasDbXref "PMID:12655293"^^xsd:string + obo:IAO_0000115 "A protein complex formed upon binding of TRAIL to its ligand. The complex includes FADD/Mort1 and procaspase-8 addition to the ligand-bound receptor."^^xsd:string, + oboInOwl:hasExactSynonym "TRAIL DISC"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "TRAIL death-inducing signaling complex"^^xsd:string, + oboInOwl:hasExactSynonym "TRAIL death-inducing signalling complex"^^xsd:string + + SubClassOf: + obo:GO_0031264 + + +Class: obo:GO_0031264 + + Annotations: + oboInOwl:hasExactSynonym "DISC"^^xsd:string, + oboInOwl:id "GO:0031264"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Death-inducing_signaling_complex"^^xsd:string, + rdfs:label "death-inducing signaling complex"^^xsd:string, + oboInOwl:hasExactSynonym "death-inducing signalling complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12628743"^^xsd:string, + oboInOwl:hasDbXref "PMID:12655293"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of signaling proteins with a death receptor upon ligand binding. The complex includes procaspases and death domain-containing proteins in addition to the ligand-bound receptor."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0031265 + + Annotations: + oboInOwl:hasExactSynonym "CD95 death-inducing signalling complex"^^xsd:string, + oboInOwl:id "GO:0031265"^^xsd:string, + oboInOwl:hasExactSynonym "Fas death-inducing signaling complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "CD95 DISC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12628743"^^xsd:string, + oboInOwl:hasDbXref "PMID:12655293"^^xsd:string + obo:IAO_0000115 "A protein complex formed upon binding of Fas/CD95/APO-1 to its ligand. The complex includes FADD/Mort1, procaspase-8/10 and c-FLIP in addition to the ligand-bound receptor."^^xsd:string, + rdfs:label "CD95 death-inducing signaling complex"^^xsd:string + + SubClassOf: + obo:GO_0031264 + + +Class: obo:GO_0034360 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A lipoprotein particle that is derived from a mature chylomicron particle by the removal of triglycerides from the chylomicron core by lipoprotein lipase and the subsequent loss of surface components. It characteristically contains apolipoprotein E (APOE) and is cleared from the blood by the liver."^^xsd:string, + rdfs:label "chylomicron remnant"^^xsd:string, + oboInOwl:id "GO:0034360"^^xsd:string + + SubClassOf: + obo:GO_0042627 + + +Class: obo:GO_0034361 + + Annotations: + rdfs:label "very-low-density lipoprotein particle"^^xsd:string, + oboInOwl:hasExactSynonym "very-low-density lipoprotein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A triglyceride-rich lipoprotein particle that is typically composed of APOB100, APOE and APOCs and has a density of about 1.006 g/ml and a diameter of between 20-80 nm. It is found in blood and transports endogenous products (newly synthesized cholesterol and triglycerides) from the liver."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "VLDL particle"^^xsd:string, + oboInOwl:hasExactSynonym "VLDL complex"^^xsd:string, + oboInOwl:id "GO:0034361"^^xsd:string + + SubClassOf: + obo:GO_0034385 + + +Class: obo:GO_0034362 + + Annotations: + oboInOwl:id "GO:0034362"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "LDL particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A lipoprotein particle, rich in cholesterol esters and low in triglycerides that is typically composed of APOB100 and APOE and has a density of 1.02-1.06 g/ml and a diameter of between 20-25 nm. LDL particles are formed from VLDL particles (via IDL) by the loss of triglyceride and gain of cholesterol ester. They transport endogenous cholesterol (and to some extent triglycerides) from peripheral tissues back to the liver."^^xsd:string, + oboInOwl:hasExactSynonym "LDL complex"^^xsd:string, + oboInOwl:hasExactSynonym "low-density lipoprotein complex"^^xsd:string, + rdfs:label "low-density lipoprotein particle"^^xsd:string + + SubClassOf: + obo:GO_0034358 + + +Class: obo:GO_0034363 + + Annotations: + oboInOwl:hasExactSynonym "IDL complex"^^xsd:string, + oboInOwl:id "GO:0034363"^^xsd:string, + oboInOwl:hasExactSynonym "IDL particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A triglyceride-rich lipoprotein particle that typically contains APOB100, APOE and APOCs and has a density of 1.006-1.019 g/ml and a diameter of between 25-30 nm. IDL particles are found in blood and are formed by the delipidation of very-low-density lipoprotein particles (VLDL). IDL particles are removed from blood by the liver, following binding to the APOE receptor, or are converted to low-density lipoprotein (LDL)."^^xsd:string, + rdfs:label "intermediate-density lipoprotein particle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "intermediate-density lipoprotein complex"^^xsd:string + + SubClassOf: + obo:GO_0034385 + + +Class: obo:GO_0031259 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a uropod."^^xsd:string, + oboInOwl:id "GO:0031259"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "uropodium membrane"^^xsd:string, + rdfs:label "uropod membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0001931, + obo:GO_0031257, + obo:GO_0031253 + + +Class: obo:GO_0034364 + + Annotations: + oboInOwl:id "GO:0034364"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "HDL2"^^xsd:string, + oboInOwl:hasExactSynonym "high-density lipoprotein class complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "HDL3"^^xsd:string, + rdfs:label "high-density lipoprotein particle"^^xsd:string, + oboInOwl:hasExactSynonym "HDL particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:pde"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A lipoprotein particle with a high density (typically 1.063-1.21 g/ml) and a diameter of 5-10 nm that contains APOAs and may contain APOCs and APOE; found in blood and carries lipids from body tissues to the liver as part of the reverse cholesterol transport process."^^xsd:string, + oboInOwl:hasExactSynonym "HDL complex"^^xsd:string + + SubClassOf: + obo:GO_0034358 + + +Class: obo:GO_0031258 + + Annotations: + rdfs:label "lamellipodium membrane"^^xsd:string, + oboInOwl:id "GO:0031258"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a lamellipodium."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0031256, + obo:BFO_0000050 some obo:GO_0030027, + obo:GO_0031253 + + +Class: obo:GO_0034365 + + Annotations: + oboInOwl:hasExactSynonym "nascent HDL"^^xsd:string, + oboInOwl:id "GO:0034365"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "discoidal high-density lipoprotein particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A newly formed high-density lipoprotein particle; consists of a phospholipid bilayer surrounded by two or more APOA1 molecules. The discoidal HDL particle is formed when lipid-free or lipid-poor APOA1 acquires phospholipids and unesterified cholesterol from either cell membranes or triglyceride-rich lipoproteins (undergoing lipolysis by lipoprotein lipase)."^^xsd:string, + oboInOwl:hasExactSynonym "nascent high-density lipoprotein particle"^^xsd:string, + oboInOwl:hasExactSynonym "discoidal HDL"^^xsd:string + + SubClassOf: + obo:GO_0034364 + + +Class: obo:GO_0031257 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding the trailing edge of a motile cell."^^xsd:string, + oboInOwl:id "GO:0031257"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "trailing edge membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031254, + obo:GO_0044459 + + +Class: obo:GO_0034366 + + Annotations: + oboInOwl:hasExactSynonym "mature HDL"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034366"^^xsd:string, + oboInOwl:hasExactSynonym "spherical HDL"^^xsd:string, + oboInOwl:hasExactSynonym "mature high-density lipoprotein particle"^^xsd:string, + rdfs:label "spherical high-density lipoprotein particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A mature high-density lipoprotein (HDL) particle, converted from discoidal HDL particles following the esterification of cholesterol in the particle by phosphatidylcholine-sterol O-acyltransferase (lecithin cholesterol acyltransferase; LCAT)."^^xsd:string + + SubClassOf: + obo:GO_0034364 + + +Class: obo:GO_0071261 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12134063"^^xsd:string, + oboInOwl:hasDbXref "PMID:8612571"^^xsd:string + obo:IAO_0000115 "A translocon complex that contains a core heterotrimer of alpha, beta and gamma subunits, and may contain additional proteins (translocon-associated proteins or TRAPs); in budding yeast the core proteins are Ssh1p, Sbh2p, and Sss1p. The Ssh1 translocon complex is involved in the cotranslational pathway of protein transport across the ER membrane, and recognizes proteins bearing strongly hydrophobic signal sequences."^^xsd:string, + rdfs:label "Ssh1 translocon complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "Ssh1p-Sss1p-Sbh2p complex"^^xsd:string, + oboInOwl:id "GO:0071261"^^xsd:string + + SubClassOf: + obo:GO_0071256 + + +Class: obo:GO_0061177 + + Annotations: + rdfs:label "type Is terminal button"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0061177"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasRelatedSynonym "type Is terminal bouton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Terminal inflated portion of the axon of a glutamatergic neuron, containing the specialized apparatus necessary for the phasic release neurotransmitters that will induce the contraction of muscle. Type Is terminal buttons are smaller than type Ib terminal buttons."^^xsd:string + + SubClassOf: + obo:GO_0061174 + + +Class: obo:GO_0034357 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ds"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A membrane enriched in complexes formed of reaction centers, accessory pigments and electron carriers, in which photosynthetic reactions take place."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "photosynthetic membrane"^^xsd:string, + oboInOwl:id "GO:0034357"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0016020, + obo:BFO_0000050 some obo:GO_0009579 + + +Class: obo:GO_0071254 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoplasmic U snRNP body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:17595295"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that can be visualized as a focus in the cytoplasm, and contains uridine-rich small nuclear ribonucleoproteins (U snRNPs) and essential snRNP assembly factors. These U bodies are invariably found in association with P bodies."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOc:mah"^^xsd:string + oboInOwl:hasExactSynonym "U-body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:17595295"^^xsd:string + oboInOwl:hasExactSynonym "U body"^^xsd:string, + oboInOwl:id "GO:0071254"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0034358 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasma lipoprotein particle"^^xsd:string, + oboInOwl:id "GO:0034358"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:expert_pt"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A spherical particle with a hydrophobic core of triglycerides and/or cholesterol esters, surrounded by an amphipathic monolayer of phospholipids, cholesterol and apolipoproteins. Plasma lipoprotein particles transport lipids, which are non-covalently associated with the particles, in the blood or lymph."^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:GO_0032994, + obo:BFO_0000050 some obo:GO_0005615 + + +Class: obo:GO_0071256 + + Annotations: + rdfs:label "translocon complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "Sec complex-associated translocon complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611978"^^xsd:string, + oboInOwl:hasDbXref "PMID:18166647"^^xsd:string, + oboInOwl:hasDbXref "PMID:8612571"^^xsd:string + obo:IAO_0000115 "A protein complex that constitutes a specific site of protein translocation across the endoplasmic reticulum, which involves the signal recognition particle receptor. The complex contains a core heterotrimer of alpha, beta and gamma subunits, and may contain additional proteins."^^xsd:string, + oboInOwl:id "GO:0071256"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031206"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030867, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0000242 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:clt"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "A network of small fibers that surrounds the centrioles in cells; contains the microtubule nucleating activity of the centrosome."^^xsd:string, + oboInOwl:id "GO:0000242"^^xsd:string, + rdfs:label "pericentriolar material"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005813 + + +Class: obo:GO_0000243 + + Annotations: + rdfs:label "commitment complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "PMID:9150140"^^xsd:string + obo:IAO_0000115 "A spliceosomal complex that is formed by association of the U1 snRNP with the 5' splice site of an unspliced intron in an RNA transcript."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "yeast spliceosomal complex CC"^^xsd:string, + oboInOwl:id "GO:0000243"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal E complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879697393"^^xsd:string + oboInOwl:hasNarrowSynonym "mammalian spliceosomal complex E"^^xsd:string + + SubClassOf: + obo:GO_0005684, + obo:BFO_0000051 some obo:GO_0005685 + + +Class: obo:GO_0043226 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043226"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1539965131"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "organelle"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Organelle"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0043227 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao414196390"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "membrane-enclosed organelle"^^xsd:string, + rdfs:label "membrane-bounded organelle"^^xsd:string, + oboInOwl:id "GO:0043227"^^xsd:string + + SubClassOf: + obo:GO_0043226 + + +Class: obo:GO_0043228 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "non-membrane-bounded organelle"^^xsd:string, + oboInOwl:id "GO:0043228"^^xsd:string, + oboInOwl:hasExactSynonym "non-membrane-enclosed organelle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1456184038"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes."^^xsd:string + + SubClassOf: + obo:GO_0043226 + + +Class: obo:GO_0043229 + + Annotations: + oboInOwl:id "GO:0043229"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane."^^xsd:string, + rdfs:label "intracellular organelle"^^xsd:string + + SubClassOf: + obo:GO_0043226, + obo:GO_0044424 + + +Class: obo:GO_0042825 + + Annotations: + oboInOwl:hasExactSynonym "transporter associated with antigen presentation"^^xsd:string, + rdfs:label "TAP complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10618487"^^xsd:string, + oboInOwl:hasDbXref "PMID:10631934"^^xsd:string + obo:IAO_0000115 "A heterodimer composed of the subunits TAP1 and TAP2 (transporter associated with antigen presentation). Functions in the transport of antigenic peptides from the cytosol to the lumen of the endoplasmic reticulum."^^xsd:string, + oboInOwl:id "GO:0042825"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0042824, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0042824 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that although this complex is located in the endoplasmic reticulum, there is some evidence that it may also be found in the Golgi."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "MHC class I peptide loading complex"^^xsd:string, + oboInOwl:id "GO:0042824"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10631934"^^xsd:string + obo:IAO_0000115 "A large, multisubunit complex which consists of the MHC class I-beta 2 microglobulin dimer, the transporter associated with antigen presentation (TAP), tapasin (an MHC-encoded membrane protein), the chaperone calreticulin and the thiol oxidoreductase ERp57. Functions in the assembly of peptides with newly synthesized MHC class I molecules."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030176, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0042827 + + Annotations: + oboInOwl:hasExactSynonym "bull's eye body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042827"^^xsd:string, + oboInOwl:hasExactSynonym "platelet dense body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10403682"^^xsd:string, + oboInOwl:hasDbXref "PMID:11487378"^^xsd:string, + oboInOwl:hasDbXref "http://www.mercksource.com/"^^xsd:string + obo:IAO_0000115 "Electron-dense granule occurring in blood platelets that stores and secretes adenosine nucleotides and serotonin. They contain a highly condensed core consisting of serotonin, histamine, calcium, magnesium, ATP, ADP, pyrophosphate and membrane lysosomal proteins."^^xsd:string, + rdfs:label "platelet dense granule"^^xsd:string + + SubClassOf: + obo:GO_0030141 + + +Class: obo:GO_0009782 + + Annotations: + rdfs:label "photosystem I antenna complex"^^xsd:string, + oboInOwl:id "GO:0009782"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "The antenna complex of photosystem I. A photosystem has two closely linked components, an antenna containing light-absorbing pigments and a reaction center. Each antenna contains one or more light-harvesting complexes (LHCs)."^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009522, + obo:GO_0043234 + + +Class: obo:GO_0017071 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intracellular cyclic nucleotide activated cation channel complex"^^xsd:string, + oboInOwl:id "GO:0017071"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a transmembrane channel through which cations ions may pass in response to an intracellular cyclic nucleotide binding to the channel complex or one of its constituent parts."^^xsd:string + + SubClassOf: + obo:GO_0034703 + + +Class: obo:GO_0009783 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009783"^^xsd:string, + rdfs:label "photosystem II antenna complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "The antenna complex of photosystem II. A photosystem has two closely linked components, an antenna containing light-absorbing pigments and a reaction center. Each antenna contains one or more light-harvesting complexes (LHCs)."^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009523, + obo:GO_0043234 + + +Class: obo:GO_0070985 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "TFIIK complex"^^xsd:string, + oboInOwl:id "GO:0070985"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19818408"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that forms part of the holo TFIIH complex. In Saccharomyces, TFIIK contains Ccl1p, Tfb3p and Kin2p."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005675, + obo:GO_0005667 + + +Class: obo:GO_0043614 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "multi-eIF complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "A multifactor complex composed of multiple translation initiation factors and the initiatior tRNAiMet, which is ready to bind to the small (40S) ribosome to form the 43S preinitiation complex. In S. cerevisiae, this complex is composed of eIF1, eIF2, eIF3, and eIF5."^^xsd:string, + oboInOwl:hasExactSynonym "multifactor translation initiation factor (eIF) complex"^^xsd:string, + oboInOwl:id "GO:0043614"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0043231 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane."^^xsd:string, + rdfs:label "intracellular membrane-bounded organelle"^^xsd:string, + oboInOwl:id "GO:0043231"^^xsd:string, + oboInOwl:hasExactSynonym "intracellular membrane-enclosed organelle"^^xsd:string + + SubClassOf: + obo:GO_0043227, + obo:GO_0043229 + + +Class: obo:GO_0043230 + + Annotations: + rdfs:label "extracellular organelle"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043230"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:9914479"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, occurring outside the cell. Includes, for example, extracellular membrane vesicles (EMVs) and the cellulosomes of anaerobic bacteria and fungi."^^xsd:string + + EquivalentTo: + obo:GO_0043226 + and (obo:BFO_0000050 some obo:GO_0005576) + + SubClassOf: + obo:GO_0043226, + obo:GO_0044421 + + +Class: obo:GO_0043233 + + Annotations: + rdfs:label "organelle lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The internal volume enclosed by the membranes of a particular organelle; includes the volume enclosed by a single organelle membrane, e.g. endoplasmic reticulum lumen, or the volume enclosed by the innermost of the two lipid bilayers of an organelle envelope, e.g. nuclear lumen."^^xsd:string, + oboInOwl:id "GO:0043233"^^xsd:string + + SubClassOf: + obo:GO_0044422, + obo:GO_0031974 + + +Class: obo:GO_0043232 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane and occurring within the cell. Includes ribosomes, the cytoskeleton and chromosomes."^^xsd:string, + oboInOwl:hasExactSynonym "intracellular non-membrane-enclosed organelle"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043232"^^xsd:string, + rdfs:label "intracellular non-membrane-bounded organelle"^^xsd:string + + SubClassOf: + obo:GO_0043228, + obo:GO_0043229 + + +Class: obo:GO_0043235 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Any protein complex that undergoes combination with a hormone, neurotransmitter, drug or intracellular messenger to initiate a change in cell function."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043235"^^xsd:string, + rdfs:label "receptor complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0043234 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "protein-protein complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043234"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Protein_complex"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Any macromolecular complex composed of two or more polypeptide subunits, which may or may not be identical. Protein complexes may have other associated non-protein prosthetic groups, such as nucleotides, metal ions or other small molecules."^^xsd:string, + rdfs:label "protein complex"^^xsd:string + + SubClassOf: + obo:GO_0032991 + + +Class: obo:GO_0043218 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "compact myelin"^^xsd:string, + oboInOwl:id "GO:0043218"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao-1123256993"^^xsd:string + obo:IAO_0000115 "The portion of the myelin sheath in which layers of cell membrane are tightly juxtaposed, completely excluding cytoplasm. The juxtaposed cytoplasmic surfaces form the major dense line, while the juxtaposed extracellular surfaces form the interperiod line visible in electron micrographs."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao-1123256993"^^xsd:string, + oboInOwl:hasExactSynonym "Schwann Cell Compact Myelin"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0043209 + + +Class: obo:GO_0000235 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Any of the spindle microtubules that radiate in all directions from the spindle poles and are thought to contribute to the forces that separate the poles and position them in relation to the rest of the cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "astral microtubule"^^xsd:string, + oboInOwl:id "GO:0000235"^^xsd:string + + EquivalentTo: + obo:GO_0005876 + and (obo:BFO_0000050 some obo:GO_0005818) + + SubClassOf: + obo:GO_0005881, + obo:BFO_0000050 some obo:GO_0005818, + obo:GO_0005876 + + +Class: obo:GO_0043219 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043219"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string + obo:IAO_0000115 "Non-compact myelin located adjacent to the nodes of Ranvier in a myelin segment. These non-compact regions include cytoplasm from the cell responsible for synthesizing the myelin. Lateral loops are found in the paranodal region adjacent to the nodes of Ranvier, while Schmidt-Lantermann clefts are analogous structures found within the compact myelin internode."^^xsd:string, + rdfs:label "lateral loop"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0043209 + + +Class: obo:GO_0044232 + + Annotations: + oboInOwl:hasExactSynonym "inter-organelle junction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:16806880"^^xsd:string + obo:IAO_0000115 "A zone of apposition between the membranes of two organelles, structured by bridging complexes. Membrane contact sites (MCSs) are specialized for communication, including the efficient traffic of small molecules such as Ca2+ ions and lipids, as well as enzyme-substrate interactions."^^xsd:string, + oboInOwl:id "GO:0044232"^^xsd:string, + oboInOwl:hasExactSynonym "MCS"^^xsd:string, + oboInOwl:hasExactSynonym "interorganelle junction"^^xsd:string, + rdfs:label "organelle membrane contact site"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0031090, + obo:GO_0044422 + + +Class: obo:GO_0019812 + + Annotations: + oboInOwl:inSubset , + rdfs:label "Type I site-specific deoxyribonuclease complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Type I restriction enzyme complex"^^xsd:string, + oboInOwl:id "GO:0019812"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12654995"^^xsd:string, + oboInOwl:hasDbXref "PMID:15788748"^^xsd:string + obo:IAO_0000115 "A multisubunit complex composed of two copies of a restriction (R) subunit, two copies of a methylation (M) subunit, and one copy of a specificity (S) subunit. This complex recognizes specific short DNA sequences (through the S subunit), and binds to them. If the recognition site is hemimethylated, the complex acts as a methyltransferase which modifies the recognition site, using S-adenosylmethionine as the methyl donor. Only the M and S subunits are required for this reaction. If the complex binds to an unmethylated recognition site, then the complex translocates the DNA bidirectionally in an ATP-dependent manner. When the translocation is stalled by impact with another complex or unusual DNA structure, the enzyme functions as an endonuclease and cleavage of the DNA will occur, hundreds or thousands of base pairs away from the recognition site. These DNA restriction systems are used by bacteria to defend against phage and other foreign DNA that may enter a cell."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0044231 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A specialized area of membrane of the host axon terminal that faces the plasma membrane of the host neuron or muscle fiber with which the axon terminal establishes a synaptic junction; many host synaptic junctions exhibit structural presynaptic characteristics, such as conical, electron-dense internal protrusions, that distinguish it from the remainder of the axon plasma membrane."^^xsd:string, + rdfs:label "host cell presynaptic membrane"^^xsd:string, + oboInOwl:id "GO:0044231"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0044221, + obo:GO_0072556, + obo:GO_0033644 + + +Class: obo:GO_0044230 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044230"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "An envelope that surrounds a bacterial host cell and includes the host cytoplasmic membrane and everything external, encompassing the host periplasmic space, host cell wall, and host outer membrane if present."^^xsd:string, + rdfs:label "host cell envelope"^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0019815 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "An immunoglobulin complex that is present in the plasma membrane of B cells and that in its canonical form is composed of two identical immunoglobulin heavy chains and two identical immunoglobulin light chains and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + oboInOwl:hasRelatedSynonym "B cell receptor accessory molecule complex"^^xsd:string, + oboInOwl:hasExactSynonym "B lymphocyte receptor complex"^^xsd:string, + rdfs:comment "Note that an immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0042570"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "antibody"^^xsd:string, + oboInOwl:hasExactSynonym "B-lymphocyte receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "B cell receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "B-cell receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "immunoglobulin complex, membrane bound"^^xsd:string, + oboInOwl:id "GO:0019815"^^xsd:string, + oboInOwl:hasExactSynonym "BCR complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043235, + obo:GO_0019814 + + +Class: obo:GO_0019814 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex that in its canonical form is composed of two identical immunoglobulin heavy chains and two identical immunoglobulin light chains, held together by disulfide bonds and sometimes complexed with additional proteins. An immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that an immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0019814"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0044233 + + Annotations: + oboInOwl:id "GO:0044233"^^xsd:string, + oboInOwl:hasExactSynonym "endoplasmic-reticulum-mitochondrion membrane contact site"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ER-mitochondrion membrane contact site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:19556461"^^xsd:string + obo:IAO_0000115 "A zone of apposition between endoplasmic-reticulum and mitochondrial membranes, structured by bridging complexes. These contact sites are thought to facilitate inter-organelle calcium and phospholipid exchange."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044455, + obo:GO_0044232, + obo:BFO_0000050 some obo:GO_0031966, + obo:GO_0044432 + + +Class: obo:GO_0019813 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "Type III restriction enzyme complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12654995"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme complex composed of two subunits, Res and Mod, that functions as an endonuclease and cleaves DNA. Cleavage will only occur when there are two un-methylated copies of a specific recognition site in an inverse orientation on the DNA. Cleavage occurs at a specific distance away from one of the recognition sites. The Mod subunit can act alone as a methyltansferase. DNA restriction systems such as this are used by bacteria to defend against phage and other foreign DNA that may enter a cell."^^xsd:string, + oboInOwl:id "GO:0019813"^^xsd:string, + rdfs:label "Type III site-specific deoxyribonuclease complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0044228 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The external part of the host cell wall and/or host plasma membrane."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell surface"^^xsd:string, + oboInOwl:id "GO:0044228"^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0044229 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell periplasmic space"^^xsd:string, + oboInOwl:id "GO:0044229"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The region between the inner (cytoplasmic) and outer host membrane (Gram-negative Bacteria) or inner host membrane and host cell wall (Fungi)."^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0001772 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "immunological synapse"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14724296"^^xsd:string + oboInOwl:hasExactSynonym "supramolecular activation cluster"^^xsd:string, + oboInOwl:id "GO:0001772"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Immunological_synapse"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14724296"^^xsd:string + oboInOwl:hasNarrowSynonym "c-SMAC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mgi_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:11244041"^^xsd:string, + oboInOwl:hasDbXref "PMID:11376300"^^xsd:string + obo:IAO_0000115 "An area of close contact between a lymphocyte (T-, B-, or natural killer cell) and a target cell formed through the clustering of particular signaling and adhesion molecules and their associated membrane rafts on both the lymphocyte and the target cell and facilitating activation of the lymphocyte, transfer of membrane from the target cell to the lymphocyte, and in some situations killing of the target cell through release of secretory granules and/or death-pathway ligand-receptor interaction."^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0044226 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "basal pole of neuron"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1186862860"^^xsd:string + obo:IAO_0000115 "Portion of a neuron cell soma closest to the point where the basilar dendrite emerges."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1186862860"^^xsd:string, + oboInOwl:id "GO:0044226"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043025, + obo:GO_0060187 + + +Class: obo:GO_0044227 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "methane-oxidizing compartment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "methane-oxidizing organelle"^^xsd:string, + oboInOwl:hasExactSynonym "methanotroph intracytoplasmic membrane-bound compartment"^^xsd:string, + oboInOwl:id "GO:0044227"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dh"^^xsd:string + obo:IAO_0000115 "A cytoplasmic, membrane-bounded compartment found within Methanotrophic bacteria that contains enzymes and electron transfer proteins for methane catabolism. This structure is analogous to the thylakoid of Cyanobacteria and the anammoxosome of anaerobic ammonium oxidation organisms."^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0070992 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains a ribosome, mRNA, and initiator tRNA; the functional ribosome is at the AUG, with the methionyl/formyl-methionyl-tRNA positioned at the P site."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "translation initiation complex"^^xsd:string, + oboInOwl:id "GO:0070992"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0070993 + + Annotations: + oboInOwl:id "GO:0070993"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains the small ribosomal subunit, a translation initiation ternary complex (i.e. an initiator tRNA, GTP, and an IF2 or eIF2 complex), and an mRNA."^^xsd:string, + rdfs:label "translation preinitiation complex"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0043626 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12829735"^^xsd:string + obo:IAO_0000115 "A protein complex composed of three identical PCNA monomers, each comprising two similar domains, which are joined in a head-to-tail arrangement to form a homotrimer. Forms a ring-like structure in solution, with a central hole sufficiently large to accommodate the double helix of DNA. Originally characterized as a DNA sliding clamp for replicative DNA polymerases and as an essential component of the replisome, and has also been shown to be involved in other processes including Okazaki fragment processing, DNA repair, translesion DNA synthesis, DNA methylation, chromatin remodeling and cell cycle regulation."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "PCNA homotrimer"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043626"^^xsd:string, + oboInOwl:hasExactSynonym "proliferating cell nuclear antigen complex"^^xsd:string, + oboInOwl:hasBroadSynonym "sliding clamp"^^xsd:string, + rdfs:label "PCNA complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0043625 + + Annotations: + oboInOwl:hasExactSynonym "delta-DNA polymerase complex"^^xsd:string, + rdfs:label "delta DNA polymerase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043625"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "PMID:11205330"^^xsd:string, + oboInOwl:hasDbXref "PMID:12403614"^^xsd:string + obo:IAO_0000115 "A multimeric DNA polymerase enzyme complex which differs in composition amongst species; in humans it is a heterotetramer of four subunits of approximately 125, 50, 68 and 12kDa, while in S. cerevisiae, it has three different subunits which form a heterotrimer, and the active enzyme is a dimer of this heterotrimer. Functions in DNA replication, mismatch repair and excision repair."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005659"^^xsd:string + + SubClassOf: + obo:GO_0042575, + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0043601 + + +Class: obo:GO_0043220 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao254777664"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Schmidt-Lanterman incisure"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string + obo:IAO_0000115 "Regions within compact myelin in which the cytoplasmic faces of the enveloping myelin sheath are not tightly juxtaposed, and include cytoplasm from the cell responsible for making the myelin. Schmidt-Lanterman incisures occur in the compact myelin internode, while lateral loops are analogous structures found in the paranodal region adjacent to the nodes of Ranvier."^^xsd:string, + oboInOwl:hasExactSynonym "Schmidt-Lanterman cleft"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0044287"^^xsd:string, + oboInOwl:id "GO:0043220"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0043218 + + +Class: obo:GO_0000229 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A chromosome found in the cytoplasm."^^xsd:string, + oboInOwl:id "GO:0000229"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "cytoplasmic chromosome"^^xsd:string, + oboInOwl:hasNarrowSynonym "cytoplasmic interphase chromosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset + + EquivalentTo: + obo:GO_0005694 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0005694, + obo:GO_0044444 + + +Class: obo:GO_0000228 + + Annotations: + oboInOwl:id "GO:0000228"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A chromosome found in the nucleus of a eukaryotic cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear chromosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasNarrowSynonym "nuclear interphase chromosome"^^xsd:string + + EquivalentTo: + obo:GO_0005694 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0005694, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031981 + + +Class: obo:GO_0043224 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear SCF ubiquitin ligase complex"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear SCF complex"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear Skp1/Cul1/F-box protein complex"^^xsd:string, + oboInOwl:id "GO:0043224"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear cullin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex, located in the nucleus, in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1)."^^xsd:string + + EquivalentTo: + obo:GO_0019005 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0000152, + obo:GO_0019005 + + +Class: obo:GO_0043223 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic cullin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15571813"^^xsd:string, + oboInOwl:hasDbXref "PMID:15688063"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex, located in the cytoplasm, in which a cullin from the Cul1 subfamily and a RING domain protein form the catalytic core; substrate specificity is conferred by a Skp1 adaptor and an F-box protein. SCF complexes are involved in targeting proteins for degradation by the proteasome. The best characterized complexes are those from yeast and mammals (with core subunits named Cdc53/Cul1, Rbx1/Hrt1/Roc1)."^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic SCF complex"^^xsd:string, + oboInOwl:id "GO:0043223"^^xsd:string, + oboInOwl:hasExactSynonym "cytoplasmic Skp1/Cul1/F-box protein complex"^^xsd:string, + rdfs:label "cytoplasmic SCF ubiquitin ligase complex"^^xsd:string + + EquivalentTo: + obo:GO_0019005 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0000153, + obo:GO_0019005 + + +Class: obo:GO_0043209 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Myelin"^^xsd:string, + oboInOwl:id "GO:0043209"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao-593830697"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Myelin"^^xsd:string + obo:IAO_0000115 "An electrically insulating fatty layer that surrounds the axons of many neurons. It is an outgrowth of glial cells: Schwann cells supply the myelin for peripheral neurons while oligodendrocytes supply it to those of the central nervous system."^^xsd:string, + oboInOwl:hasExactSynonym "Schwann Cell Myelin Sheath"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao-593830697"^^xsd:string, + rdfs:label "myelin sheath"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0000222 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane hydrogen ion-transporting ATPase V0 domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The V0 domain of a proton-transporting V-type ATPase found in the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0000222"^^xsd:string, + rdfs:label "plasma membrane proton-transporting V-type ATPase, V0 domain"^^xsd:string + + EquivalentTo: + obo:GO_0033179 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:GO_0033179, + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0033181 + + +Class: obo:GO_0000223 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasma membrane proton-transporting V-type ATPase, V1 domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The V1 domain of a proton-transporting V-type ATPase found in the plasma membrane."^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane hydrogen ion-transporting ATPase V1 domain"^^xsd:string, + oboInOwl:id "GO:0000223"^^xsd:string + + EquivalentTo: + obo:GO_0033180 + and (obo:BFO_0000050 some obo:GO_0005886) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0033180, + obo:BFO_0000050 some obo:GO_0033181 + + +Class: obo:GO_0043203 + + Annotations: + rdfs:label "axon hillock"^^xsd:string, + oboInOwl:id "GO:0043203"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Portion of the neuronal cell soma from which the axon originates."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Axon_hillock"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao627227260"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0043025 + + +Class: obo:GO_0000220 + + Annotations: + rdfs:label "vacuolar proton-transporting V-type ATPase, V0 domain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "The V0 domain of a proton-transporting V-type ATPase found in the vacuolar membrane."^^xsd:string, + oboInOwl:id "GO:0000220"^^xsd:string, + rdfs:comment "Note that this domain often consists of five subunits, although in some mammalian tissues it may have an additional subunit."^^xsd:string, + oboInOwl:hasExactSynonym "vacuolar hydrogen ion-transporting ATPase V0 domain"^^xsd:string + + EquivalentTo: + obo:GO_0033179 + and (obo:BFO_0000050 some obo:GO_0005773) + + SubClassOf: + obo:GO_0033179, + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0016471 + + +Class: obo:GO_0043204 + + Annotations: + oboInOwl:id "GO:0043204"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "perikaryon"^^xsd:string, + oboInOwl:hasRelatedSynonym "cell soma cytoplasm"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The portion of the cell soma (cell body) that excludes the nucleus."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0043025 + + +Class: obo:GO_0000221 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "vacuolar proton-transporting V-type ATPase, V1 domain"^^xsd:string, + oboInOwl:hasExactSynonym "vacuolar hydrogen ion-transporting ATPase V1 domain"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:16449553"^^xsd:string + obo:IAO_0000115 "The V1 domain of a proton-transporting V-type ATPase found in the vacuolar membrane."^^xsd:string, + rdfs:comment "Note that this domain generally consists of eight subunits."^^xsd:string, + oboInOwl:id "GO:0000221"^^xsd:string + + EquivalentTo: + obo:GO_0033180 + and (obo:BFO_0000050 some obo:GO_0005773) + + SubClassOf: + obo:GO_0044437, + obo:BFO_0000050 some obo:GO_0016471, + obo:GO_0033180 + + +Class: obo:GO_0043205 + + Annotations: + rdfs:label "fibril"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12704238"^^xsd:string + obo:IAO_0000115 "Extracellular matrix material consisting of polysaccharides and protein."^^xsd:string, + oboInOwl:id "GO:0043205"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005578, + obo:GO_0044420 + + +Class: obo:GO_0044223 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044223"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dh"^^xsd:string, + oboInOwl:hasDbXref "PMID:19133117"^^xsd:string + obo:IAO_0000115 "A cytoplasmic structure found in bacterial phyla Planctomycetes and Verrucomicrobia containing a condensed nucleoid and ribosomes and surrounded by an intracytoplasmic membrane. It is surrounded by ribosome-free cytoplasm, in a compartment called the paryphoplasm."^^xsd:string, + rdfs:label "pirellulosome"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0044222 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dh"^^xsd:string, + oboInOwl:hasDbXref "PMID:17993524"^^xsd:string, + oboInOwl:hasDbXref "PMID:19682260"^^xsd:string + obo:IAO_0000115 "An intracytoplasmic membrane-bounded compartment in anaerobic ammonium oxidation (anammox) bacteria, is the site of anammox catabolism."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "anammoxosome"^^xsd:string, + oboInOwl:id "GO:0044222"^^xsd:string + + SubClassOf: + obo:GO_0043231, + obo:GO_0044444 + + +Class: obo:GO_0044225 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044225"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1186862860"^^xsd:string, + rdfs:label "apical pole of neuron"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1186862860"^^xsd:string + obo:IAO_0000115 "Portion of a neuron cell soma closest to the point where the apical dendrite emerges."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043025, + obo:GO_0060187 + + +Class: obo:GO_0044224 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044224"^^xsd:string, + oboInOwl:hasExactSynonym "juxtaparanodal region"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao758620702"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10624965"^^xsd:string, + oboInOwl:hasDbXref "PMID:14682359"^^xsd:string + obo:IAO_0000115 "A region of an axon near a node of Ranvier that is between the paranode and internode regions."^^xsd:string, + rdfs:label "juxtaparanode region of axon"^^xsd:string, + oboInOwl:hasExactSynonym "juxtaparanode"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:BFO_0000050 some obo:GO_0044304 + + +Class: obo:GO_0001739 + + Annotations: + rdfs:label "sex chromatin"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A condensed mass of compacted chromatin that represents an inactivated X chromosome."^^xsd:string, + oboInOwl:id "GO:0001739"^^xsd:string + + EquivalentTo: + obo:GO_0005720 + and (obo:BFO_0000050 some obo:GO_0000803) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000803, + obo:GO_0005720 + + +Class: obo:GO_0044221 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The junction between a nerve fiber of one host neuron and another host neuron or muscle fiber or glial cell; the site of interneuronal communication."^^xsd:string, + oboInOwl:id "GO:0044221"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell synapse"^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0044220 + + Annotations: + oboInOwl:id "GO:0044220"^^xsd:string, + rdfs:label "host cell perinuclear region of cytoplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The host cell cytoplasm situated near, or occurring around, the host nucleus."^^xsd:string + + SubClassOf: + obo:GO_0033655 + + +Class: obo:GO_0044219 + + Annotations: + rdfs:label "host cell plasmodesma"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "A fine cytoplasmic channel, found in all higher plants, that connects the cytoplasm of one host cell to that of an adjacent host cell."^^xsd:string, + oboInOwl:id "GO:0044219"^^xsd:string + + SubClassOf: + obo:GO_0044156 + + +Class: obo:GO_0001740 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Barr_body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "A structure found in a female mammalian cell containing an unpaired X chromosome that has become densely heterochromatic, silenced and localized at the nuclear periphery."^^xsd:string, + oboInOwl:id "GO:0001740"^^xsd:string, + rdfs:label "Barr body"^^xsd:string + + SubClassOf: + obo:GO_0000805, + obo:BFO_0000051 some obo:GO_0001739, + obo:GO_0000228 + + +Class: obo:GO_0001741 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "XY body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hjd"^^xsd:string + obo:IAO_0000115 "A structure found in a male mammalian spermatocyte containing an unpaired X chromosome that has become densely heterochromatic, silenced and localized at the nuclear periphery."^^xsd:string, + oboInOwl:id "GO:0001741"^^xsd:string + + SubClassOf: + obo:GO_0000803, + obo:BFO_0000051 some obo:GO_0001739 + + +Class: obo:GO_0017054 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15574413"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that can stably associate with TATA-binding protein on promoters, thereby preventing the assembly of transcription factors TFIIA and TFIIB and leading to repression of RNA polymerase II transcription. The two subunits, NC2alpha (Drap1) and NC2beta (Dr1), dimerize through histone fold domains of the H2A/H2B type present in the amino termini."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0017054"^^xsd:string, + rdfs:label "negative cofactor 2 complex"^^xsd:string + + SubClassOf: + obo:GO_0017053 + + +Class: obo:GO_0044215 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "other organism"^^xsd:string, + oboInOwl:id "GO:0044215"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A secondary organism with which the first organism is interacting."^^xsd:string + + SubClassOf: + obo:GO_0043245 + + +Class: obo:GO_0044216 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A cell of a secondary organism with which the first organism is interacting."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "other organism cell"^^xsd:string, + oboInOwl:id "GO:0044216"^^xsd:string + + SubClassOf: + obo:GO_0044217 + + +Class: obo:GO_0017053 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcriptional repressor complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0017053"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses activity that prevents or downregulates transcription."^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0044217 + + Annotations: + rdfs:label "other organism part"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Any constituent part of a secondary organism with which the first organism is interacting."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044217"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0044215, + obo:GO_0044421 + + +Class: obo:GO_0044218 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "foreign membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The cell membrane of a secondary organism with which the first organism is interacting."^^xsd:string, + oboInOwl:id "GO:0044218"^^xsd:string, + rdfs:label "other organism cell membrane"^^xsd:string + + SubClassOf: + obo:GO_0044279, + obo:BFO_0000050 some obo:GO_0044216 + + +Class: obo:GO_0070969 + + Annotations: + oboInOwl:id "GO:0070969"^^xsd:string, + rdfs:label "ULK1-ATG13-FIP200 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "ULK1-ATG13-RB1CC1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19211835"^^xsd:string, + oboInOwl:hasDbXref "PMID:19258318"^^xsd:string, + oboInOwl:hasDbXref "PMID:19597335"^^xsd:string + obo:IAO_0000115 "A protein complex that is essential for mammalian autophagy, and consists of at least 3 proteins: ULK1, ATG13 and RB1CC1(FIP200). This complex is the mammalian counterpart of Atg1-Atg13-Atg17 in yeast."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0017059 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "serine C-palmitoyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.3.1.50"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the transfer of a palmitoyl on to serine, forming 3-dehydro-D-sphinganine."^^xsd:string, + oboInOwl:id "GO:0017059"^^xsd:string + + SubClassOf: + obo:GO_0031211 + + +Class: obo:GO_0000214 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.1.27.9"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the endonucleolytic cleavage of pre-tRNA, producing 5'-hydroxyl and 2',3'-cyclic phosphate termini, and specifically removing the intron."^^xsd:string, + rdfs:label "tRNA-intron endonuclease complex"^^xsd:string, + oboInOwl:id "GO:0000214"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0044214 + + Annotations: + rdfs:label "fully spanning plasma membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "transmembrane"^^xsd:string, + oboInOwl:id "GO:0044214"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "Fully spanning both phospholipid bilayers of a plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0044425 + + +Class: obo:GO_0048492 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "RubisCO complex"^^xsd:string, + rdfs:label "ribulose bisphosphate carboxylase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0048492"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A complex containing either both large and small subunits or just small subunits which carries out the activity of producing 3-phosphoglycerate from carbon dioxide and ribulose-1,5-bisphosphate."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0048494 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex, located in the chromatophore, containing either both large and small subunits or just small subunits which carries out the activity of producing 3-phosphoglycerate from carbon dioxide and ribulose-1,5-bisphosphate."^^xsd:string, + oboInOwl:id "GO:0048494"^^xsd:string, + rdfs:label "chromatophore ribulose bisphosphate carboxylase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "RubisCO complex"^^xsd:string + + EquivalentTo: + obo:GO_0048492 + and (obo:BFO_0000050 some obo:GO_0042716) + + SubClassOf: + obo:GO_0048492, + obo:BFO_0000050 some obo:GO_0042716 + + +Class: obo:GO_0048493 + + Annotations: + oboInOwl:hasBroadSynonym "ribulose bisphosphate carboxylase complex"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane ribulose bisphosphate carboxylase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex, located in the plasma membrane-derived thylakoid, containing either both large and small subunits or just small subunits. It carries out the activity of producing 3-phosphoglycerate from carbon dioxide and ribulose-1,5-bisphosphate."^^xsd:string, + rdfs:label "plasma membrane-derived thylakoid ribulose bisphosphate carboxylase complex"^^xsd:string, + oboInOwl:id "GO:0048493"^^xsd:string, + oboInOwl:hasBroadSynonym "RubisCO complex"^^xsd:string + + EquivalentTo: + obo:GO_0048492 + and (obo:BFO_0000050 some obo:GO_0030075) + + SubClassOf: + obo:GO_0044436, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0030075, + obo:GO_0044422, + obo:GO_0048494 + + +Class: obo:GO_0070971 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15623529"^^xsd:string + oboInOwl:hasExactSynonym "transitional ER"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070971"^^xsd:string, + rdfs:label "endoplasmic reticulum exit site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "ER exit site"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15623529"^^xsd:string, + oboInOwl:hasDbXref "PMID:16957052"^^xsd:string + obo:IAO_0000115 "An endoplasmic reticulum part at which COPII-coated vesicles are produced."^^xsd:string + + SubClassOf: + obo:GO_0044432 + + +Class: obo:GO_0008385 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "A protein serine/threonine kinase that phosphorylates IkappaB, thereby targeting this for proteasomal degradation and allowing the nuclear translocation of kB. Composed of alpha, beta and gamma subunits, the latter not having kinase activity but presumed to play a regulatory role."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008385"^^xsd:string, + oboInOwl:hasExactSynonym "IKK complex"^^xsd:string, + rdfs:label "IkappaB kinase complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0044207 + + Annotations: + rdfs:label "translation initiation ternary complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044207"^^xsd:string, + oboInOwl:hasNarrowSynonym "Met-tRNA/eIF2.GTP ternary complex"^^xsd:string, + oboInOwl:hasExactSynonym "translation initiation (ternary) complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex that contains aminoacylated initiator methionine tRNA, GTP, and initiation factor 2 (either eIF2 in eukaryotes, or IF2 in prokaryotes). In prokaryotes, fMet-tRNA (initiator) is used rather than Met-tRNA (initiator)."^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0043601 + + Annotations: + rdfs:label "nuclear replisome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A multi-component enzymatic machine at the nuclear replication fork, which mediates DNA replication. Includes DNA primase, one or more DNA polymerases, DNA helicases, and other proteins."^^xsd:string, + oboInOwl:id "GO:0043601"^^xsd:string + + EquivalentTo: + obo:GO_0030894 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044454, + obo:GO_0030894, + obo:BFO_0000050 some obo:GO_0043596 + + +Class: obo:GO_0001750 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0824072820"^^xsd:string + obo:IAO_0000115 "The outer segment of a vertebrate photoreceptor that contains discs of photoreceptive membranes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "photoreceptor outer segment"^^xsd:string, + oboInOwl:id "GO:0001750"^^xsd:string + + SubClassOf: + obo:GO_0031513 + + +Class: obo:GO_0044204 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044204"^^xsd:string, + rdfs:label "host cell nuclear matrix"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The dense fibrillar network lying on the inner side of the host nuclear membrane."^^xsd:string + + SubClassOf: + obo:GO_0044094 + + +Class: obo:GO_0043600 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytoplasmic replisome"^^xsd:string, + oboInOwl:id "GO:0043600"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A multi-component enzymatic machine at the cytoplasmic replication fork, which mediates DNA replication. Includes DNA primase, DNA polymerase, DNA helicase, and other proteins."^^xsd:string + + EquivalentTo: + obo:GO_0030894 + and (obo:BFO_0000050 some obo:GO_0005737) + + SubClassOf: + obo:GO_0030894, + obo:BFO_0000050 some obo:GO_0043597, + obo:GO_0044444 + + +Class: obo:GO_0043202 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "lysosomal lumen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:15213228"^^xsd:string + obo:IAO_0000115 "The volume enclosed within the lysosomal membrane."^^xsd:string, + oboInOwl:id "GO:0043202"^^xsd:string + + SubClassOf: + obo:GO_0005775, + obo:BFO_0000050 some obo:GO_0005764 + + +Class: obo:GO_0080085 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0080085"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17513500"^^xsd:string + obo:IAO_0000115 "A complex consisting of a protein and RNA component which binds the signal sequence of some proteins and facilitates their export to the chloroplast."^^xsd:string, + rdfs:label "signal recognition particle, chloroplast targeting"^^xsd:string + + SubClassOf: + obo:GO_0048500 + + +Class: obo:GO_0044322 + + Annotations: + oboInOwl:id "GO:0044322"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "ERQC"^^xsd:string, + oboInOwl:hasExactSynonym "ER quality control compartment"^^xsd:string, + rdfs:label "endoplasmic reticulum quality control compartment"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11408579"^^xsd:string + obo:IAO_0000115 "A subcompartment of the endoplasmic reticulum in which proteins with improper or incorrect folding accumulate. Enzymes in this compartment direct proteins with major folding problems to translocation to the cytosol and degradation, and proteins with minor folding problems to the ER, to interact with chaperon proteins."^^xsd:string, + oboInOwl:hasRelatedSynonym "ER-derived quality control compartment"^^xsd:string + + SubClassOf: + obo:GO_0044432 + + +Class: obo:GO_0043656 + + Annotations: + oboInOwl:id "GO:0043656"^^xsd:string, + oboInOwl:hasExactSynonym "host intracellular"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "That space within the plasma membrane of a host cell."^^xsd:string, + rdfs:label "intracellular region of host"^^xsd:string + + SubClassOf: + obo:GO_0033643 + + +Class: obo:GO_0043657 + + Annotations: + oboInOwl:id "GO:0043657"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A cell within a host organism. Includes the host plasma membrane and any external encapsulating structures such as the host cell wall and cell envelope."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host cell"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0018995, + obo:GO_0044216 + + +Class: obo:GO_0043655 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "The space within a host but external to the plasma membrane of host cells, e.g. within host bloodstream."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0043655"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "host extracellular space"^^xsd:string, + rdfs:label "extracellular space of host"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0018995, + obo:GO_0044421 + + +Class: obo:GO_0070274 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sre"^^xsd:string + oboInOwl:hasExactSynonym "pre-mRNA retention and splicing complex"^^xsd:string, + oboInOwl:id "GO:0070274"^^xsd:string, + rdfs:label "RES complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15565172"^^xsd:string, + oboInOwl:hasDbXref "PMID:18809678"^^xsd:string, + oboInOwl:hasDbXref "PMID:19010333"^^xsd:string, + oboInOwl:hasDbXref "PMID:19033360"^^xsd:string + obo:IAO_0000115 "A protein complex that is required for efficient splicing, and prevents leakage of unspliced pre-mRNAs from the nucleus (named for pre-mRNA REtention and Splicing). In Saccharomyces, the complex consists of Ist3p, Bud13p, and Pml1p."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0043234 + + +Class: obo:GO_0043658 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "A double-enveloped cell compartment, composed of the endosymbiont with its plasmalemma (as inner envelope) and an outer envelope (the perisymbiontic membrane) derived from the host cell."^^xsd:string, + oboInOwl:id "GO:0043658"^^xsd:string, + rdfs:label "host symbiosome"^^xsd:string + + SubClassOf: + obo:GO_0033648, + obo:GO_0033655 + + +Class: obo:GO_0043659 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "A double-enveloped cell compartment, composed of an endosymbiont with its plasmalemma (as inner envelope) and a non-endosymbiotic outer envelope (the perisymbiontic membrane)."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043659"^^xsd:string, + rdfs:label "symbiosome"^^xsd:string + + SubClassOf: + obo:GO_0030139 + + +Class: obo:GO_0043660 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "bacteroid-containing symbiosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "A symbiosome containing any of various structurally modified bacteria, such as those occurring on the root nodules of leguminous plants."^^xsd:string, + oboInOwl:id "GO:0043660"^^xsd:string + + SubClassOf: + obo:GO_0043659 + + +Class: obo:GO_0045334 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "A clathrin-coated, membrane-bounded intracellular vesicle formed by invagination of the plasma membrane around an extracellular substance."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045334"^^xsd:string, + rdfs:label "clathrin-coated endocytic vesicle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1243595998"^^xsd:string + + SubClassOf: + obo:GO_0030139, + obo:GO_0030136 + + +Class: obo:GO_0043664 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043664"^^xsd:string, + rdfs:label "host peribacteroid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "A host-derived membrane that surrounds one or more bacteroids (such as nitrogen-fixing bacteroids within legume root nodule cells)."^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0043663 + + +Class: obo:GO_0043663 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043663"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "A symbiosome containing any of various structurally modified bacteria, such as those occurring on the root nodules of leguminous plants, of a host cell."^^xsd:string, + rdfs:label "host bacteroid-containing symbiosome"^^xsd:string + + SubClassOf: + obo:GO_0043658 + + +Class: obo:GO_0045336 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A clathrin-coated, membrane-bounded intracellular vesicle that arises from the ingestion of particulate material by phagocytosis."^^xsd:string, + oboInOwl:hasExactSynonym "clathrin-coated phagosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0045336"^^xsd:string, + rdfs:label "clathrin-coated phagocytic vesicle"^^xsd:string + + SubClassOf: + obo:GO_0045334, + obo:GO_0045335 + + +Class: obo:GO_0043662 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "The soluble material inside the peribacteroid membrane, but outside of the bacteroid, within a bacteroid-containing symbiosome."^^xsd:string, + rdfs:label "peribacteroid fluid"^^xsd:string, + oboInOwl:id "GO:0043662"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043660, + obo:GO_0044433 + + +Class: obo:GO_0043661 + + Annotations: + rdfs:label "peribacteroid membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043661"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "A membrane that surrounds one or more bacteroids (such as nitrogen-fixing bacteroids within legume root nodule cells)."^^xsd:string + + SubClassOf: + obo:GO_0030659, + obo:BFO_0000050 some obo:GO_0043660 + + +Class: obo:GO_0045335 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "phagocytic vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A membrane-bounded intracellular vesicle that arises from the ingestion of particulate material by phagocytosis."^^xsd:string, + oboInOwl:id "GO:0045335"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Phagosome"^^xsd:string, + oboInOwl:hasExactSynonym "phagosome"^^xsd:string + + SubClassOf: + obo:GO_0030139 + + +Class: obo:GO_0044316 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cone cell pedicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10939333"^^xsd:string, + oboInOwl:hasDbXref "http://webvision.med.utah.edu/photo2.html"^^xsd:string + obo:IAO_0000115 "A specialized axon terminus which is produced by retinal cone cells. Pedicles are large, conical, flat end-feet (8-10 micrometers diameter) of the retinal cone axon that lie more or less side by side on the same plane at the outer edge of the outer plexiform layer (OPL)."^^xsd:string, + oboInOwl:hasExactSynonym "cone pedicle"^^xsd:string, + oboInOwl:id "GO:0044316"^^xsd:string + + SubClassOf: + obo:GO_0043679 + + +Class: obo:GO_0044317 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://webvision.med.utah.edu/photo2.html"^^xsd:string + obo:IAO_0000115 "A specialized neuron projection which is the site of synaptic transmission produced by retinal rod cells. Rod spherules are small round enlargements of the axon (3-5 micrometers diameter) or even extensions of the cell body."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "rod spherule"^^xsd:string, + oboInOwl:hasExactSynonym "rod photoreceptor spherule"^^xsd:string, + oboInOwl:hasExactSynonym "rod cell spherule"^^xsd:string, + oboInOwl:id "GO:0044317"^^xsd:string + + SubClassOf: + obo:GO_0043005 + + +Class: obo:GO_0046862 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround a chromoplast and form the chromoplast envelope."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0046862"^^xsd:string, + rdfs:label "chromoplast membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031898, + obo:GO_0042170 + + +Class: obo:GO_0046861 + + Annotations: + oboInOwl:hasExactSynonym "glyoxysome membrane"^^xsd:string, + oboInOwl:id "GO:0046861"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "glyoxysomal membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a glyoxysome."^^xsd:string + + SubClassOf: + obo:GO_0005778 + + +Class: obo:GO_0046860 + + Annotations: + oboInOwl:id "GO:0046860"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a glycosome."^^xsd:string, + rdfs:label "glycosome membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020015, + obo:GO_0005778 + + +Class: obo:GO_0044312 + + Annotations: + oboInOwl:id "GO:0044312"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:19932717"^^xsd:string + obo:IAO_0000115 "A transient, cytoplasmic organelle found in Plasmodium species that resembles a cytoplasmic inclusion body and whose function is poorly understood. Crystalloids form in ookinetes and disappear after ookinete-to-oocyst transformation."^^xsd:string, + rdfs:label "crystalloid"^^xsd:string + + SubClassOf: + obo:GO_0043232, + obo:GO_0044444 + + +Class: obo:GO_0044311 + + Annotations: + oboInOwl:id "GO:0044311"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18083092"^^xsd:string, + oboInOwl:hasDbXref "PMID:18083098"^^xsd:string + obo:IAO_0000115 "A dense granule-like organelle of the apical complex of merozoites, released into the parasitophorous vacuole, mediating protease-dependent rupture and parasite exit from the infected erythrocyte."^^xsd:string, + rdfs:label "exoneme"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020007, + obo:GO_0043231 + + +Class: obo:GO_0044310 + + Annotations: + oboInOwl:id "GO:0044310"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "osmiophilic body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:18086189"^^xsd:string + obo:IAO_0000115 "A membrane-bounded vesicle found predominantly in Plasmodium female gametocytes, that becomes progressively more abundant as the gametocyte reaches full maturity. These vesicles lie beneath the subpellicular membrane of the gametocyte, and the release of their contents into the parasitophorous vacuole has been postulated to aid in the escape of gametocytes from the erythrocyte after ingestion by the mosquito."^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0043665 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:cc"^^xsd:string + obo:IAO_0000115 "The soluble material inside the peribacteroid membrane, but outside of the bacteroid, within a bacteroid-containing symbiosome of a host cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043665"^^xsd:string, + rdfs:label "host peribacteroid fluid"^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0043663 + + +Class: obo:GO_0043667 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043667"^^xsd:string, + rdfs:label "pollen wall"^^xsd:string, + rdfs:comment "Note that this term is a child of 'extracellular matrix part ; GO:0044420' rather than the more specific middle lamella-containing extracellular matrix ; GO:0048196', because unlike the usual plant cell wall, the pollen wall does not contain a middle lamella, as specified in the definition of 'middle lamella-containing extracellular matrix ; GO:0048196'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:fz"^^xsd:string + obo:IAO_0000115 "The complex wall surrounding a pollen grain."^^xsd:string, + oboInOwl:hasExactSynonym "microspore wall"^^xsd:string + + SubClassOf: + obo:GO_0044420 + + +Class: obo:GO_0043668 + + Annotations: + rdfs:label "exine"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The outer layer of the pollen grain wall which is composed primarily of sporopollenin."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043668"^^xsd:string, + rdfs:comment "Note that the exine is highly resistant to strong acids and bases."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043667, + obo:GO_0044420 + + +Class: obo:GO_0043669 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The outer part of the exine, which stains positively with basic fuchsin in optical microscopy and has higher electron density in conventionally prepared TEM sections."^^xsd:string, + rdfs:comment "Note that ectexine is distinguished on staining properties; compare with 'sexine ; GO:0043673'. See also 'endexine ; GO:0043671'."^^xsd:string, + oboInOwl:id "GO:0043669"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ectexine"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043668, + obo:GO_0044420 + + +Class: obo:GO_0070264 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string, + oboInOwl:hasDbXref "PMID:19116144"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that is involved in regulating transcription from RNA polymerase III (Pol III) promoters. TFIIIE contains a specific subset of ribosomal proteins."^^xsd:string, + rdfs:label "transcription factor TFIIIE complex"^^xsd:string, + oboInOwl:id "GO:0070264"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0070263 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The side of the fungal-type cell wall that is opposite to the side that faces the cell and its contents."^^xsd:string, + rdfs:label "external side of fungal-type cell wall"^^xsd:string, + oboInOwl:id "GO:0070263"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009277, + obo:GO_0010339 + + +Class: obo:GO_0045320 + + Annotations: + oboInOwl:id "GO:0045320"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast proton-transporting F-type ATPase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chloroplast proton-transporting ATP synthase complex"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast hydrogen-translocating F-type ATPase complex"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-translocating F-type ATPase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:pj"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716743663"^^xsd:string + obo:IAO_0000115 "A proton-transporting ATP synthase complex found in the chloroplast thylakoid membrane; it catalyzes the phosphorylation of ADP to ATP during photo-phosphorylation."^^xsd:string + + EquivalentTo: + obo:GO_0045259 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:GO_0044436, + obo:BFO_0000050 some obo:GO_0009535, + obo:GO_0045259, + obo:GO_0044434 + + +Class: obo:GO_0043671 + + Annotations: + rdfs:label "endexine"^^xsd:string, + rdfs:comment "Note that endexine is distinguished on staining properties; compare with 'sexine ; GO:0043673'. See also 'ectexine ; GO:0043669'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The inner part of the exine, which stains."^^xsd:string, + oboInOwl:id "GO:0043671"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043668, + obo:GO_0044420 + + +Class: obo:GO_0043670 + + Annotations: + oboInOwl:hasExactSynonym "nexine 1"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "foot layer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The inner layer of the ectexine."^^xsd:string, + oboInOwl:id "GO:0043670"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043669, + obo:GO_0044420 + + +Class: obo:GO_0043673 + + Annotations: + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The outer, sculptured layer of the exine, which lies above the nexine."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the sexine sometimes consists of 5 layers, but of those, 3 layers are the most common (sexine 1 = columellae; sexine 2 = tectum; sexine 3 = sculpture elements). Sexine is distinguished on purely morphological criteria; compare with 'ectexine ; GO:0043669'. See also 'nexine ; GO:0043672'."^^xsd:string, + rdfs:label "sexine"^^xsd:string, + oboInOwl:id "GO:0043673"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043668, + obo:GO_0044420 + + +Class: obo:GO_0043672 + + Annotations: + rdfs:label "nexine"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The inner, non-sculptured part of the exine which lies below the sexine."^^xsd:string, + rdfs:comment "Note that nexine is distinguished on purely morphological criteria; compare with 'endexine ; GO:0043671'. See also 'sexine ; GO:0043673'."^^xsd:string, + oboInOwl:id "GO:0043672"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043668, + obo:GO_0044420 + + +Class: obo:GO_0045323 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-1 receptor complex"^^xsd:string, + oboInOwl:id "GO:0045323"^^xsd:string, + rdfs:label "interleukin-1 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "InterPro:IPR004075"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-1; comprises an alpha and a beta subunit."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0043675 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043675"^^xsd:string, + rdfs:label "sculpture element"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The third layer of the sexine."^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0043673 + + +Class: obo:GO_0043674 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "sexine 1"^^xsd:string, + rdfs:label "columella"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "A rod-like element of the sexine and ectexine, supporting either the tectum (the layer of sexine which forms a roof over the columella), or supporting a caput (an architectural element on top of a columella)."^^xsd:string, + oboInOwl:id "GO:0043674"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0043673 + + +Class: obo:GO_0044305 + + Annotations: + rdfs:label "calyx of Held"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1684283879"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1684283879"^^xsd:string, + oboInOwl:hasDbXref "PMID:11823805"^^xsd:string + obo:IAO_0000115 "The terminal specialization of a calyciferous axon which forms large synapses in the mammalian auditory central nervous system."^^xsd:string, + oboInOwl:id "GO:0044305"^^xsd:string + + SubClassOf: + obo:GO_0043679 + + +Class: obo:GO_0000276 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "All non-F1 subunits of the mitochondrial hydrogen-transporting ATP synthase, including integral and peripheral mitochondrial inner membrane proteins."^^xsd:string, + rdfs:label "mitochondrial proton-transporting ATP synthase complex, coupling factor F(o)"^^xsd:string, + oboInOwl:id "GO:0000276"^^xsd:string + + EquivalentTo: + obo:GO_0045263 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:GO_0045263, + obo:BFO_0000050 some obo:GO_0005753 + + +Class: obo:GO_0044306 + + Annotations: + rdfs:label "neuron projection terminus"^^xsd:string, + oboInOwl:hasExactSynonym "neuron terminal specialization"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "neuron projection terminal"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The specialized, terminal region of a neuron projection such as an axon or a dendrite."^^xsd:string, + oboInOwl:id "GO:0044306"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043005, + obo:GO_0044463 + + +Class: obo:GO_0000275 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogen-transporting ATP synthase, F1 sector"^^xsd:string, + oboInOwl:id "GO:0000275"^^xsd:string, + oboInOwl:hasBroadSynonym "proton-transporting ATP synthase complex, catalytic core F(1)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "The catalytic sector of the mitochondrial hydrogen-transporting ATP synthase; it comprises the catalytic core and central stalk, and is peripherally associated with the mitochondrial inner membrane when the entire ATP synthase is assembled."^^xsd:string, + rdfs:comment "See also the cellular component term 'mitochondrial inner membrane ; GO:0005743'."^^xsd:string, + rdfs:label "mitochondrial proton-transporting ATP synthase complex, catalytic core F(1)"^^xsd:string + + EquivalentTo: + obo:GO_0045261 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045261, + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0005753 + + +Class: obo:GO_0046859 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a hydrogenosome."^^xsd:string, + rdfs:label "hydrogenosomal membrane"^^xsd:string, + oboInOwl:id "GO:0046859"^^xsd:string, + oboInOwl:hasExactSynonym "hydrogenosome membrane"^^xsd:string + + SubClassOf: + obo:GO_0031090, + obo:BFO_0000050 some obo:GO_0042566, + obo:GO_0044444 + + +Class: obo:GO_0044303 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1470140754"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1470140754"^^xsd:string + obo:IAO_0000115 "Any of the smaller branches of an axon that emanate from the main axon cylinder."^^xsd:string, + oboInOwl:id "GO:0044303"^^xsd:string, + rdfs:label "axon collateral"^^xsd:string + + SubClassOf: + obo:GO_0033267 + + +Class: obo:GO_0000274 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0000274"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:10838056"^^xsd:string + obo:IAO_0000115 "One of two stalks that connect the catalytic core of the hydrogen-transporting ATP synthase to the mitochondrial membrane-associated F0 proteins; is thought to prevent futile rotation of the catalytic core."^^xsd:string, + rdfs:label "mitochondrial proton-transporting ATP synthase, stator stalk"^^xsd:string + + EquivalentTo: + obo:GO_0045265 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044455, + obo:BFO_0000050 some obo:GO_0000276, + obo:GO_0045265 + + +Class: obo:GO_0044304 + + Annotations: + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1596975044"^^xsd:string + obo:IAO_0000115 "The main axonal trunk, as opposed to the collaterals."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1596975044"^^xsd:string, + rdfs:label "main axon"^^xsd:string, + oboInOwl:id "GO:0044304"^^xsd:string, + oboInOwl:hasExactSynonym "axon trunk"^^xsd:string + + SubClassOf: + obo:GO_0033267 + + +Class: obo:GO_0044309 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1145756102"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "neuron spine"^^xsd:string, + oboInOwl:id "GO:0044309"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198504888"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1145756102"^^xsd:string + obo:IAO_0000115 "A small membranous protrusion, often ending in a bulbous head and attached to the neuron by a narrow stalk or neck."^^xsd:string + + SubClassOf: + obo:GO_0043005 + + +Class: obo:GO_0046858 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Chlorosome"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chlorosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "PMID:14729689"^^xsd:string, + oboInOwl:hasDbXref "PMID:15298919"^^xsd:string + obo:IAO_0000115 "A large enclosure of aggregated pigment, typically bacteriochlorophyll c (BChl c), that acts as a light-harvesting antenna structure and is characteristic of green photosynthetic bacteria (e.g. Chlorobiaceae). The BChl aggregates are organized into lamellar elements by pigment-pigment rather than pigment-protein interactions. Chlorosomes also contain BChl a, carotenoids, quinones, lipids, and proteins, and are attached to the cytoplasmic membrane via a BChl a-containing protein baseplate."^^xsd:string, + oboInOwl:id "GO:0046858"^^xsd:string + + SubClassOf: + obo:GO_0043232 + + +Class: obo:GO_0044307 + + Annotations: + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao884265541"^^xsd:string + obo:IAO_0000115 "A dendrite arising from another dendrite."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "dendritic branch"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao884265541"^^xsd:string, + oboInOwl:id "GO:0044307"^^xsd:string, + oboInOwl:hasExactSynonym "dendrite branch"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030425 + + +Class: obo:GO_0044308 + + Annotations: + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao18239917"^^xsd:string + obo:IAO_0000115 "A spine that originates from the axon, usually from the initial segment."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "axonal spine"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao18239917"^^xsd:string, + oboInOwl:hasExactSynonym "axon spine"^^xsd:string, + oboInOwl:id "GO:0044308"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:GO_0044309 + + +Class: obo:GO_0044300 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090209"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cerebellar mossy fibre"^^xsd:string, + oboInOwl:id "GO:0044300"^^xsd:string, + rdfs:label "cerebellar mossy fiber"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090209"^^xsd:string + obo:IAO_0000115 "An axon arising from cerebellar projecting cells in the cochlea, vestibular nuclei, spinal cord, reticular formation, cerebellar nuclei and basilar pontine nuclei. Mossy fibers enter through all three cerebellar peduncles and send collaterals to the deep cerebellar nuclei, then branch in the white matter and terminate in the granule cell layer. Through this branching, a given mossy fiber can innervate several folia. Mossy fibers synapse on granule cells. The synaptic contacts are made at enlargements along the length of the mossy fiber called mossy fiber rosettes. The enlargements of the rosettes give the axons as \"mossy\" appearance in Golgi stained preparations."^^xsd:string + + SubClassOf: + obo:GO_0030424 + + +Class: obo:GO_0044302 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090601"^^xsd:string, + rdfs:label "dentate gyrus mossy fiber"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044302"^^xsd:string, + oboInOwl:hasExactSynonym "granule cell axon"^^xsd:string, + oboInOwl:hasExactSynonym "dentate gyrus mossy fibre"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090601"^^xsd:string, + oboInOwl:hasDbXref "PMID:17765709"^^xsd:string + obo:IAO_0000115 "Distinctive, unmyelinated axons produced by granule cells."^^xsd:string + + SubClassOf: + obo:GO_0030424 + + +Class: obo:GO_0044301 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044301"^^xsd:string, + rdfs:label "climbing fiber"^^xsd:string, + oboInOwl:hasExactSynonym "climbing fibre"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090203"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090203"^^xsd:string + obo:IAO_0000115 "The axon of inferior olive neuron that projects to the cerebellar cortex, largely via the inferior cerebellar peduncle. They range in diameter from 1-3 um and are myelinated until they enter the granule cell layer. They give off collaterals to the deep cerebellar nuclei. They synapse extensively with the dendrites of Purkinje cells in the molecular layer, where each fiber branches repeatedly to \"climb\" along the Purkinje cell dendritic tree. Each Purkinje cell is innervated by only a single climbing fiber."^^xsd:string + + SubClassOf: + obo:GO_0030424 + + +Class: obo:GO_0030128 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A clathrin coat found on an endocytic vesicle."^^xsd:string, + oboInOwl:hasExactSynonym "clathrin coat of endocytotic vesicle"^^xsd:string, + oboInOwl:id "GO:0030128"^^xsd:string, + rdfs:label "clathrin coat of endocytic vesicle"^^xsd:string + + EquivalentTo: + obo:GO_0030118 + and (obo:BFO_0000050 some obo:GO_0030139) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030669, + obo:GO_0030125 + + +Class: obo:GO_0030129 + + Annotations: + rdfs:label "clathrin coat of synaptic vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030129"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A clathrin coat found on a synaptic vesicle."^^xsd:string + + EquivalentTo: + obo:GO_0030118 + and (obo:BFO_0000050 some obo:GO_0008021) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030672, + obo:GO_0044456, + obo:GO_0030125 + + +Class: obo:GO_0030124 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "AP-4 adaptor complex"^^xsd:string, + oboInOwl:id "GO:0030124"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611976"^^xsd:string + obo:IAO_0000115 "An AP-type membrane coat adaptor complex that consists of beta4, epsilon, mu4 and sigma4 subunits and is found associated with membranes in the trans-Golgi network; it is not clear whether AP-4 forms clathrin coats in vivo."^^xsd:string + + SubClassOf: + obo:GO_0030119 + + +Class: obo:GO_0030125 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A clathrin coat found on a vesicle."^^xsd:string, + oboInOwl:id "GO:0030125"^^xsd:string, + rdfs:label "clathrin vesicle coat"^^xsd:string + + SubClassOf: + obo:GO_0030118, + obo:BFO_0000050 some obo:GO_0030665, + obo:GO_0030120 + + +Class: obo:GO_0030126 + + Annotations: + oboInOwl:hasExactSynonym "coatomer"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "COPI vesicle coat"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0017167"^^xsd:string, + oboInOwl:id "GO:0030126"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11252894"^^xsd:string + obo:IAO_0000115 "One of two multimeric complexes that forms a membrane vesicle coat. The mammalian COPI subunits are called alpha-, beta-, beta'-, gamma-, delta-, epsilon- and zeta-COP. Vesicles with COPI coats are found associated with Golgi membranes at steady state."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030663, + obo:GO_0030120, + obo:GO_0044431 + + +Class: obo:GO_0070258 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070258"^^xsd:string, + rdfs:label "inner membrane complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12456714"^^xsd:string + obo:IAO_0000115 "A membrane structure formed of two closely aligned lipid bilayers that lie beneath the plasma membrane and form part of the pellicle surrounding an apicomplexan parasite cell."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:BFO_0000050 some obo:GO_0020039 + + +Class: obo:GO_0030127 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ascb_2009"^^xsd:string, + oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PMID:11252894"^^xsd:string + obo:IAO_0000115 "One of two multimeric complexes that forms a membrane vesicle coat. COPII is best characterized in S. cerevisiae, where the subunits are called Sar1p, Sec13p, Sec31p, Sec23p, and Sec24p. Vesicles with COPII coats are found associated with endoplasmic reticulum (ER) membranes at steady state."^^xsd:string, + rdfs:label "COPII vesicle coat"^^xsd:string, + oboInOwl:id "GO:0030127"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0012507, + obo:GO_0030120 + + +Class: obo:GO_0030132 + + Annotations: + rdfs:label "clathrin coat of coated pit"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The coat found on coated pits and the coated vesicles derived from coated pits; comprises clathrin and the AP-2 adaptor complex."^^xsd:string, + oboInOwl:id "GO:0030132"^^xsd:string + + EquivalentTo: + obo:GO_0030118 + and (obo:BFO_0000050 some obo:GO_0005905) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005905, + obo:GO_0030118, + obo:GO_0044459 + + +Class: obo:GO_0030131 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A membrane coat adaptor complex that links clathrin to a membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030131"^^xsd:string, + rdfs:label "clathrin adaptor complex"^^xsd:string + + SubClassOf: + obo:GO_0030119, + obo:BFO_0000050 some obo:GO_0030118 + + +Class: obo:GO_0030134 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ascb_2009"^^xsd:string, + oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string, + oboInOwl:hasDbXref "PMID:11252894"^^xsd:string + obo:IAO_0000115 "A vesicle that mediates transport from the endoplasmic reticulum to the Golgi complex; bears a coat formed of the COPII coat complex proteins; such vesicles found associated with endoplasmic reticulum (ER) membranes at steady state, and are involved in ER to Golgi (anterograde) vesicle transport."^^xsd:string, + oboInOwl:hasExactSynonym "endoplasmic reticulum to Golgi transport vesicle"^^xsd:string, + rdfs:label "ER to Golgi transport vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030138"^^xsd:string, + oboInOwl:hasExactSynonym "endoplasmic reticulum-Golgi transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "COPII-coated vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "ER-Golgi transport vesicle"^^xsd:string, + oboInOwl:hasRelatedSynonym "COPII vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "ER to Golgi constitutive secretory pathway transport vesicle"^^xsd:string, + oboInOwl:id "GO:0030134"^^xsd:string + + SubClassOf: + obo:GO_0030133, + obo:GO_0030135 + + +Class: obo:GO_0030133 + + Annotations: + oboInOwl:hasExactSynonym "constitutive secretory pathway transport vesicle"^^xsd:string, + rdfs:label "transport vesicle"^^xsd:string, + oboInOwl:hasNarrowSynonym "Golgi to vacuole transport vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "secretory vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any of the vesicles of the constitutive secretory pathway, which carry cargo from the endoplasmic reticulum to the Golgi, between Golgi cisternae, or to destinations within or outside the cell."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao885490876"^^xsd:string, + oboInOwl:hasNarrowSynonym "Golgi-vacuole transport vesicle"^^xsd:string, + rdfs:comment "Note that the term 'secretory vesicle' is sometimes used in this sense, but can also mean 'secretory granule ; GO:0030141'."^^xsd:string, + oboInOwl:id "GO:0030133"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0032398 + + Annotations: + oboInOwl:id "GO:0032398"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string, + oboInOwl:hasDbXref "PMID:15928678"^^xsd:string + obo:IAO_0000115 "A transmembrane protein complex composed of a MHC class Ib alpha chain and, in most cases, an invariant beta2-microglobin chain, and with or without a bound peptide or lipid antigen. Class Ib here refers to non-classical class I molecules, such as those of the CD1 or HLA-E gene families."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MHC class Ib protein complex"^^xsd:string + + SubClassOf: + obo:GO_0042611 + + +Class: obo:GO_0030130 + + Annotations: + oboInOwl:hasExactSynonym "clathrin coat of TGN vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A clathrin coat found on a vesicle of the trans-Golgi network."^^xsd:string, + rdfs:label "clathrin coat of trans-Golgi network vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030130"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0012510, + obo:GO_0030125, + obo:GO_0044431 + + +Class: obo:GO_0000267 + + Annotations: + oboInOwl:inSubset , + rdfs:label "cell fraction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "A generic term for parts of cells prepared by disruptive biochemical techniques."^^xsd:string, + oboInOwl:id "GO:0000267"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0032391 + + Annotations: + oboInOwl:hasRelatedSynonym "photoreceptor cilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15917207"^^xsd:string, + oboInOwl:hasDbXref "PMID:8718680"^^xsd:string + obo:IAO_0000115 "A nonmotile primary cilium that has a 9+0 microtubule array and forms the portion of the axoneme traversing the boundary between the photoreceptor inner and outer segments."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "photoreceptor connecting cilium"^^xsd:string, + oboInOwl:id "GO:0032391"^^xsd:string + + SubClassOf: + obo:GO_0031513 + + +Class: obo:GO_0000262 + + Annotations: + rdfs:label "mitochondrial chromosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A chromosome found in the mitochondrion of a eukaryotic cell."^^xsd:string, + oboInOwl:hasRelatedSynonym "mitochondrial genome"^^xsd:string, + oboInOwl:id "GO:0000262"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1186327184"^^xsd:string, + oboInOwl:hasNarrowSynonym "mtDNA"^^xsd:string, + oboInOwl:hasNarrowSynonym "mitochondrial DNA"^^xsd:string + + EquivalentTo: + obo:GO_0005694 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0042645, + obo:GO_0000229 + + +Class: obo:GO_0032390 + + Annotations: + rdfs:label "MutLbeta complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vk"^^xsd:string + obo:IAO_0000115 "A heterodimer involved in the recognition of base-base and small insertion/deletion mismatches. In human the complex consists of two subunits, MLH1 and PMS1."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032390"^^xsd:string, + oboInOwl:hasBroadSynonym "MMR complex"^^xsd:string, + oboInOwl:hasExactSynonym "MLH1/PMS1 complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0032300 + + +Class: obo:GO_0005579 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Complement_membrane_attack_complex"^^xsd:string, + oboInOwl:hasExactSynonym "terminal complement complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "membrane attack complex"^^xsd:string, + oboInOwl:hasExactSynonym "MAC"^^xsd:string, + oboInOwl:hasExactSynonym "TCC"^^xsd:string, + oboInOwl:hasNarrowSynonym "membrane attack complex protein alphaM chain"^^xsd:string, + oboInOwl:id "GO:0005579"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string, + oboInOwl:hasDbXref "ISBN:068340007X"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A protein complex produced by sequentially activated components of the complement cascade inserted into a target cell membrane and forming a pore leading to cell lysis via ion and water flow."^^xsd:string, + oboInOwl:hasNarrowSynonym "membrane attack complex protein beta2 chain"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0046930 + + +Class: obo:GO_0005575 + + Annotations: + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1337158144"^^xsd:string, + oboInOwl:id "GO:0005575"^^xsd:string, + rdfs:comment "Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "cellular component unknown"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "cellular component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together."^^xsd:string, + rdfs:label "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0008372"^^xsd:string + + +Class: obo:GO_0005576 + + Annotations: + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:label "extracellular region"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The space external to the outermost structure of a cell. For cells without external protective or external encapsulating structures this refers to space outside of the plasma membrane. This term covers the host cell environment outside an intracellular parasite."^^xsd:string, + oboInOwl:id "GO:0005576"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Extracellular"^^xsd:string, + rdfs:comment "Note that this term is intended to annotate gene products that are not attached to the cell surface. For gene products from multicellular organisms which are secreted from a cell but retained within the organism (i.e. released into the interstitial fluid or blood), consider the cellular component term 'extracellular space ; GO:0005615'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "extracellular"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0005577 + + Annotations: + oboInOwl:hasNarrowSynonym "fibrinogen beta chain"^^xsd:string, + oboInOwl:hasNarrowSynonym "fibrinogen gamma chain"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "fibrinogen complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A highly soluble, elongated protein complex found in blood plasma and involved in clot formation. It is converted into fibrin monomer by the action of thrombin. In the mouse, fibrinogen is a hexamer, 46 nm long and 9 nm maximal diameter, containing two sets of nonidentical chains (alpha, beta, and gamma) linked together by disulfide bonds."^^xsd:string, + oboInOwl:hasNarrowSynonym "fibrinogen alpha chain"^^xsd:string, + oboInOwl:hasExactSynonym "fibrinogen"^^xsd:string, + oboInOwl:id "GO:0005577"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0005578 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "proteinaceous extracellular matrix"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A layer consisting mainly of proteins (especially collagen) and glycosaminoglycans (mostly as proteoglycans) that forms a sheet underlying or overlying cells such as endothelial and epithelial cells. The proteins are secreted by cells in the vicinity. An example of this component is found in Mus musculus."^^xsd:string, + oboInOwl:id "GO:0005578"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0031012 + + +Class: obo:GO_0030139 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1362520468"^^xsd:string, + rdfs:label "endocytic vesicle"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "endocytotic transport vesicle"^^xsd:string, + oboInOwl:id "GO:0030139"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:19696797"^^xsd:string + obo:IAO_0000115 "A membrane-bounded intracellular vesicle formed by invagination of the plasma membrane around an extracellular substance. Endocytic vesicles fuse with early endosomes to deliver the cargo for further sorting."^^xsd:string, + oboInOwl:hasExactSynonym "endocytotic vesicle"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0030137 + + Annotations: + oboInOwl:id "GO:0030137"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "coatomer"^^xsd:string, + rdfs:label "COPI-coated vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11252894"^^xsd:string + obo:IAO_0000115 "A vesicle with a coat formed of the COPI coat complex proteins. COPI-coated vesicles are found associated with Golgi membranes at steady state, are involved in Golgi to endoplasmic reticulum (retrograde) vesicle transport, and possibly also in intra-Golgi transport."^^xsd:string + + SubClassOf: + obo:GO_0005798, + obo:GO_0030135 + + +Class: obo:GO_0052718 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "tRNA-A34 deaminase complex"^^xsd:string, + oboInOwl:id "GO:0052718"^^xsd:string, + rdfs:label "tRNA-specific adenosine-34 deaminase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17875641"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses tRNA-specific adenosine-34 deaminase activity. In eukaryotes the complex is a heterodimer; the subunits are known as Tad2p and Tad3p in yeasts and Adat2 and Adat3 in human."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0030135 + + Annotations: + oboInOwl:id "GO:0030135"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Small membrane-bounded organelle formed by pinching off of a coated region of membrane. Some coats are made of clathrin, whereas others are made from other proteins."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005909"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1985096626"^^xsd:string, + rdfs:label "coated vesicle"^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0030136 + + Annotations: + oboInOwl:id "GO:0030136"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao148845161"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11252894"^^xsd:string + obo:IAO_0000115 "A vesicle with a coat formed of clathrin connected to the membrane via one of the clathrin adaptor complexes."^^xsd:string, + rdfs:label "clathrin-coated vesicle"^^xsd:string + + SubClassOf: + obo:GO_0030135 + + +Class: obo:GO_0033985 + + Annotations: + rdfs:label "acidocalcisome lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033985"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of an acidocalcisome."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0020022, + obo:GO_0070013, + obo:GO_0044444 + + +Class: obo:GO_0030143 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A vesicle that mediates transport of cargo within the Golgi complex (for example, between cisternae of the Golgi stack)."^^xsd:string, + oboInOwl:hasExactSynonym "inter-Golgi transport constitutive secretory pathway transport vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inter-Golgi transport vesicle"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1382918459"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005807"^^xsd:string, + oboInOwl:id "GO:0030143"^^xsd:string + + SubClassOf: + obo:GO_0030133, + obo:GO_0030137 + + +Class: obo:GO_0030142 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi-ER transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi to ER constitutive secretory pathway transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi to endoplasmic reticulum transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "Golgi-endoplasmic reticulum transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A vesicle that mediates transport from the Golgi to the endoplasmic reticulum."^^xsd:string, + oboInOwl:id "GO:0030142"^^xsd:string, + rdfs:label "Golgi to ER transport vesicle"^^xsd:string + + SubClassOf: + obo:GO_0030133, + obo:GO_0030137 + + +Class: obo:GO_0070250 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string + oboInOwl:hasNarrowSynonym "shmoo membrane"^^xsd:string, + oboInOwl:id "GO:0070250"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jp"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a mating projection, the projection formed by unicellular fungi in response to mating pheromone."^^xsd:string, + rdfs:label "mating projection membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005937, + obo:GO_0031253 + + +Class: obo:GO_0030141 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "secretory vesicle"^^xsd:string, + oboInOwl:id "GO:0030141"^^xsd:string, + rdfs:label "secretory granule"^^xsd:string, + rdfs:comment "Note that the term 'secretory vesicle' is sometimes used in this sense, but can also mean 'transport vesicle ; GO:0030133'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198596732"^^xsd:string + obo:IAO_0000115 "A small subcellular vesicle, surrounded by a membrane, that is formed from the Golgi apparatus and contains a highly concentrated protein destined for secretion. Secretory granules move towards the periphery of the cell and upon stimulation, their membranes fuse with the cell membrane, and their protein load is exteriorized. Processing of the contained protein may take place in secretory granules."^^xsd:string + + SubClassOf: + obo:GO_0016023 + + +Class: obo:GO_0030140 + + Annotations: + oboInOwl:hasExactSynonym "TGN transport vesicle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030140"^^xsd:string, + rdfs:label "trans-Golgi network transport vesicle"^^xsd:string, + oboInOwl:hasExactSynonym "trans-Golgi network constitutive secretory pathway transport vesicle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A vesicle that mediates transport between the trans-Golgi network and other parts of the cell."^^xsd:string + + SubClassOf: + obo:GO_0005798, + obo:GO_0030133, + obo:GO_0030136 + + +Class: obo:GO_0005581 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "Any of the various assemblies in which collagen chains form a left-handed triple helix; may assemble into higher order structures."^^xsd:string, + rdfs:label "collagen"^^xsd:string, + oboInOwl:id "GO:0005581"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Collagen"^^xsd:string, + oboInOwl:hasRelatedSynonym "other collagen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005578, + obo:GO_0044420 + + +Class: obo:GO_0009319 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytochrome o ubiquinol oxidase complex"^^xsd:string, + rdfs:comment "See also the molecular function term 'cytochrome o ubiquinol oxidase activity ; GO:0008827'."^^xsd:string, + oboInOwl:id "GO:0009319"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CYT-O-UBIOX-CPLX"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CYT-O-UBIOX-CPLX"^^xsd:string, + oboInOwl:hasDbXref "PMID:11017202"^^xsd:string, + oboInOwl:hasDbXref "PMID:3052268"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses cytochrome o ubiquinol oxidase activity; consists of four polypeptide subunits and associated prosthetic groups."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016021, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0043699 + + Annotations: + rdfs:label "leucosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "A tissue-specific, membrane-bounded cytoplasmic organelle within which uric acid and/or purines crystalize in reflective stacks. Leucosomes are synthesized in leucophore cells and have a whitish cast."^^xsd:string, + oboInOwl:hasExactSynonym "refractosome"^^xsd:string, + oboInOwl:id "GO:0043699"^^xsd:string + + SubClassOf: + obo:GO_0048770 + + +Class: obo:GO_0043698 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mh"^^xsd:string + obo:IAO_0000115 "A tissue-specific, membrane-bounded cytoplasmic organelle within which purines crystalize in reflective stacks. Iridosomes are synthesized in iridophore cells and are silver, gold or iridescent in appearance."^^xsd:string, + oboInOwl:hasExactSynonym "reflecting platelet"^^xsd:string, + oboInOwl:id "GO:0043698"^^xsd:string, + rdfs:label "iridosome"^^xsd:string + + SubClassOf: + obo:GO_0048770 + + +Class: obo:GO_0034388 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the term name uses Saccharomyces gene product names because no other names have yet arisen for this complex; the term nevertheless can be used for analogous complexes in other eukaryotes, and the name can be changed if better wording is found."^^xsd:string, + oboInOwl:id "GO:0034388"^^xsd:string, + oboInOwl:hasExactSynonym "25-30 S subcomplex of 90S preribosome"^^xsd:string, + rdfs:label "Pwp2p-containing subcomplex of 90S preribosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "PMID:15231838"^^xsd:string + obo:IAO_0000115 "A protein complex that forms a subcomplex of the 90S preribosome and can interact directly with the 5' External Transcribed Spacer (ETS) of the full length pre-rRNA transcript. In S. cerevisiae, it sediments at 25-30 S and is composed of Pwp2p, Dip2p, Utp21p, Utp13p, Utp18p, and Utp6p."^^xsd:string, + oboInOwl:hasExactSynonym "UTP-B complex"^^xsd:string + + SubClassOf: + obo:GO_0044452, + obo:BFO_0000050 some obo:GO_0030686, + obo:GO_0043234 + + +Class: obo:GO_0009316 + + Annotations: + oboInOwl:hasDbXref "MetaCyc:3-ISOPROPYLMALISOM-CPLX"^^xsd:string, + oboInOwl:inSubset , + rdfs:comment "See also the molecular function term '3-isopropylmalate dehydratase activity ; GO:0003861'."^^xsd:string, + rdfs:label "3-isopropylmalate dehydratase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:4.2.1.33"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:3-ISOPROPYLMALISOM-CPLX"^^xsd:string, + oboInOwl:hasDbXref "PMID:7026530"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme complex composed of subunits leuC and leuD. Catalyzes the isomerization between 2-isopropylmalate and 3-isopropylmalate, via the formation of 2-isopropylmaleate."^^xsd:string, + oboInOwl:id "GO:0009316"^^xsd:string, + oboInOwl:hasExactSynonym "isopropylmalate isomerase complex"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0005585 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type II"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(II) chains; type II collagen triple helices associate to form fibrils."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Collagen_type_II"^^xsd:string, + oboInOwl:id "GO:0005585"^^xsd:string + + SubClassOf: + obo:GO_0005583 + + +Class: obo:GO_0005584 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Collagen_type_I"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:sl"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen trimer containing alpha(I) chains. The most common form of type I collagen is a heterotrimer containing two alpha1(I) chains and one alpha2(I) chain; homotrimers containing three alpha1(I) chains are also found. Type I collagen triple helices associate to form banded fibrils."^^xsd:string, + rdfs:label "collagen type I"^^xsd:string, + oboInOwl:id "GO:0005584"^^xsd:string + + SubClassOf: + obo:GO_0005583 + + +Class: obo:GO_0072379 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:20676083"^^xsd:string, + oboInOwl:hasDbXref "PMID:20850366"^^xsd:string + obo:IAO_0000115 "A protein complex that is involved in the post-translational delivery of tail-anchored (TA) membrane proteins to the endoplasmic reticulum. TA membrane proteins, also called type II transmembrane proteins, contain a single C-terminal transmembrane region. Some ER membrane insertion complex subunits are conserved between different species such as mammals and budding yeast."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "endoplasmic reticulum membrane insertion complex"^^xsd:string, + rdfs:label "ER membrane insertion complex"^^xsd:string, + oboInOwl:id "GO:0072379"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0034385 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:rl"^^xsd:string + obo:IAO_0000115 "A plasma lipoprotein particle that has a hydrophobic core enriched in triglycerides surrounded by an amphipathic monolayer of phospholipids, cholesterol and apolipoproteins. Triglyceride-rich lipoproteinparticles transport lipids, which are non-covalently associated with the particles, in the blood."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "triglyceride-rich lipoprotein particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "triacylglycerol-rich lipoprotein particle"^^xsd:string, + oboInOwl:id "GO:0034385"^^xsd:string + + SubClassOf: + obo:GO_0034358 + + +Class: obo:GO_0009318 + + Annotations: + rdfs:label "exodeoxyribonuclease VII complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.1.11.6"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes exonucleolytic cleavage in either 5' to 3' or 3' to 5' direction to yield nucleoside 5'-phosphates; it prefers single-stranded DNA."^^xsd:string, + oboInOwl:id "GO:0009318"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005583 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005583"^^xsd:string, + rdfs:label "fibrillar collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "Any collagen polymer in which collagen triple helices associate to form fibrils."^^xsd:string + + SubClassOf: + obo:GO_0005581 + + +Class: obo:GO_0009317 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12121720"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the first step in long-chain fatty acid biosynthesis. For example, in E. coli the complex is heterohexameric and composed of biotin carbonyl carrier protein, biotin carboxylase and the acetate CoA-transferase complex."^^xsd:string, + oboInOwl:hasExactSynonym "ACCase complex"^^xsd:string, + rdfs:label "acetyl-CoA carboxylase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0009317"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005582 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11158616"^^xsd:string, + oboInOwl:hasDbXref "PMID:11937714"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(XV) chains; a chondroitin sulfate proteoglycan often found in specialized basement membranes."^^xsd:string, + oboInOwl:id "GO:0005582"^^xsd:string, + rdfs:label "collagen type XV"^^xsd:string + + SubClassOf: + obo:GO_0005581 + + +Class: obo:GO_0005589 + + Annotations: + oboInOwl:id "GO:0005589"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type VI"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen heterotrimer containing type VI alpha chains in alpha1(VI)alpha2(VI)alpha3(VI) trimers; type VI collagen triple helices associate to form beaded fibrils."^^xsd:string + + SubClassOf: + obo:GO_0030934 + + +Class: obo:GO_0005588 + + Annotations: + oboInOwl:id "GO:0005588"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type V"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen heterotrimer containing type V alpha chains; [alpha1(V)]2alpha2(V) and alpha1(V)alpha2(V)alpha3(V) trimers have been observed; type V collagen triple helices associate to form fibrils."^^xsd:string + + SubClassOf: + obo:GO_0005583 + + +Class: obo:GO_0005587 + + Annotations: + oboInOwl:id "GO:0005587"^^xsd:string, + rdfs:label "collagen type IV"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Collagen_type_IV"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen heterotrimer containing type IV alpha chains; [alpha1(IV)]2alpha2(IV) trimers are commonly observed, although more type IV alpha chains exist and may be present in type IV trimers; type IV collagen triple helices associate to form nets within basement membranes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0030935, + obo:BFO_0000050 some obo:GO_0005604 + + +Class: obo:GO_0005586 + + Annotations: + oboInOwl:id "GO:0005586"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(III) chains; type III collagen triple helices associate to form fibrils."^^xsd:string, + rdfs:label "collagen type III"^^xsd:string + + SubClassOf: + obo:GO_0005583 + + +Class: obo:GO_0061176 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "type Ib terminal button"^^xsd:string, + oboInOwl:id "GO:0061176"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasExactSynonym "type Ib terminal bouton"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Terminal inflated portion of the axon of a glutamatergic neuron, containing the specialized apparatus necessary for the tonic release neurotransmitters that will induce the contraction of muscle. Type Ib terminal buttons are larger than type Is terminal buttons."^^xsd:string + + SubClassOf: + obo:GO_0061174 + + +Class: obo:GO_0061175 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "type II terminal button"^^xsd:string, + oboInOwl:id "GO:0061175"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Terminal inflated portion of the axon of a non-glutamatergic neuron, containing the specialized apparatus necessary to release neurotransmitters at a regulatory synapse. The axon terminus is considered to be the whole region of thickening and the terminal button is a specialized region of it."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasExactSynonym "type II terminal bouton"^^xsd:string + + SubClassOf: + obo:GO_0043195 + + +Class: obo:GO_0009705 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a vacuole that retains the same shape regardless of cell cycle phase. The membrane separates its contents from the cytoplasm of the cell. An example of this component is found in Arabidopsis thaliana."^^xsd:string, + oboInOwl:hasExactSynonym "membrane of vacuole with cell cycle-independent morphology"^^xsd:string, + oboInOwl:hasBroadSynonym "vacuolar membrane"^^xsd:string, + oboInOwl:id "GO:0009705"^^xsd:string, + oboInOwl:hasExactSynonym "tonoplast"^^xsd:string, + rdfs:label "plant-type vacuole membrane"^^xsd:string + + SubClassOf: + obo:GO_0005774, + obo:BFO_0000050 some obo:GO_0000325 + + +Class: obo:GO_0061174 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Terminal inflated portion of the axon of a glutamatergic neuron, containing the specialized apparatus necessary to release neurotransmitters that will induce the contraction of muscle. The axon terminus is considered to be the whole region of thickening and the terminal button is a specialized region of it."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasExactSynonym "type I terminal bouton"^^xsd:string, + oboInOwl:id "GO:0061174"^^xsd:string, + rdfs:label "type I terminal button"^^xsd:string + + SubClassOf: + obo:GO_0043195 + + +Class: obo:GO_0009706 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009706"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast inner envelope"^^xsd:string, + rdfs:label "chloroplast inner membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the chloroplast envelope; also faces the chloroplast stroma."^^xsd:string + + SubClassOf: + obo:GO_0031969, + obo:GO_0009528 + + +Class: obo:GO_0046806 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "viral scaffold"^^xsd:string, + oboInOwl:id "GO:0046806"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0072370319"^^xsd:string + obo:IAO_0000115 "A complex of proteins that form a scaffold around which the viral capsid is constructed."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0019028, + obo:GO_0044423, + obo:GO_0043234 + + +Class: obo:GO_0009707 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "chloroplast outer envelope"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the chloroplast envelope."^^xsd:string, + oboInOwl:id "GO:0009707"^^xsd:string, + rdfs:label "chloroplast outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0009527, + obo:GO_0031969 + + +Class: obo:GO_0034774 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a secretory granule."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "secretory granule lumen"^^xsd:string, + oboInOwl:id "GO:0034774"^^xsd:string + + SubClassOf: + obo:GO_0060205, + obo:BFO_0000050 some obo:GO_0030141 + + +Class: obo:GO_0072380 + + Annotations: + oboInOwl:id "GO:0072380"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "TRC complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:20850366"^^xsd:string + obo:IAO_0000115 "An ER membrane insertion complex that contains subunits that recognize two types of transmembrane domain signals. In budding yeast the complex contains Get4p, Get5p, Sgt2p, and at least two heat shock proteins (HSPs)."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20850366"^^xsd:string + oboInOwl:hasExactSynonym "TMD recognition complex"^^xsd:string + + SubClassOf: + obo:GO_0072379 + + +Class: obo:GO_0046809 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:9499108"^^xsd:string + obo:IAO_0000115 "Globular nuclear domains where the transcription and replication of the viral genome occurs. More than one site can be present simultaneously."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0046809"^^xsd:string, + rdfs:label "replication compartment"^^xsd:string + + SubClassOf: + obo:GO_0044428 + + +Class: obo:GO_0046808 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:8676489"^^xsd:string + obo:IAO_0000115 "Antigenically dense structures located at the periphery of nuclei, close to but not abutting nuclear membranes. Assemblons contain the proteins for immature-capsid assembly; they are located at the periphery of a diffuse structure composed of proteins involved in DNA synthesis, which overlaps only minimally with the assemblons. More than one site can be present simultaneously."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "assemblon"^^xsd:string, + oboInOwl:id "GO:0046808"^^xsd:string + + SubClassOf: + obo:GO_0044428 + + +Class: obo:GO_0030112 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030112"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Glycocalyx"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "glycocalyx"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316208"^^xsd:string + obo:IAO_0000115 "A viscous, carbohydrate rich layer at the outermost periphery of a cell."^^xsd:string + + SubClassOf: + obo:GO_0030312 + + +Class: obo:GO_0005590 + + Annotations: + rdfs:label "collagen type VII"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005590"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(VII) chains; type VII collagen triple helices form antiparallel dimer, which in turn associate laterally to form anchoring fibrils that connect type IV collagen in the basal lamina to plaques in the underlying connective tissue."^^xsd:string + + SubClassOf: + obo:GO_0030934 + + +Class: obo:GO_0030115 + + Annotations: + rdfs:label "S-layer"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030115"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:S-layer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815108893"^^xsd:string + obo:IAO_0000115 "A crystalline protein layer surrounding some bacteria."^^xsd:string + + SubClassOf: + obo:GO_0030312 + + +Class: obo:GO_0005592 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005592"^^xsd:string, + rdfs:label "collagen type XI"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen heterotrimer containing type XI alpha chains in alpha1(XI)alpha2(XI)alpha3(XI) trimers; type XI collagen triple helices associate to form fibrils."^^xsd:string + + SubClassOf: + obo:GO_0005583 + + +Class: obo:GO_0030114 + + Annotations: + rdfs:label "slime layer"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Slime_layer"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Slime_layer"^^xsd:string + obo:IAO_0000115 "A slime layer is an easily removed, diffuse, unorganized layer of extracellular material that surrounds a cell. Specifically this consists mostly of exopolysaccharides, glycoproteins, and glycolipids."^^xsd:string, + oboInOwl:id "GO:0030114"^^xsd:string + + SubClassOf: + obo:GO_0030112 + + +Class: obo:GO_0005591 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen heterotrimer containing type VIII alpha chains; [alpha1(VIII)2]alpha2(VIII) and alpha1(VIII)[alpha2(VIII)]2 trimers have been observed; type VIII collagen triple helices associate to form regular hexagonal nets."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005591"^^xsd:string, + rdfs:label "collagen type VIII"^^xsd:string + + SubClassOf: + obo:GO_0005598 + + +Class: obo:GO_0048046 + + Annotations: + oboInOwl:id "GO:0048046"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Apoplast"^^xsd:string, + rdfs:label "apoplast"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string + obo:IAO_0000115 "The cell membranes and intracellular regions in a plant are connected through plasmodesmata, and plants may be described as having two major compartments: the living symplast and the non-living apoplast. The apoplast is external to the plasma membrane and includes cell walls, intercellular spaces and the lumen of dead structures such as xylem vessels. Water and solutes pass freely through it."^^xsd:string + + SubClassOf: + obo:GO_0005576 + + +Class: obo:GO_0005594 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type IX"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen heterotrimer containing type IX alpha chains in alpha1(IX)alpha2(IX)alpha3(IX) trimers; type IX collagen triple helices associate to form a structure that links glycosaminoglycans to type II collagen fibrils."^^xsd:string, + oboInOwl:id "GO:0005594"^^xsd:string + + SubClassOf: + obo:GO_0005593 + + +Class: obo:GO_0005593 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:FACIT_collagen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "FACIT collagen"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198599587"^^xsd:string + obo:IAO_0000115 "Any collagen polymer associated with collagen fibrils and in which the collagen monomers contain two or more relatively short triple-helical domains connected by non-triple-helical sequences; the acronym FACIT stands for fibril-associated collagen with interrupted triple helix."^^xsd:string, + oboInOwl:id "GO:0005593"^^xsd:string + + SubClassOf: + obo:GO_0030934 + + +Class: obo:GO_0030119 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611976"^^xsd:string, + oboInOwl:hasDbXref "PMID:15473838"^^xsd:string + obo:IAO_0000115 "Any of several heterotetrameric complexes that link clathrin (or another coat-forming molecule, as hypothesized for AP-3 and AP-4) to a membrane surface; they are found on coated pits and coated vesicles, and mediate sorting of cargo proteins into vesicles. Each AP complex contains two large (a beta and one of either an alpha, gamma, delta, or epsilon) subunits (110-130 kDa), a medium (mu) subunit (approximately 50 kDa), and a small (sigma) subunit (15-20 kDa)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "clathrin adaptor"^^xsd:string, + rdfs:label "AP-type membrane coat adaptor complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030119"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030117, + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005596 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(XIV) chains; type XIV collagen triple helices may link sheet-forming or fibrillar collagens to other structures."^^xsd:string, + rdfs:label "collagen type XIV"^^xsd:string, + oboInOwl:id "GO:0005596"^^xsd:string + + SubClassOf: + obo:GO_0005593 + + +Class: obo:GO_0030118 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao879919129"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "clathrin cage"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Clathrin"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0016190"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11252894"^^xsd:string, + oboInOwl:hasDbXref "PMID:9531549"^^xsd:string + obo:IAO_0000115 "A membrane coat found on coated pits and some coated vesicles; consists of polymerized clathrin triskelions, each comprising three clathrin heavy chains and three clathrin light chains, linked to the membrane via one of the AP adaptor complexes."^^xsd:string, + rdfs:label "clathrin coat"^^xsd:string, + oboInOwl:id "GO:0030118"^^xsd:string + + SubClassOf: + obo:GO_0030117 + + +Class: obo:GO_0005595 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(XII) chains; type XII collagen triple helices may link sheet-forming or fibrillar collagens to other structures."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type XII"^^xsd:string, + oboInOwl:id "GO:0005595"^^xsd:string + + SubClassOf: + obo:GO_0005593 + + +Class: obo:GO_0030117 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any of several different proteinaceous coats that can associate with membranes. Membrane coats include those formed by clathrin plus an adaptor complex, the COPI and COPII complexes, and possibly others. They are found associated with membranes on many vesicles as well as other membrane features such as pits and perhaps tubules."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "membrane coat"^^xsd:string, + oboInOwl:id "GO:0030117"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234, + obo:BFO_0000050 some obo:GO_0048475, + obo:GO_0044444 + + +Class: obo:GO_0005598 + + Annotations: + oboInOwl:id "GO:0005598"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198599587"^^xsd:string + obo:IAO_0000115 "Any assembly of collagen in which the collagen chains are relatively short compared to the fibrillar collagens."^^xsd:string, + rdfs:label "short-chain collagen"^^xsd:string + + SubClassOf: + obo:GO_0030935 + + +Class: obo:GO_0046821 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Extrachromosomal_DNA"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0046821"^^xsd:string, + rdfs:label "extrachromosomal DNA"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "DNA structures that are not part of a chromosome."^^xsd:string + + SubClassOf: + obo:GO_0044424 + + +Class: obo:GO_0005597 + + Annotations: + oboInOwl:id "GO:0005597"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12782140"^^xsd:string + obo:IAO_0000115 "A collagen trimer containing alpha(XVI) chains; type XVI trimers can associate with microfibrils."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type XVI"^^xsd:string + + SubClassOf: + obo:GO_0005593 + + +Class: obo:GO_0005599 + + Annotations: + oboInOwl:id "GO:0005599"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(X) chains; type X collagen triple helices may form nets."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "collagen type X"^^xsd:string + + SubClassOf: + obo:GO_0005598 + + +Class: obo:GO_0034777 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034777"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membranes of a recycling endosome."^^xsd:string, + rdfs:label "recycling endosome lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0055037, + obo:GO_0031904 + + +Class: obo:GO_0046818 + + Annotations: + oboInOwl:id "GO:0046818"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10233976"^^xsd:string + obo:IAO_0000115 "A location in the host cell nucleus where viral proteins colocalize late in infection prior to the onset of viral DNA synthesis. More than one site can be present simultaneously."^^xsd:string, + rdfs:label "dense nuclear body"^^xsd:string + + SubClassOf: + obo:GO_0044428 + + +Class: obo:GO_0046816 + + Annotations: + oboInOwl:id "GO:0046816"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7933124"^^xsd:string + obo:IAO_0000115 "A vesicle used to transport the partial or complete virion between cellular compartments."^^xsd:string, + rdfs:label "virion transport vesicle"^^xsd:string + + SubClassOf: + obo:GO_0031982, + obo:GO_0043231 + + +Class: obo:GO_0033309 + + Annotations: + rdfs:label "SBF transcription complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "SBF complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11206552"^^xsd:string, + oboInOwl:hasDbXref "PMID:15838511"^^xsd:string, + oboInOwl:hasDbXref "PMID:18160399"^^xsd:string, + oboInOwl:hasDbXref "PMID:7917338"^^xsd:string + obo:IAO_0000115 "A protein complex that binds to the Swi4/6 cell cycle box (SCB) promoter element, consensus sequence CRCGAAA, and activates transcription during the G1/S transition of the cell cycle. In Saccharomyces, the complex contains a heterodimer of the DNA binding protein Swi6p and the activator Swi4p, and is associated with additional proteins known as Whi5p and Msa1p."^^xsd:string, + oboInOwl:id "GO:0033309"^^xsd:string + + SubClassOf: + obo:GO_0005667 + + +Class: obo:GO_0032389 + + Annotations: + rdfs:label "MutLalpha complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "MMR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vk"^^xsd:string + obo:IAO_0000115 "A heterodimer involved in the recognition of base-base and small insertion/deletion mismatches. In human the complex consists of two subunits, MLH1 and PMS2."^^xsd:string, + oboInOwl:hasExactSynonym "MLH1/PMS2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:292"^^xsd:string + oboInOwl:hasExactSynonym "MutL-alpha complex"^^xsd:string, + oboInOwl:id "GO:0032389"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0032300 + + +Class: obo:GO_0030122 + + Annotations: + oboInOwl:hasExactSynonym "HA2"^^xsd:string, + rdfs:label "AP-2 adaptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611976"^^xsd:string, + oboInOwl:hasDbXref "PMID:21097499"^^xsd:string + obo:IAO_0000115 "A heterotetrameric AP-type membrane coat adaptor complex that consists of alpha, beta2, mu2 and sigma2 subunits, and links clathrin to the membrane surface of a vesicle; vesicles with AP-2-containing coats are normally found primarily near the plasma membrane, on endocytic vesicles. In at least humans, the AP-2 complex can be heterogeneric due to the existence of multiple subunit isoforms encoded by different alpha genes (alphaA and alphaC)."^^xsd:string, + oboInOwl:id "GO:0030122"^^xsd:string, + oboInOwl:hasExactSynonym "HA2 clathrin adaptor"^^xsd:string + + SubClassOf: + obo:GO_0030131, + obo:BFO_0000050 some obo:GO_0030132, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0030128, + obo:GO_0044433 + + +Class: obo:GO_0072372 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:17009929"^^xsd:string, + oboInOwl:hasDbXref "PMID:20144998"^^xsd:string + obo:IAO_0000115 "A cilium found on many different cell types that is typically present in a single copy per cell. A primary cilium may have a variable array of axonemal microtubules and may or may not contain molecular motors."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0072372"^^xsd:string, + rdfs:label "primary cilium"^^xsd:string + + SubClassOf: + obo:GO_0005929 + + +Class: obo:GO_0030123 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611976"^^xsd:string, + oboInOwl:hasDbXref "PMID:21097499"^^xsd:string + obo:IAO_0000115 "A heterotetrameric AP-type membrane coat adaptor complex that consists of beta3, delta, mu3 and sigma3 subunits and is found associated with endosomal membranes. AP-3 does not appear to associate with clathrin in all organisms. In at least humans, the AP-3 complex can be heterogeneric due to the existence of multiple subunit isoforms encoded by different genes (beta3A and beta3B, mu3A and mu3B, and sigma3A and sigma3B)."^^xsd:string, + oboInOwl:id "GO:0030123"^^xsd:string, + rdfs:label "AP-3 adaptor complex"^^xsd:string + + SubClassOf: + obo:GO_0030119 + + +Class: obo:GO_0030120 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao1177708494"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030120"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A membrane coat found on a coated vesicle."^^xsd:string, + rdfs:label "vesicle coat"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030662, + obo:GO_0030117, + obo:GO_0044433 + + +Class: obo:GO_0030121 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030121"^^xsd:string, + oboInOwl:hasExactSynonym "HA1"^^xsd:string, + rdfs:label "AP-1 adaptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10611976"^^xsd:string, + oboInOwl:hasDbXref "PMID:21097499"^^xsd:string + obo:IAO_0000115 "A heterotetrameric AP-type membrane coat adaptor complex that consists of beta1, gamma, mu1 and sigma1 subunits and links clathrin to the membrane surface of a vesicle; vesicles with AP-1-containing coats are normally found primarily in the trans-Golgi network. In at least humans, the AP-1 complex can be heterogeneric due to the existence of multiple subunit isoforms encoded by different genes (gamma1 and gamma2, mu1A and mu1B, and sigma1A, sigma1B and sigma1C)."^^xsd:string, + oboInOwl:hasExactSynonym "HA1 clathrin adaptor"^^xsd:string + + SubClassOf: + obo:GO_0030131, + obo:GO_0044433, + obo:GO_0044431, + obo:BFO_0000050 some obo:GO_0030130 + + +Class: obo:GO_0035451 + + Annotations: + oboInOwl:hasExactSynonym "peripheral to stromal side of plastid thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of a plastid thylakoid membrane that faces the stroma but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035451"^^xsd:string, + rdfs:label "extrinsic to stromal side of plastid thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0035449 + + +Class: obo:GO_0009338 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "exodeoxyribonuclease V complex"^^xsd:string, + oboInOwl:id "GO:0009338"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.1.11.5"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes exonucleolytic cleavage (in the presence of ATP) in either 5' to 3' or 3' to 5' direction to yield 5'-phosphooligonucleotides. Exodeoxyribonuclease V shows a preference for double-stranded DNA and possesses DNA-dependent ATPase activity. It acts endonucleolytically on single-stranded circular DNA."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0035452 + + Annotations: + rdfs:label "extrinsic to plastid membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035452"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral to plastid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of a plastid membrane, but not integrated into the hydrophobic region."^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0031312, + obo:BFO_0000050 some obo:GO_0042170 + + +Class: obo:GO_0009337 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:1.8.1.2"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A multisubunit iron flavoprotein, which in yeast is composed of 2 alpha and 2 beta subunits. Catalyzes the reduction of sulfite to sulfide."^^xsd:string, + rdfs:comment "See also the molecular function term 'sulfite reductase (NADPH) activity ; GO:0004783'."^^xsd:string, + oboInOwl:hasExactSynonym "sulphite reductase complex (NADPH)"^^xsd:string, + oboInOwl:id "GO:0009337"^^xsd:string, + rdfs:label "sulfite reductase complex (NADPH)"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0072357 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:20516061"^^xsd:string + obo:IAO_0000115 "A protein serine/threonine phosphatase complex that contains a catalytic subunits (PPP1CA, PPP1CB or PPP1CC) and the regulatory subunits PPP1R10 (PNUTS), TOX4 and WDR82, and plays a role in the control of chromatin structure and cell cycle progression during the transition from mitosis into interphase."^^xsd:string, + oboInOwl:id "GO:0072357"^^xsd:string, + rdfs:label "PTW/PP1 phosphatase complex"^^xsd:string + + SubClassOf: + obo:GO_0008287 + + +Class: obo:GO_0070210 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Rpd3L-Expanded complex"^^xsd:string, + oboInOwl:id "GO:0070210"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Clr6-LE complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:19040720"^^xsd:string + obo:IAO_0000115 "A protein complex that contains a histone deacetylase and is part of the chromatin remodeling machinery. In Saccharomyces cerevisiae this complex contains the Rpd3p, Sin3p, Ume1p, Pho23p, Sap30p, Sds3p, Cti6p, Rxt2p, Rxt3p, Dep1p, Ume6p, Ash1p, Dot6p, Snt1, Sif2p, Set3p, Hos2p, Tos4p and Tod6p proteins."^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454 + + +Class: obo:GO_0035453 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of a plastid inner membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasExactSynonym "peripheral to plastid inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035453"^^xsd:string, + rdfs:label "extrinsic to plastid inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0035452, + obo:BFO_0000050 some obo:GO_0009528 + + +Class: obo:GO_0070211 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070211"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:19040720"^^xsd:string + obo:IAO_0000115 "A histone deacetylase complex that is part of the chromatin remodeling machinery. In Saccharomyces cerevisiae this complex contains Snt2p, Ecm5p and Rpd3p."^^xsd:string, + rdfs:label "Snt2C complex"^^xsd:string + + SubClassOf: + obo:GO_0000118, + obo:GO_0000790 + + +Class: obo:GO_0035454 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of a plastid inner membrane that faces the stroma, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0035454"^^xsd:string, + rdfs:label "extrinsic to stromal side of plastid inner membrane"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral to stromal side of plastid inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0035453 + + +Class: obo:GO_0009339 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.1.3.15"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the oxidation of 2-hydroxy acid to form 2-oxo acid and hydrogen peroxide (H2O2). The enzyme is a flavoprotein (FMN)."^^xsd:string, + rdfs:label "glycolate oxidase complex"^^xsd:string, + oboInOwl:id "GO:0009339"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0043679 + + Annotations: + rdfs:label "axon terminus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043679"^^xsd:string, + oboInOwl:hasExactSynonym "nerve ending"^^xsd:string, + oboInOwl:hasExactSynonym "axon terminal"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Terminal inflated portion of the axon, containing the specialized apparatus necessary to release neurotransmitters. The axon terminus is considered to be the whole region of thickening and the terminal button is a specialized region of it."^^xsd:string, + oboInOwl:hasRelatedSynonym "axon terminal specialization"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:GO_0044306 + + +Class: obo:GO_0043678 + + Annotations: + rdfs:label "intine"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The innermost of the major layers of the pollen grain wall which underlies the exine and borders the cytoplasm."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043678"^^xsd:string, + rdfs:comment "Note that the intine is not acetolysis resistant and is therefore absent in conventionally prepared palynological material."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043667, + obo:GO_0044420 + + +Class: obo:GO_0070214 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7544435"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the protein-tyrosine kinase CSK and the GTPase-activating protein (GAP)-associated p62 (GAP-A.p62); may mediate translocation of proteins, including GAP and CSK, to membrane or cytoskeletal regions upon c-Src activation."^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + rdfs:label "CSK-GAP-A.p62 complex"^^xsd:string, + oboInOwl:id "GO:0070214"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0043677 + + Annotations: + oboInOwl:hasExactSynonym "germ pore"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "germination pore"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Wikipedia:Germ_pore"^^xsd:string + obo:IAO_0000115 "A small pore in the outer wall of a mycelial spore through which the germ tube exits upon germination. It can be apical or eccentric in its location."^^xsd:string, + oboInOwl:id "GO:0043677"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Germ_pore"^^xsd:string + + SubClassOf: + obo:GO_0044420 + + +Class: obo:GO_0043676 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "sexine 2"^^xsd:string, + oboInOwl:id "GO:0043676"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.mobot.org/MOBOT/research/APweb/"^^xsd:string + obo:IAO_0000115 "The layer of sexine which forms a roof over the columella, granules or other infratectal elements."^^xsd:string, + rdfs:label "tectum"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0043673 + + +Class: obo:GO_0009330 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009330"^^xsd:string, + rdfs:comment "See also the molecular function term 'DNA topoisomerase (ATP-hydrolyzing) activity ; GO:0003918'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Complex that possesses DNA topoisomerase (ATP-hydrolyzing) activity."^^xsd:string, + rdfs:label "DNA topoisomerase complex (ATP-hydrolyzing)"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0009332 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009332"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.1.1.17"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the ligation of glutamate and tRNA(Glu) to form glutamyl-tRNA(Glu)."^^xsd:string, + rdfs:label "glutamate-tRNA ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009331 + + Annotations: + rdfs:label "glycerol-3-phosphate dehydrogenase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.1.5.3"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the dehydrogenation of sn-glycerol 3-phosphate to form glycerone phosphate."^^xsd:string, + oboInOwl:id "GO:0009331"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0009334 + + Annotations: + oboInOwl:id "GO:0009334"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "3-phenylpropionate dioxygenase complex"^^xsd:string, + rdfs:comment "See also the molecular function term '3-phenylpropionate dioxygenase activity ; GO:0008695'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:HCAMULTI-CPLX"^^xsd:string, + oboInOwl:hasDbXref "PMID:9603882"^^xsd:string + obo:IAO_0000115 "Enzyme complex consisting of four proteins: the two subunits of the hydroxylase component (hcaE and hcaF), a ferredoxin (hcaC) and a ferredoxin reductase (hcaD). Converts 3-phenylpropionic acid (PP) into cis-3-(3-carboxyethyl)-3,5-cyclohexadiene-1,2-diol (PP-dihydrodiol)."^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:HCAMULTI-CPLX"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0009333 + + Annotations: + oboInOwl:id "GO:0009333"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:4.2.99.8"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CYSSYNMULTI-CPLX"^^xsd:string + obo:IAO_0000115 "Cysteine synthase is a multienzyme complex made up, in E. coli, of the heteromeric hexamer serine acetyltransferase and the homodimer O-acetylserine (thiol)-lyase A."^^xsd:string, + rdfs:label "cysteine synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0009336 + + Annotations: + rdfs:label "sulfate adenylyltransferase complex (ATP)"^^xsd:string, + oboInOwl:id "GO:0009336"^^xsd:string, + oboInOwl:hasExactSynonym "sulphate adenylyltransferase complex (ATP)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.7.7.4"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the formation adenylylsulfate from sulfate and ATP."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0035450 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035450"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of a plastid thylakoid membrane that faces the lumen but not integrated into the hydrophobic region."^^xsd:string, + rdfs:label "extrinsic to lumenal side of plastid thylakoid membrane"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral to lumenal side of plastid thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0035449 + + +Class: obo:GO_0035449 + + Annotations: + oboInOwl:id "GO:0035449"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral to plastid thylakoid membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of a plastid thylakoid membrane, but not integrated into the hydrophobic region."^^xsd:string, + rdfs:label "extrinsic to plastid thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0055035, + obo:GO_0035448 + + +Class: obo:GO_0035448 + + Annotations: + oboInOwl:id "GO:0035448"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of a thylakoid membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "peripheral to thylakoid membrane"^^xsd:string, + rdfs:label "extrinsic to thylakoid membrane"^^xsd:string + + SubClassOf: + obo:GO_0044436, + obo:BFO_0000050 some obo:GO_0042651, + obo:GO_0019898 + + +Class: obo:GO_0043684 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0043684"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ml"^^xsd:string + obo:IAO_0000115 "A complex of proteins related to those involved in bacterial DNA conjugative transfer, that permits the transfer of DNA or proteins into the extracellular milieu or directly into host cells. In general the type IV complex forms a multisubunit cell-envelope-spanning structure composed of a secretion channel and often a pilus or other surface filament or protein(s)."^^xsd:string, + oboInOwl:hasExactSynonym "T4SS complex"^^xsd:string, + oboInOwl:hasNarrowSynonym "type IV protein secretion system complex"^^xsd:string, + rdfs:label "type IV secretion system complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0043680 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0471245208"^^xsd:string + obo:IAO_0000115 "A complex of cell wall invaginations in a synergid cell, similar to those in transfer cells."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043680"^^xsd:string, + rdfs:label "filiform apparatus"^^xsd:string + + SubClassOf: + obo:GO_0044426 + + +Class: obo:GO_0009329 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:2719476"^^xsd:string, + oboInOwl:hasDbXref "PMID:8423010"^^xsd:string + obo:IAO_0000115 "A heterotetrameric enzyme complex made up of two alpha subunits and two beta subunits. Part of the acetyl-CoA carboxylase complex. Catalyzes the transfer of a carboxyl group to form malonyl-CoA."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009329"^^xsd:string, + rdfs:label "acetate CoA-transferase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009317, + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0009328 + + Annotations: + rdfs:label "phenylalanine-tRNA ligase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.1.1.20"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the ligation of phenylalanine to tRNA(Phe), forming L-phenylalanyl-tRNA(Phe)."^^xsd:string, + oboInOwl:id "GO:0009328"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009327 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:1.6.1.2"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses NAD(P)+ transhydrogenase (AB-specific) activity. Homodimeric, trimeric, and heterotetrameric complexes have been identified."^^xsd:string, + rdfs:label "NAD(P)+ transhydrogenase complex (AB-specific)"^^xsd:string, + oboInOwl:id "GO:0009327"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0009326 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.2.1.2"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the dehydrogenation of formate to produce carbon dioxide (CO2)."^^xsd:string, + rdfs:label "formate dehydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0009326"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0034399 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the nuclear lumen proximal to the inner nuclear membrane."^^xsd:string, + rdfs:label "nuclear periphery"^^xsd:string, + oboInOwl:id "GO:0034399"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031981 + + +Class: obo:GO_0009321 + + Annotations: + + Annotations: oboInOwl:hasDbXref "BRENDA:1.11.1.15"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:2649484"^^xsd:string + obo:IAO_0000115 "An enzyme complex, usually a homodimer, which directly reduces cellular levels of organic hydroperoxides."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009321"^^xsd:string, + rdfs:comment "See also the molecular function term 'alkyl hydroperoxide reductase activity ; GO:0008785'."^^xsd:string, + rdfs:label "alkyl hydroperoxide reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009320 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the molecular function term 'phosphoribosylaminoimidazole carboxylase activity ; GO:0004638'."^^xsd:string, + oboInOwl:id "GO:0009320"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses phosphoribosylaminoimidazole carboxylase activity."^^xsd:string, + rdfs:label "phosphoribosylaminoimidazole carboxylase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009325 + + Annotations: + oboInOwl:id "GO:0009325"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.7.99.4"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the formation of nitrate from nitrite with the concomitant reduction of an acceptor."^^xsd:string, + rdfs:label "nitrate reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0009324 + + Annotations: + rdfs:label "D-amino-acid dehydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0009324"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses D-amino-acid dehydrogenase activity."^^xsd:string, + rdfs:comment "See also the molecular function term 'D-amino-acid oxidase activity ; GO:0003884'."^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0043234 + + +Class: obo:GO_0070209 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070209"^^xsd:string, + rdfs:label "ASTRA complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:19040720"^^xsd:string + obo:IAO_0000115 "A protein complex that is part of the chromatin remodeling machinery; the acronym stands for ASsembly of Tel, Rvb and Atm-like kinase. In Saccharomyces cerevisiae this complex includes Rvb1p, Rvb2p, Tra1p, Tel2p, Asa1p, Ttilp and Tti2p."^^xsd:string + + SubClassOf: + obo:GO_0000790, + obo:GO_0016585 + + +Class: obo:GO_0009323 + + Annotations: + oboInOwl:id "GO:0009323"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.3.1.128"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the transfer of an acetyl group to ribosomal-protein alanine, forming ribosomal-protein acetylalanine."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ribosomal-protein-alanine N-acetyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0031248 + + +Class: obo:GO_0009322 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0009322"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.6.6.9"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the reduction of trimethylamine N-oxide to trimethylamine."^^xsd:string, + rdfs:label "trimethylamine-N-oxide reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0044292 + + Annotations: + oboInOwl:hasExactSynonym "terminal specialization of a dendrite"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "dendrite terminal specialization"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao28175134"^^xsd:string + obo:IAO_0000115 "A structure at the distal end of a dendrite adapted to carry out a specific function, e.g. dendriole."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao28175134"^^xsd:string, + oboInOwl:hasExactSynonym "dendrite terminal"^^xsd:string, + rdfs:label "dendrite terminus"^^xsd:string, + oboInOwl:id "GO:0044292"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0030425 + + +Class: obo:GO_0044291 + + Annotations: + rdfs:label "cell-cell contact zone"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1299635018"^^xsd:string + obo:IAO_0000115 "Extended zone of intimate apposition between two cells containing one or more types of intercellular junctions, e.g., the intercalated disk of muscle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1299635018"^^xsd:string, + oboInOwl:hasExactSynonym "cell cell contact zone"^^xsd:string, + oboInOwl:id "GO:0044291"^^xsd:string + + SubClassOf: + obo:GO_0005911 + + +Class: obo:GO_0044294 + + Annotations: + rdfs:label "dendritic growth cone"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1594955670"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The migrating motile tip of a growing nerve cell dendrite."^^xsd:string, + oboInOwl:id "GO:0044294"^^xsd:string, + oboInOwl:hasExactSynonym "dendrite growth cone"^^xsd:string + + SubClassOf: + obo:GO_0044292, + obo:GO_0030426 + + +Class: obo:GO_0000299 + + Annotations: + rdfs:label "integral to membrane of membrane fraction"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + oboInOwl:id "GO:0000299"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10512869"^^xsd:string + obo:IAO_0000115 "Integral to that fraction of cells, prepared by disruptive biochemical methods, that includes the plasma and other membranes; require detergents, such as Triton X-100, to be released from membranes."^^xsd:string + + SubClassOf: + obo:GO_0005624 + + +Class: obo:GO_0044293 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "dendriole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao28175134"^^xsd:string, + oboInOwl:hasDbXref "PMID:8300904"^^xsd:string + obo:IAO_0000115 "Small dendrites that makes up a brush structure found as the terminal specialization of a dendrite of a unipolar brush cell (UBC)."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao28175134"^^xsd:string, + oboInOwl:id "GO:0044293"^^xsd:string + + SubClassOf: + obo:GO_0044292 + + +Class: obo:GO_0044290 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial intracristal space"^^xsd:string, + oboInOwl:id "GO:0044290"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao508958414"^^xsd:string + obo:IAO_0000115 "The space bounded by the mitochondrial cristae membranes, continuous with the intermembrane space."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao508958414"^^xsd:string + + SubClassOf: + obo:GO_0044429 + + +Class: obo:GO_0044299 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "C-fiber"^^xsd:string, + oboInOwl:id "GO:0044299"^^xsd:string, + oboInOwl:hasExactSynonym "C-fibre"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090210"^^xsd:string + obo:IAO_0000115 "The axon of a dorsal root ganglion cell that are responsive to pain and temperature. C-fibers are small in diameter (0.2-1.5 um) and unmyelinated."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:nlx_subcell_20090210"^^xsd:string + + SubClassOf: + obo:GO_0030424 + + +Class: obo:GO_0080008 + + Annotations: + oboInOwl:id "GO:0080008"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16792691"^^xsd:string, + oboInOwl:hasDbXref "PMID:18223036"^^xsd:string, + oboInOwl:hasDbXref "PMID:18552200"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex in which a cullin from the Cul4 family and a RING domain protein form the catalytic core; substrate specificity is conferred by an adaptor protein."^^xsd:string, + rdfs:label "CUL4 RING ubiquitin ligase complex"^^xsd:string + + SubClassOf: + obo:GO_0031461 + + +Class: obo:GO_0044296 + + Annotations: + + Annotations: oboInOwl:hasDbXref "NIF_Subcellular:sao1340260079"^^xsd:string + obo:IAO_0000115 "The terminal specialization found in some types of dendrites which consists of numerous small terminal branches, giving the dendrite a tufted appearance."^^xsd:string, + oboInOwl:id "GO:0044296"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "dendrite tuft"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1340260079"^^xsd:string, + rdfs:label "dendritic tuft"^^xsd:string + + SubClassOf: + obo:GO_0044292 + + +Class: obo:GO_0044295 + + Annotations: + oboInOwl:id "GO:0044295"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The migrating motile tip of a growing nerve cell axon."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1594955670"^^xsd:string, + rdfs:label "axonal growth cone"^^xsd:string, + oboInOwl:hasExactSynonym "axon growth cone"^^xsd:string + + SubClassOf: + obo:GO_0033267, + obo:GO_0030426 + + +Class: obo:GO_0044298 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "The plasma membrane of a cell that bears surface projections such as axons, dendrites, cilia, or flagella, excluding the plasma membrane on cell projections."^^xsd:string, + oboInOwl:id "GO:0044298"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell body membrane"^^xsd:string, + oboInOwl:hasExactSynonym "cell soma membrane"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0044297 + + +Class: obo:GO_0044297 + + Annotations: + oboInOwl:id "GO:0044297"^^xsd:string, + rdfs:comment "Note that 'cell body' and 'cell soma' are not used in the literature for cells that lack projections, nor for some cells (e.g. yeast with mating projections) that do have projections."^^xsd:string, + oboInOwl:hasExactSynonym "cell soma"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "cell body"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The portion of a cell bearing surface projections such as axons, dendrites, cilia, or flagella that includes the nucleus, but excludes all cell projections."^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0085035 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A projection from a cell or tissue that penetrates the host's cell wall and invaginates the host cell membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also: extrahaustorial matrix ; GO:0085036 and extrahaustorial membrane ; GO:0085037."^^xsd:string, + oboInOwl:id "GO:0085035"^^xsd:string, + rdfs:label "haustorium"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0031676 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plasma membrane-derived thylakoid membrane"^^xsd:string, + oboInOwl:id "GO:0031676"^^xsd:string, + oboInOwl:hasExactSynonym "plasma membrane thylakoid membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The pigmented membrane of a plasma membrane-derived thylakoid."^^xsd:string + + SubClassOf: + obo:GO_0042717, + obo:GO_0042651, + obo:GO_0044459, + obo:BFO_0000050 some obo:GO_0030075, + obo:GO_0044422 + + +Class: obo:GO_0034743 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:15572129"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC) and the Rac1 and Cdc42 effector IQGAP1; may play a role in cytoskeleton organization and cell migration."^^xsd:string, + oboInOwl:id "GO:0034743"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "APC-IQGAP complex"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0034742 + + Annotations: + oboInOwl:id "GO:0034742"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "23S APC complex"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16188939"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC), Axin-1, and beta-catenin."^^xsd:string, + rdfs:label "APC-Axin-1-beta-catenin complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0034741 + + Annotations: + oboInOwl:id "GO:0034741"^^xsd:string, + rdfs:label "APC-tubulin-IQGAP1 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "60S APC complex"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17126424"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC), alpha-tubulin, gamma-tubulin, and the Rac1 and Cdc42 effector IQGAP1; may play a role in cytoskeleton organization."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0034740 + + Annotations: + oboInOwl:hasExactSynonym "TFIIIC-Topoisomerase 1-PC4 complex"^^xsd:string, + oboInOwl:id "GO:0034740"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9660958"^^xsd:string + obo:IAO_0000115 "A protein complex that contains TFIIIC, topoisomerase 1, and Sub1/PC4. Characterized in human, the complex is involved in regulating transcription from RNA polymerase III (Pol III) promoters. Topoisomerase 1 and Sub1 enhance the accuracy of transcription termination, and promote reinitiation by Pol III."^^xsd:string, + rdfs:label "TFIIIC-TOP1-SUB1 complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016591, + obo:GO_0005667 + + +Class: obo:GO_0034735 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11433012"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that forms part of the TFIIIC complex, observed in human; composed of five subunits (GTF3C1/hTFIIIC220/TFIIICalpha, GTF3C2/hTFIIIC110/TFIIICbeta, GTF3C3/hTFIIIC102/TFIIICgamma, GTF3C4/hTFIIIC90/TFIIICdelta and GTF3C5/hTFIIIC63/TFIIICepsilon in human) that together recognize the type 2 RNA polymerase III promoter."^^xsd:string, + rdfs:label "transcription factor TFIIIC2 complex"^^xsd:string, + oboInOwl:id "GO:0034735"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000127, + obo:GO_0005667 + + +Class: obo:GO_0009340 + + Annotations: + oboInOwl:inSubset , + rdfs:label "DNA topoisomerase IV complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009340"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:7783632"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme, which in most bacterial species is composed of two subunits, ParC and ParE. Functions in chromosome segregation and can relax supercoiled DNA."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0009341 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "beta-galactosidase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:3.2.1.2"^^xsd:string, + oboInOwl:hasDbXref "EC:3.2.1.23"^^xsd:string, + oboInOwl:hasDbXref "PMID:15950161"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses beta-galactosidase activity, i.e. catalyzes the hydrolysis of terminal non-reducing beta-D-galactose residues in beta-D-galactosides. In E. coli, the complex is a homotetramer; dimeric and hexameric beta-galactosidase complexes have been observed in other species."^^xsd:string, + oboInOwl:id "GO:0009341"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0034733 + + Annotations: + rdfs:comment "Note that the subunits of TFIIIB-beta are conserved between human and yeast; however, in yeast a single TFIIIB complex regulates transcription of tRNA, 5S rRNA and U6 snRNA genes, whereas two different TBP-dependent TFIIIB activities exist in humans."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11433012"^^xsd:string + obo:IAO_0000115 "A transcription factor TFIIIB-beta complex that contains the TATA-binding protein (TBP), B'' and BRF, and is involved in the regulation of transcription from type 2 RNA polymerase III promoters."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcription factor TFIIIB-beta complex"^^xsd:string, + oboInOwl:id "GO:0034733"^^xsd:string + + SubClassOf: + obo:GO_0000126 + + +Class: obo:GO_0009342 + + Annotations: + + Annotations: oboInOwl:hasDbXref "EC:1.4.1.13"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A complex that possesses glutamate synthase (NADPH) activity."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009342"^^xsd:string, + rdfs:label "glutamate synthase complex (NADPH)"^^xsd:string + + SubClassOf: + obo:GO_0031026 + + +Class: obo:GO_0034734 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11433012"^^xsd:string, + oboInOwl:hasDbXref "PMID:15096501"^^xsd:string + obo:IAO_0000115 "A transcription factor complex that forms part of the TFIIIC complex, observed in human. The complex is poorly characterized, but contains the 250-kDa form of HsBdp1, and is thought to include nuclear factor 1 (NF1). It stimulates binding by human TFIIIC2 and is required for transcription activity."^^xsd:string, + rdfs:label "transcription factor TFIIIC1 complex"^^xsd:string, + oboInOwl:id "GO:0034734"^^xsd:string + + SubClassOf: + obo:GO_0005667, + obo:BFO_0000050 some obo:GO_0000127 + + +Class: obo:GO_0009343 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.3.4.14"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the formation of carboxybiotin-carboxyl-carrier protein from biotin-carboxyl-carrier protein and carbon dioxide (CO2)."^^xsd:string, + oboInOwl:id "GO:0009343"^^xsd:string, + rdfs:label "biotin carboxylase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009317, + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0031680 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "heterotrimeric G-protein GTPase, beta-subunit"^^xsd:string, + rdfs:comment "See also the cellular component term 'heterotrimeric G-protein complex ; GO:0005834'."^^xsd:string, + oboInOwl:id "GO:0031680"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The heterodimer formed by the beta and gamma subunits of a heterotrimeric G protein, which dissociates from the alpha subunit upon guanine nuclotide exchange."^^xsd:string, + rdfs:label "G-protein beta/gamma-subunit complex"^^xsd:string, + oboInOwl:hasExactSynonym "G-beta/G-gamma complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009344 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nitrite reductase complex [NAD(P)H]"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Complex that possesses nitrite reductase [NAD(P)H] activity."^^xsd:string, + rdfs:comment "See also the molecular function term 'nitrite reductase [NAD(P)H] activity ; GO:0008942'."^^xsd:string, + oboInOwl:id "GO:0009344"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0009345 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "glycine-tRNA synthetase complex"^^xsd:string, + rdfs:label "glycine-tRNA ligase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.1.1.14"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:15733854"^^xsd:string + obo:IAO_0000115 "A multimeric enzyme complex which, in bacteria, is usually a tetramer of two alpha and two beta chains and in eukaryotes, is usually a homodimer. Functions in the ligation of glycine and tRNA(Gly) to form glycyl-tRNA(Gly)."^^xsd:string, + oboInOwl:id "GO:0009345"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009346 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "citrate lyase complex"^^xsd:string, + oboInOwl:id "GO:0009346"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:4.1.3.6"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:ACECITLY-CPLX"^^xsd:string + obo:IAO_0000115 "Citrate lyase is a multienzyme complex with three constituents: the alpha subunit, citrate-ACP transferase; the beta subunit, citryl-ACP lyase; and the gamma subunit, an acyl-carrier protein which also carries the prosthetic group components. All three subunits are required for citrate lyase enzyme activity."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009347 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that in eukaryotes, aspartate carbamoyltransferase is usually a single polypeptide, not a complex, and should therefore not be annotated to this component term."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10447693"^^xsd:string + obo:IAO_0000115 "A multienzyme complex that catalyzes the formation N-carbamoyl-L-aspartate from carbamoyl phosphate and L-aspartate. It exhibits a variety of architectural organizations, but in all microorganisms the core catalytic component is a homotrimer of approximately 34 kDa polypeptides."^^xsd:string, + rdfs:label "aspartate carbamoyltransferase complex"^^xsd:string, + oboInOwl:id "GO:0009347"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0009348 + + Annotations: + oboInOwl:id "GO:0009348"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.1.3.3"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A homotrimeric protein complex that catalyzes the transfer of a carbamoyl group to ornithine, forming citrulline."^^xsd:string, + rdfs:label "ornithine carbamoyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0044391 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ribosomal subunit"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Either of the two subunits of a ribosome: the ribosomal large subunit or the ribosomal small subunit."^^xsd:string, + oboInOwl:id "GO:0044391"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044446, + obo:BFO_0000050 some obo:GO_0005840 + + +Class: obo:GO_0009349 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009349"^^xsd:string, + rdfs:label "riboflavin synthase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:2.5.1.9"^^xsd:string + obo:IAO_0000115 "An flavoprotein that catalyzes the reaction the breakdown of dimethyl(ribityl)lumazine to form riboflavin and ribitylamino-amino-dihydroxypyrimidine."^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0044393 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Although in some literature 'microspike' and 'filopodium' are used synonymously, in GO microspike refers to a cell projection that is distinct from a filopodium. See also 'filopodium ; GO:0030175'."^^xsd:string, + oboInOwl:id "GO:0044393"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11429692"^^xsd:string, + oboInOwl:hasDbXref "PMID:12153987"^^xsd:string, + oboInOwl:hasDbXref "PMID:19095735"^^xsd:string + obo:IAO_0000115 "A dynamic, actin-rich projection extending from the surface of a migrating animal cell."^^xsd:string, + rdfs:label "microspike"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0016363 + + Annotations: + oboInOwl:id "GO:0016363"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "nucleoskeleton "^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0582227089"^^xsd:string + obo:IAO_0000115 "The dense fibrillar network lying on the inner side of the nuclear membrane."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nuclear_matrix"^^xsd:string, + rdfs:label "nuclear matrix"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0034399, + obo:GO_0044428 + + +Class: obo:GO_0085026 + + Annotations: + oboInOwl:id "GO:0085026"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "TVM network"^^xsd:string, + oboInOwl:hasExactSynonym "TVN"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A complex, symbiont-induced host-derived organelle that is comprised of multiple protein and lipid domains."^^xsd:string, + rdfs:label "tubovesicular membrane network"^^xsd:string + + SubClassOf: + obo:GO_0033655, + obo:GO_0043264 + + +Class: obo:GO_0071797 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:17006537"^^xsd:string, + oboInOwl:hasDbXref "PMID:19136968"^^xsd:string, + oboInOwl:hasDbXref "PMID:21455180"^^xsd:string + obo:IAO_0000115 "A ubiquitin ligase complex that catalyzes linear head-to-tail polyubiquitin conjugation on its targets. In human the complex consists of RBCK1, RNF31 and SHARPIN, and has an MW of approximately 600 kDa, suggesting a heteromultimeric assembly of its subunits. LUBAC stands for Linear Ubiquitin Chain Assembly Complex."^^xsd:string, + rdfs:label "LUBAC complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071797"^^xsd:string + + SubClassOf: + obo:GO_0000151 + + +Class: obo:GO_0034730 + + Annotations: + oboInOwl:hasBroadSynonym "SMN-containing protein complex"^^xsd:string, + oboInOwl:id "GO:0034730"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "SmD-containing SMN-Sm protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12975319"^^xsd:string, + oboInOwl:hasDbXref "PMID:17401408"^^xsd:string + obo:IAO_0000115 "An SMN-Sm protein complex formed by the association of the methylated Sm proteins B/B', D1, D2, D3, E, F, and G with the SMN complex."^^xsd:string + + SubClassOf: + obo:GO_0034719 + + +Class: obo:GO_0009350 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009350"^^xsd:string, + rdfs:label "ethanolamine ammonia-lyase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:4.3.1.7"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the breakdown of ethanolamine to form acetaldehyde and ammonia."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0034732 + + Annotations: + oboInOwl:id "GO:0034732"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11433012"^^xsd:string + obo:IAO_0000115 "A transcription factor TFIIIB-beta complex that contains the TATA-binding protein (TBP), B'' and a specialized homolog of the conserved subunit BRF referred to as BRFU or TFIIIB50, which found in human but not conserved in yeast; the complex is involved in the regulation of transcription from type 3 (upstream) RNA polymerase III promoters."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "transcription factor TFIIIB-alpha complex"^^xsd:string + + SubClassOf: + obo:GO_0000126 + + +Class: obo:GO_0034731 + + Annotations: + oboInOwl:hasBroadSynonym "SMN-containing protein complex"^^xsd:string, + oboInOwl:id "GO:0034731"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12975319"^^xsd:string, + oboInOwl:hasDbXref "PMID:17401408"^^xsd:string + obo:IAO_0000115 "An SMN-Sm protein complex formed by the association of the methylated Sm proteins B/B', D3, E, F, and G, and Lsm10 and Lsm11, with the SMN complex. This complex forms Sm cores on U7 snRNA."^^xsd:string, + rdfs:label "Lsm-containing SMN-Sm protein complex"^^xsd:string + + SubClassOf: + obo:GO_0034719 + + +Class: obo:GO_0009353 + + Annotations: + rdfs:label "mitochondrial oxoglutarate dehydrogenase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "MetaCyc:CPLX66-42"^^xsd:string, + oboInOwl:hasDbXref "PMID:10848975"^^xsd:string + obo:IAO_0000115 "A complex of multiple copies of three enzymatic components: oxoglutarate dehydrogenase (lipoamide) ; EC:1.2.4.2 (E1), dihydrolipoamide S-succinyltransferase ; EC:2.3.1.61 (E2) and dihydrolipoamide dehydrogenase ; EC:1.8.1.4 (E3); catalyzes the overall conversion of 2-oxoglutarate to succinyl-CoA and carbon dioxide (CO2) within the mitochondrial matrix. An example of this complex is found in Mus musculus."^^xsd:string, + oboInOwl:id "GO:0009353"^^xsd:string, + rdfs:comment "See also the molecular functions term 'oxoglutarate dehydrogenase (succinyl-transferring) activity ; GO:0004591', 'dihydrolipoyllysine-residue succinyltransferase activity ; GO:0004149' and 'dihydrolipoyl dehydrogenase activity ; GO:0004148'."^^xsd:string + + EquivalentTo: + obo:GO_0045252 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0045252, + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0009357 + + Annotations: + + Annotations: oboInOwl:hasDbXref "EC:2.7.1.69"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the transfer of a phosphate from protein N(PI)-phosphohistidine to a sugar molecule. It is enzyme II of the phosphotransferase system."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009357"^^xsd:string, + rdfs:label "protein-N(PI)-phosphohistidine-sugar phosphotransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009358 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses polyphosphate kinase activity."^^xsd:string, + rdfs:label "polyphosphate kinase complex"^^xsd:string, + rdfs:comment "See also the molecular function term 'polyphosphate kinase activity ; GO:0008976'."^^xsd:string, + oboInOwl:id "GO:0009358"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0009355 + + Annotations: + rdfs:label "DNA polymerase V complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10430871"^^xsd:string, + oboInOwl:hasDbXref "PMID:10542196"^^xsd:string + obo:IAO_0000115 "A DNA polymerase complex that contains two UmuD' and one UmuC subunits, and acts in translesion DNA synthesis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009355"^^xsd:string + + SubClassOf: + obo:GO_0042575 + + +Class: obo:GO_0009356 + + Annotations: + oboInOwl:hasExactSynonym "ADC synthase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "4-amino-4-deoxychorismate synthase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "aminodeoxychorismate synthase complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "p-aminobenzoate synthetase complex"^^xsd:string, + oboInOwl:id "GO:0009356"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:2251281"^^xsd:string, + oboInOwl:hasDbXref "PMID:7592344"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that possesses 4-amino-4-deoxychorismate synthase activity."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0009359 + + Annotations: + oboInOwl:id "GO:0009359"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12654995"^^xsd:string + obo:IAO_0000115 "A protein complex that functions as an endonuclease to cleave DNA at or near a specific recognition site, when that site is unmethylated. These complexes may be dimers or tetramers; it is also possible for the endonuclease to be in a complex with the corresponding methyltransferase that methylates the recognition site. DNA restriction systems such as this are used by bacteria to defend against phage and other foreign DNA that may enter a cell."^^xsd:string, + rdfs:label "Type II site-specific deoxyribonuclease complex"^^xsd:string, + oboInOwl:hasExactSynonym "Type II restriction enzyme complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0071782 + + Annotations: + oboInOwl:id "GO:0071782"^^xsd:string, + rdfs:label "endoplasmic reticulum tubular network"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:16469703"^^xsd:string, + oboInOwl:hasDbXref "PMID:20434336"^^xsd:string + obo:IAO_0000115 "An endoplasmic reticulum part that comprises the membranes with high curvature in cross-section."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "ER tubular network"^^xsd:string + + SubClassOf: + obo:GO_0044432 + + +Class: obo:GO_0005608 + + Annotations: + rdfs:label "laminin-3 complex"^^xsd:string, + oboInOwl:id "GO:0005608"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "MEDLINE:95005761"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha1, beta2 and gamma1 polypeptide chains."^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0010240 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:9393637"^^xsd:string + obo:IAO_0000115 "Complex that carries out the oxidative decarboxylation of pyruvate to form acetyl-CoA; comprises subunits possessing three catalytic activities: pyruvate dehydrogenase (E1), dihydrolipoamide S-acetyltransferase (E2), and dihydrolipoamide dehydrogenase (E3). This complex is found in plant plastids and is distinct from the one found in mitochondria."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "dehydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0010240"^^xsd:string, + rdfs:label "plastid pyruvate dehydrogenase complex"^^xsd:string + + EquivalentTo: + obo:GO_0045254 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0045254 + + +Class: obo:GO_0071781 + + Annotations: + rdfs:label "endoplasmic reticulum cisternal network"^^xsd:string, + oboInOwl:id "GO:0071781"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "ER cisternal network"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:16469703"^^xsd:string, + oboInOwl:hasDbXref "PMID:20434336"^^xsd:string + obo:IAO_0000115 "An endoplasmic reticulum part that comprises the membranes with low curvature in cross-section."^^xsd:string + + SubClassOf: + obo:GO_0044432 + + +Class: obo:GO_0005607 + + Annotations: + oboInOwl:id "GO:0005607"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha2, beta1 and gamma1 polypeptide chains."^^xsd:string, + rdfs:label "laminin-2 complex"^^xsd:string + + SubClassOf: + obo:GO_0043256, + obo:GO_0044459, + obo:GO_0044444 + + +Class: obo:GO_0009361 + + Annotations: + + Annotations: oboInOwl:hasDbXref "CORUM:394"^^xsd:string + oboInOwl:hasExactSynonym "succinyl-CoA synthetase, ADP-forming"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009361"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:6.2.1.5"^^xsd:string, + oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A heterodimeric enzyme complex, composed of an alpha and beta chain, most usually found in (but not limited to) bacteria. Functions in the TCA cycle, hydrolyzing succinyl-CoA into succinate and CoA, thereby forming ATP."^^xsd:string, + rdfs:label "succinate-CoA ligase complex (ADP-forming)"^^xsd:string + + SubClassOf: + obo:GO_0042709 + + +Class: obo:GO_0005606 + + Annotations: + rdfs:label "laminin-1 complex"^^xsd:string, + oboInOwl:id "GO:0005606"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha1, beta1 and gamma1 polypeptide chains."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0009360 + + Annotations: + rdfs:label "DNA polymerase III complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009360"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11525729"^^xsd:string, + oboInOwl:hasDbXref "PMID:12940977"^^xsd:string + obo:IAO_0000115 "A DNA polymerase complex that contains two complexes of the catalytic alpha, beta, delta and epsilon polymerase/exonuclease subunits, plus the DnaX complex, a heptamer that includes the tau and gamma products of the dnaX gene and confers structural asymmetry that allows the polymerase to replicate both leading and lagging strands."^^xsd:string + + SubClassOf: + obo:GO_0042575 + + +Class: obo:GO_0005605 + + Annotations: + oboInOwl:id "GO:0005605"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1397492660"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A thin sheet of proteoglycans and glycoproteins, especially laminin, secreted by cells as an extracellular matrix."^^xsd:string, + oboInOwl:hasExactSynonym "basement lamina"^^xsd:string, + rdfs:label "basal lamina"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Basal_lamina"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0005604 + + +Class: obo:GO_0005609 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005609"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha2, beta2 and gamma1 polypeptide chains."^^xsd:string, + rdfs:label "laminin-4 complex"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0009366 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasDbXref "MetaCyc:ENTMULTI-CPLX"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "enterochelin synthetase complex"^^xsd:string, + oboInOwl:id "GO:0009366"^^xsd:string, + rdfs:label "enterobactin synthetase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "MetaCyc:ENTMULTI-CPLX"^^xsd:string, + oboInOwl:hasDbXref "PMID:9485415"^^xsd:string + obo:IAO_0000115 "A multienzyme complex usually composed of four proteins, EntB, EntD, EntE and EntF. Plays a role in the enterobactin biosynthesis pathway."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005610 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "laminin-5 complex"^^xsd:string, + oboInOwl:id "GO:0005610"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha3, beta3 and gamma2 polypeptide chains."^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0005611 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha3, beta1 and gamma1 polypeptide chains."^^xsd:string, + oboInOwl:id "GO:0005611"^^xsd:string, + rdfs:label "laminin-6 complex"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0009368 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0009368"^^xsd:string, + rdfs:label "endopeptidase Clp complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11352464"^^xsd:string + obo:IAO_0000115 "A protein complex comprised of members of the ClpX, ClpC, ClpD, ClpP or ClpR protein families. ClpPs are the proteolytic subunit of active complexes, and ClpA and ClpX form the regulatory subunits. Enzymatically active and inactive complexes can form."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005614 + + Annotations: + rdfs:label "interstitial matrix"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:8450001"^^xsd:string + obo:IAO_0000115 "A type of extracellular matrix found in interstitial connective tissue, characterized by the presence of fibronectins, proteoglycans, and types I, III, V, VI, VII and XII collagens."^^xsd:string, + oboInOwl:id "GO:0005614"^^xsd:string + + SubClassOf: + obo:GO_0005578 + + +Class: obo:GO_0005615 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extracellular space"^^xsd:string, + oboInOwl:hasRelatedSynonym "intercellular space"^^xsd:string, + oboInOwl:inSubset , + rdfs:comment "Note that for multicellular organisms, the extracellular space refers to everything outside a cell, but still within the organism (excluding the extracellular matrix). Gene products from a multi-cellular organism that are secreted from a cell into the interstitial fluid or blood can therefore be annotated to this term."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "That part of a multicellular organism outside the cells proper, usually taken to be outside the plasma membranes, and occupied by fluid."^^xsd:string, + oboInOwl:id "GO:0005615"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1425028079"^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0005612 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha3, beta2 and gamma1 polypeptide chains."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "laminin-7 complex"^^xsd:string, + oboInOwl:id "GO:0005612"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0009365 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A complex that possesses protein histidine kinase activity."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "protein histidine kinase complex"^^xsd:string, + oboInOwl:id "GO:0009365"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0085041 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "arbuscule"^^xsd:string, + rdfs:comment "See also: periarbuscular membrane ; GO:0085042."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "Highly branched symbiont haustoria within host root cortex cells, responsible for nutrient exchange."^^xsd:string, + oboInOwl:id "GO:0085041"^^xsd:string + + SubClassOf: + obo:GO_0085035 + + +Class: obo:GO_0085042 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "periarbuscular membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A host-derived membrane surrounding the symbiont arbuscule during symbiosis."^^xsd:string, + rdfs:comment "See also: arbuscule ; GO:0085041."^^xsd:string, + oboInOwl:id "GO:0085042"^^xsd:string + + SubClassOf: + obo:GO_0033644 + + +Class: obo:GO_0042470 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Melanosome"^^xsd:string, + oboInOwl:id "GO:0042470"^^xsd:string, + rdfs:label "melanosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11584301"^^xsd:string + obo:IAO_0000115 "A tissue-specific, membrane-bounded cytoplasmic organelle within which melanin pigments are synthesized and stored. Melanosomes are synthesized in melanocyte cells."^^xsd:string + + SubClassOf: + obo:GO_0048770 + + +Class: obo:GO_0085040 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "The space between the symbiont plasma membrane and the extra-invasive hyphal membrane."^^xsd:string, + rdfs:comment "See also: 'extra-invasive hyphal membrane ; GO:0085039'."^^xsd:string, + rdfs:label "extra-invasive hyphal space"^^xsd:string, + oboInOwl:id "GO:0085040"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043655, + obo:GO_0044421 + + +Class: obo:GO_0071778 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071778"^^xsd:string, + rdfs:label "WINAC complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "PMID:12837248"^^xsd:string + obo:IAO_0000115 "A SWI/SNF-type complex that directly interacts with the vitamin D receptor (VDR) through the Williams syndrome transcription factor (WSTF), and mediates the recruitment of unliganded VDR to VDR target sites in promoters. The WINAC complex contains at least 13 subunits, including WSTF, several SWI/SNF components, and DNA replication-related factors."^^xsd:string + + SubClassOf: + obo:GO_0070603 + + +Class: obo:GO_0032311 + + Annotations: + rdfs:label "angiogenin-PRI complex"^^xsd:string, + oboInOwl:id "GO:0032311"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "angiogenin-placental ribonuclease inhibitor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:2706246"^^xsd:string, + oboInOwl:hasDbXref "PMID:3470787"^^xsd:string + obo:IAO_0000115 "A stable heterodimer of angiogenin and placental ribonuclease inhibitor; interaction between angiogenin and PRI prevents angiogenin binding to its receptor to stimulate angiogenesis."^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:GO_0043234 + + +Class: obo:GO_0036087 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:al"^^xsd:string, + oboInOwl:hasDbXref "PMID:12734194"^^xsd:string, + oboInOwl:hasDbXref "PMID:14990577"^^xsd:string, + oboInOwl:hasDbXref "PMID:1958212"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two or more polypeptide subunits, and which possesses glutathione synthase activity (catalysis of the reaction: L-gamma-glutamyl-L-cysteine + ATP + glycine = ADP + glutathione + 2 H(+) + phosphate). In eukaryotes, the complex is homodimeric, in E. coli glutathione synthase exists as a tetramer, and in S. pombe the complex exists as a homodimer or a heterotetramer."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12734194"^^xsd:string, + oboInOwl:hasDbXref "PMID:14990577"^^xsd:string, + oboInOwl:hasDbXref "PMID:1958212"^^xsd:string + oboInOwl:hasExactSynonym "glutathione synthetase complex"^^xsd:string, + oboInOwl:id "GO:0036087"^^xsd:string, + rdfs:label "glutathione synthase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0048501 + + Annotations: + rdfs:label "signal recognition particle, plasma membrane targeting"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0048501"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex consisting of a protein and RNA component which binds the signal sequence of some proteins and facilitates their export to or across the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0048500 + + +Class: obo:GO_0034752 + + Annotations: + oboInOwl:hasExactSynonym "cytosolic AhR complex"^^xsd:string, + rdfs:label "cytosolic aryl hydrocarbon receptor complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "9S-cytosolic aryl hydrocarbon (Ah) receptor non-ligand activated complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7598497"^^xsd:string, + oboInOwl:hasDbXref "PMID:8937476"^^xsd:string, + oboInOwl:hasDbXref "PMID:9447995"^^xsd:string + obo:IAO_0000115 "An aryl hydrocarbon receptor complex found in the cytosol, in which the ligand-binding subunit AhR is not bound to ligand; consists of AhR, two molecules of HSP90, the protein kinase c-Src, and the immunophilin XAP2/AIP."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "cytosolic AHRC"^^xsd:string, + oboInOwl:id "GO:0034752"^^xsd:string + + SubClassOf: + obo:GO_0034751, + obo:GO_0044445 + + +Class: obo:GO_0034751 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "AhR complex"^^xsd:string, + oboInOwl:id "GO:0034751"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:7598497"^^xsd:string + obo:IAO_0000115 "A protein complex that acts as an aryl hydrocarbon (Ah) receptor. Cytosolic and nuclear Ah receptor complexes have different subunit composition, but both contain the ligand-binding subunit AhR."^^xsd:string, + rdfs:label "aryl hydrocarbon receptor complex"^^xsd:string, + oboInOwl:hasExactSynonym "AHRC"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043235 + + +Class: obo:GO_0034753 + + Annotations: + oboInOwl:hasExactSynonym "nuclear AhR complex"^^xsd:string, + oboInOwl:hasRelatedSynonym "6S-nuclear aryl hydrocarbon (Ah) receptor ligand-activated complex"^^xsd:string, + rdfs:label "nuclear aryl hydrocarbon receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034753"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear AHRC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:7598497"^^xsd:string + obo:IAO_0000115 "An aryl hydrocarbon receptor (AhR) complex found in the nucleus; ; consists of ligand-bound AhR and the aryl hydrocarbon receptor nuclear translocator (ARNT)."^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0034751 + + +Class: obo:GO_0034750 + + Annotations: + oboInOwl:hasNarrowSynonym "hScrib-APC-beta-catenin complex"^^xsd:string, + oboInOwl:id "GO:0034750"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + rdfs:label "Scrib-APC-beta-catenin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16611247"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the Scribble protein (a cell polarity determinant), the tumor suppressor protein adenomatous polyposis coli (APC), and beta-catenin; may be involved in the control of cell proliferation."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0048500 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "A complex of protein and RNA which facilitates translocation of proteins across membranes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "signal recognition particle"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Signal_recognition_particle"^^xsd:string, + oboInOwl:id "GO:0048500"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0044386 + + Annotations: + rdfs:label "integral to host endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044386"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of an endoplasmic reticulum membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer. Occurring in a host cell."^^xsd:string + + SubClassOf: + obo:GO_0044385, + obo:BFO_0000050 some obo:GO_0044167 + + +Class: obo:GO_0034748 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15556865"^^xsd:string + obo:IAO_0000115 "A protein complex that contains Par3, the tumor suppressor protein adenomatous polyposis coli (APC), and the kinesin-related protein KIF3A; involved in establishing neuronal cell polarity."^^xsd:string, + rdfs:label "Par3-APC-KIF3A complex"^^xsd:string, + oboInOwl:id "GO:0034748"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009379 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16935884"^^xsd:string, + oboInOwl:hasDbXref "PMID:9442895"^^xsd:string + obo:IAO_0000115 "A DNA helicase complex that forms part of a Holliday junction resolvase complex, where the helicase activity is involved in the migration of the junction branch point. The best-characterized example is the E. coli RuvAB complex, in which a hexamer of RuvB subunits possesses helicase activity that is modulated by association with RuvA."^^xsd:string, + rdfs:label "Holliday junction helicase complex"^^xsd:string, + oboInOwl:id "GO:0009379"^^xsd:string + + EquivalentTo: + obo:GO_0033202 + and (obo:BFO_0000050 some obo:GO_0048476) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0048476, + obo:GO_0033202 + + +Class: obo:GO_0031674 + + Annotations: + oboInOwl:hasExactSynonym "J disc"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "I disc"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sarcomere#bands"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0321204131"^^xsd:string + obo:IAO_0000115 "A region of a sarcomere that appears as a light band on each side of the Z disc, comprising a region of the sarcomere where thin (actin) filaments are not overlapped by thick (myosin) filaments; contains actin, troponin, and tropomyosin; each sarcomere includes half of an I band at each end."^^xsd:string, + rdfs:label "I band"^^xsd:string, + oboInOwl:id "GO:0031674"^^xsd:string, + oboInOwl:hasExactSynonym "isotropic disc"^^xsd:string + + SubClassOf: + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0030017 + + +Class: obo:GO_0044385 + + Annotations: + rdfs:label "integral to membrane of host cell"^^xsd:string, + oboInOwl:id "GO:0044385"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of a membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer. When used to describe a protein, indicates that all or part of the peptide sequence is embedded in the membrane. Occurring in a host cell."^^xsd:string + + SubClassOf: + obo:GO_0033643, + obo:BFO_0000050 some obo:GO_0033644 + + +Class: obo:GO_0034749 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Scrib-APC complex"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16611247"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the Scribble protein (a cell polarity determinant) and the tumor suppressor protein adenomatous polyposis coli (APC); may be involved in the control of cell proliferation."^^xsd:string, + oboInOwl:id "GO:0034749"^^xsd:string, + oboInOwl:hasNarrowSynonym "hScrib-APC complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0031673 + + Annotations: + oboInOwl:hasExactSynonym "H band"^^xsd:string, + rdfs:label "H zone"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sarcomere#bands"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_muscle"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0321204131"^^xsd:string + obo:IAO_0000115 "A relatively pale zone traversing the center of the A band of a sarcomere, visible in relaxed muscle fibers; consists of the central portion of thick (myosin) filaments that are not overlapped by thin (actin) filaments."^^xsd:string, + oboInOwl:id "GO:0031673"^^xsd:string, + oboInOwl:hasExactSynonym "H disc"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031672, + obo:GO_0044449 + + +Class: obo:GO_0044384 + + Annotations: + oboInOwl:id "GO:0044384"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The external membrane of Gram-negative bacteria or certain organelles such as mitochondria and chloroplasts; freely permeable to most ions and metabolites, occurring in a host cell."^^xsd:string, + rdfs:label "host cell outer membrane"^^xsd:string + + SubClassOf: + obo:GO_0033644 + + +Class: obo:GO_0031672 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0321204131"^^xsd:string + obo:IAO_0000115 "The dark-staining region of a sarcomere, in which myosin thick filaments are present; the center is traversed by the paler H zone, which in turn contains the M line."^^xsd:string, + oboInOwl:hasExactSynonym "transverse disc"^^xsd:string, + oboInOwl:hasExactSynonym "Q disc"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Sarcomere#bands"^^xsd:string, + oboInOwl:hasExactSynonym "A disc"^^xsd:string, + oboInOwl:id "GO:0031672"^^xsd:string, + rdfs:label "A band"^^xsd:string, + oboInOwl:hasExactSynonym "anisotropic disc"^^xsd:string + + SubClassOf: + obo:GO_0044449, + obo:BFO_0000050 some obo:GO_0030017 + + +Class: obo:GO_0044383 + + Annotations: + oboInOwl:id "GO:0044383"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "host chromosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information, occurring within a host cell."^^xsd:string + + SubClassOf: + obo:GO_0033647 + + +Class: obo:GO_0005600 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0721639976"^^xsd:string + obo:IAO_0000115 "A collagen homotrimer of alpha1(XIII) chains; type X collagen triple helices span lipid bilayer membranes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005600"^^xsd:string, + rdfs:label "collagen type XIII"^^xsd:string + + SubClassOf: + obo:GO_0030936 + + +Class: obo:GO_0034744 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + rdfs:label "APC-IQGAP1-Cdc42 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15572129"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC), the small GTPase Cdc42, and the Rac1 and Cdc42 effector IQGAP1; may play a role in cytoskeleton organization and cell migration."^^xsd:string, + oboInOwl:id "GO:0034744"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0009375 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "hydrogenase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.12.7.2"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the oxidation of reduced ferredoxin. Hydrogenase contains iron-sulfur clusters, and some contain nickel; it can use molecular hydrogen for the reduction of a variety of substances."^^xsd:string, + rdfs:label "ferredoxin hydrogenase complex"^^xsd:string, + oboInOwl:id "GO:0009375"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005601 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:3.4.21.43"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "http://users.rcn.com/jkimball.ma.ultranet/BiologyPages/C/Complement.html"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that catalyzes the cleavage of complement components C3 and C5, and acts in the classical pathway of complement activation; consists of one monomer of C2a and one monomer of C4b; C2a is the catalytic subunit, but cannot catalyze cleavage alone."^^xsd:string, + oboInOwl:id "GO:0005601"^^xsd:string, + rdfs:label "classical-complement-pathway C3/C5 convertase complex"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0034745 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15572129"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC), the small GTPase Rac1, and the Rac1 and Cdc42 effector IQGAP1; may play a role in cytoskeleton organization and cell migration."^^xsd:string, + oboInOwl:id "GO:0034745"^^xsd:string, + rdfs:label "APC-IQGAP1-Rac1 complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0009376 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12670962"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses ATP-dependent protease activity; consists of an ATPase large subunit with homology to other Clp family ATPases and a peptidase small subunit related to the proteasomal beta-subunits of eukaryotes. In the E. coli complex, six identical subunits of both the ATPase, ClpY, and the protease, ClpQ, self-assemble into an oligomeric ring, and two rings of each subunit, two ClpQ rings surrounded by single ClpY rings, form a dumbbell-shaped complex."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "ClpYQ protease complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "HslUV protease complex"^^xsd:string, + oboInOwl:id "GO:0009376"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005602 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "complement component C1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781735149"^^xsd:string + obo:IAO_0000115 "A protein complex composed of six subunits of C1q, each formed of the three homologous polypeptide chains C1QA, C1QB, and C1QB, and tetramer of two C1QR and two C1QS polypeptide chains."^^xsd:string, + oboInOwl:id "GO:0005602"^^xsd:string, + oboInOwl:hasNarrowSynonym "complement component C1q complex"^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0034746 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15572129"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC), the small GTPase Cdc42, and CLIP-170; may play a role in cytoskeleton organization and cell migration."^^xsd:string, + rdfs:label "APC-IQGAP1-CLIP-170 complex"^^xsd:string, + oboInOwl:id "GO:0034746"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0034747 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that the gene/protein name 'APC' should not be confused with the abbreviation for 'anaphase promoting complex'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9601641"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the tumor suppressor protein adenomatous polyposis coli (APC), Axin-1, beta-catenin, and glycogen synthase kinase 3 beta. Formation of this complex leads to phosphorylation of beta-catenin and down-regulation of beta-catenin activity."^^xsd:string, + oboInOwl:id "GO:0034747"^^xsd:string, + rdfs:label "Axin-APC-beta-catenin-GSK3B complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005604 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term has no relationship to 'membrane ; GO:0016020' because the basement membrane is not a lipid bilayer."^^xsd:string, + rdfs:label "basement membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "A thin layer of dense material found in various animal tissues interposed between the cells and the adjacent connective tissue. It consists of the basal lamina plus an associated layer of reticulin fibers."^^xsd:string, + oboInOwl:id "GO:0005604"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Basement_membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005578, + obo:GO_0044420 + + +Class: obo:GO_0085039 + + Annotations: + oboInOwl:id "GO:0085039"^^xsd:string, + rdfs:comment "See also: extra-invasive hyphal space ; GO:0085040."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A host-derived membrane surrounding the symbiont invasive hypha during symbiosis."^^xsd:string, + rdfs:label "extra-invasive hyphal membrane"^^xsd:string + + SubClassOf: + obo:GO_0033644 + + +Class: obo:GO_0085037 + + Annotations: + oboInOwl:id "GO:0085037"^^xsd:string, + rdfs:label "extrahaustorial membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "The membrane surrounding the symbiont haustorium during symbiosis, derived from the host plasma membrane."^^xsd:string, + rdfs:comment "See also: haustorium ; GO:0085035 and extrahaustorial matrix ; GO:0085036."^^xsd:string + + SubClassOf: + obo:GO_0033644, + obo:BFO_0000050 some obo:GO_0020002 + + +Class: obo:GO_0085036 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0085036"^^xsd:string, + rdfs:comment "See also: haustorium ; GO:0085035 and extrahaustorial membrane ; GO:0085037."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "The space between the symbiont plasma membrane and the extrahaustorial membrane of the host."^^xsd:string, + rdfs:label "extrahaustorial matrix"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0043655, + obo:GO_0044421 + + +Class: obo:GO_0032302 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032302"^^xsd:string, + oboInOwl:hasBroadSynonym "MMR complex"^^xsd:string, + rdfs:label "MutSbeta complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11005803"^^xsd:string + obo:IAO_0000115 "A heterodimer involved in binding to and correcting insertion/deletion mutations. In human the complex consists of two subunits, MSH2 and MSH3."^^xsd:string, + oboInOwl:hasExactSynonym "MSH2/MSH3 complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0032300 + + +Class: obo:GO_0055039 + + Annotations: + rdfs:label "trichocyst"^^xsd:string, + oboInOwl:id "GO:0055039"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:3667715"^^xsd:string, + oboInOwl:hasDbXref "http://www.iscid.org/encyclopedia/"^^xsd:string + obo:IAO_0000115 "A crystalline exocytotic organelle composed of small, acidic proteins existing primarily as disulphide-linked dimers. The trichocyst is an organelle that releases long filamentous proteins that capture predators in \"nets\" to slow them down when the cell is disturbed. The protein is nontoxic and shaped like a long, striated, fibrous shaft."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Trichocyst"^^xsd:string + + SubClassOf: + obo:GO_0043264 + + +Class: obo:GO_0036056 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:18971929"^^xsd:string + obo:IAO_0000115 "A specialized cell-cell junction found between the cells of the excretory system, which provides a barrier for filtration of blood or hemolymph."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036056"^^xsd:string, + rdfs:label "filtration diaphragm"^^xsd:string + + SubClassOf: + obo:GO_0005911 + + +Class: obo:GO_0009380 + + Annotations: + oboInOwl:id "GO:0009380"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "excinuclease ABC complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "PMID:15192705"^^xsd:string + obo:IAO_0000115 "Any of the protein complexes formed by the UvrABC excinuclease system, which carries out nucleotide excision repair. Three different complexes are formed by the 3 proteins as they proceed through the excision repair process. First a complex consisting of two A subunits and one B subunit bind DNA and unwind it around the damaged site. Then, the A subunits disassociate leaving behind a stable complex between subunit B and DNA. Now, subunit C binds to this B+DNA complex and causes subunit B to nick the DNA on one side of the complex while subunit C nicks the DNA on the other side of the complex. DNA polymerase I and DNA ligase can then repair the resulting gap."^^xsd:string, + oboInOwl:hasExactSynonym "UvrABC excinuclease complex"^^xsd:string, + rdfs:label "excinuclease repair complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0036057 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "slit diaphragm"^^xsd:string, + oboInOwl:id "GO:0036057"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:12386277"^^xsd:string, + oboInOwl:hasDbXref "PMID:15994232"^^xsd:string, + oboInOwl:hasDbXref "PMID:18971929"^^xsd:string, + oboInOwl:hasDbXref "PMID:19478094"^^xsd:string + obo:IAO_0000115 "A specialized cell-cell junction found between the interdigitating foot processes of the glomerular epithelium (the podocytes) in the vertebrate kidney, which is adapted for facilitating glomerular filtration."^^xsd:string + + SubClassOf: + obo:GO_0036056 + + +Class: obo:GO_0009382 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0009382"^^xsd:string, + oboInOwl:hasExactSynonym "imidazoleglycerol phosphate synthase complex"^^xsd:string, + rdfs:label "imidazoleglycerol-phosphate synthase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Complex that possesses imidazoleglycerol-phosphate synthase activity."^^xsd:string, + rdfs:comment "See also the molecular function term 'imidazoleglycerol-phosphate synthase activity ; GO:0000107'."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0005628 + + Annotations: + oboInOwl:id "GO:0005628"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "ascospore-type prospore membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "FSM"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693649"^^xsd:string + obo:IAO_0000115 "The prospore membrane is a double-membraned structure that extends from the cytoplasmic face of the spindle pole bodies to encompass the spindle pole bodies and the four nuclear lobes that are formed during meiosis. It helps isolate the meiotic nuclei from the cytoplasm during spore formation and serves as a foundation for the formation of the spore walls. An example of this component is found in Schizosaccharomyces pombe."^^xsd:string, + rdfs:label "prospore membrane"^^xsd:string, + oboInOwl:hasRelatedSynonym "forespore membrane"^^xsd:string + + SubClassOf: + obo:GO_0016020, + obo:BFO_0000050 some obo:GO_0042764 + + +Class: obo:GO_0036053 + + Annotations: + rdfs:label "glomerular endothelium fenestra"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:cjm"^^xsd:string, + oboInOwl:hasDbXref "MP:0011454"^^xsd:string, + oboInOwl:hasDbXref "PMID:19129259"^^xsd:string + obo:IAO_0000115 "A large plasma membrane-lined circular pore that perforates the flattened glomerular endothelium and, unlike those of other fenestrated capillaries, is not spanned by diaphragms; the density and size of glomerular fenestrae account, at least in part, for the high permeability of the glomerular capillary wall to water and small solutes."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036053"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19129259"^^xsd:string + oboInOwl:hasExactSynonym "GEnC fenestration"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:19129259"^^xsd:string + oboInOwl:hasExactSynonym "glomerular endothelial cell fenestration"^^xsd:string + + SubClassOf: + obo:GO_0046930 + + +Class: obo:GO_0032300 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0032300"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Any complex formed of proteins that act in mismatch repair."^^xsd:string, + rdfs:label "mismatch repair complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0032301 + + Annotations: + rdfs:label "MutSalpha complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "MSH2/MSH6 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11005803"^^xsd:string + obo:IAO_0000115 "A heterodimer involved in the recognition and repair of base-base and small insertion/deletion mismatches. In human the complex consists of two subunits, MSH2 and MSH6."^^xsd:string, + oboInOwl:id "GO:0032301"^^xsd:string, + oboInOwl:hasBroadSynonym "MMR complex"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:GO_0032300 + + +Class: obo:GO_0070195 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:BHF"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vk"^^xsd:string, + oboInOwl:hasDbXref "PMID:11445442"^^xsd:string + obo:IAO_0000115 "A receptor complex that consists of two identical subunits and binds growth hormone."^^xsd:string, + rdfs:label "growth hormone receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070195"^^xsd:string + + SubClassOf: + obo:GO_0043235 + + +Class: obo:GO_0070187 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "shelterin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_mf"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:18828880"^^xsd:string + obo:IAO_0000115 "A nuclear telomere cap complex that is formed by the association of telomeric ssDNA- and dsDNA-binding proteins with telomeric DNA, and is involved in telomere protection and recruitment of telomerase. The complex contains TRF1, TRF2, POT1, RAP1, TIN2 and TPP1 in mammalian cells, and Pot1, Tpz1, Ccq1, Poz1, and Rap1 in Schizosaccharomyces. Taz1 and Rap1 (or their mammalian equivalents) form a dsDNA-binding subcomplex, Pot1 and Tpz1 form an ssDNA-binding subcomplex, and the two subcomplexes are bridged by Poz1."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Pot1 complex"^^xsd:string, + rdfs:label "telosome"^^xsd:string, + oboInOwl:id "GO:0070187"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Pot1-Tpz1 complex"^^xsd:string + + SubClassOf: + obo:GO_0000783 + + +Class: obo:GO_0030964 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0030025"^^xsd:string, + oboInOwl:hasNarrowSynonym "NADH dehydrogenase complex (plastoquinone)"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031677"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031678"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:NADH_dehydrogenase"^^xsd:string, + oboInOwl:hasNarrowSynonym "NADH dehydrogenase complex (ubiquinone)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An integral membrane complex that possesses NADH oxidoreductase activity. The complex is one of the components of the electron transport chain. It catalyzes the transfer of a pair of electrons from NADH to a quinone."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0045280"^^xsd:string, + oboInOwl:hasNarrowSynonym "plastid NADH dehydrogenase complex (plastoquinone)"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030964"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0031675"^^xsd:string, + rdfs:label "NADH dehydrogenase complex"^^xsd:string, + rdfs:comment "Note that this term represents a location and not a function; the activity possessed by this complex is mentioned in the definition for the purpose of describing and distinguishing the complex. The function possessed by this complex is represented by the molecular function term 'NADH dehydrogenase (quinone) activity ; GO:0050136'."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030966"^^xsd:string, + oboInOwl:hasNarrowSynonym "NADH dehydrogenase complex (quinone)"^^xsd:string, + oboInOwl:hasExactSynonym "Complex I"^^xsd:string, + oboInOwl:hasNarrowSynonym "NADH:plastoquinone reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0070188 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:17715303"^^xsd:string, + oboInOwl:hasDbXref "PMID:19064932"^^xsd:string + obo:IAO_0000115 "A nuclear telomere cap complex that is formed by the association of the Stn1 and Ten1 proteins with telomeric DNA; in some species a third protein is present."^^xsd:string, + rdfs:label "Stn1-Ten1 complex"^^xsd:string, + oboInOwl:id "GO:0070188"^^xsd:string + + SubClassOf: + obo:GO_0000783 + + +Class: obo:GO_0055040 + + Annotations: + oboInOwl:id "GO:0055040"^^xsd:string, + rdfs:label "periplasmic flagellum"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:15175283"^^xsd:string, + oboInOwl:hasDbXref "PMID:1624463"^^xsd:string + obo:IAO_0000115 "Flagellar filaments located in the periplasmic space; characterized in spirochetes, in which they are essential for shape and motility. Composed of a core surrounded by two sheath layers, the flagella rotate to allow migration of the cell through viscous media, which would not be possible using external flagella."^^xsd:string + + SubClassOf: + obo:GO_0009288, + obo:BFO_0000050 some obo:GO_0042597 + + +Class: obo:GO_0033391 + + Annotations: + rdfs:label "chromatoid body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0033391"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17183363"^^xsd:string + obo:IAO_0000115 "A ribonucleoprotein complex found in the cytoplasm of male germ cells, composed of exceedingly thin filaments that are consolidated into a compact mass or into dense strands of varying thickness that branch to form an irregular network. Contains mRNAs, miRNAs, and protein components involved in miRNA processing (such as Argonaute proteins and the endonuclease Dicer) and in RNA decay (such as the decapping enzyme DCP1a and GW182)."^^xsd:string + + SubClassOf: + obo:GO_0035770 + + +Class: obo:GO_0055044 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The interconnected cell membranes and intracellular regions of a plant. The interconnections occur via the plasmodesmata."^^xsd:string, + rdfs:label "symplast"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Symplast"^^xsd:string, + oboInOwl:id "GO:0055044"^^xsd:string + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0044354 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044354"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14732047"^^xsd:string + obo:IAO_0000115 "A membrane-bounded, uncoated intracellular vesicle formed by the process of macropinocytosis."^^xsd:string, + rdfs:label "macropinosome"^^xsd:string + + SubClassOf: + obo:GO_0044352 + + +Class: obo:GO_0005637 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the nuclear envelope."^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1612527463"^^xsd:string, + rdfs:label "nuclear inner membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasBroadSynonym "inner envelope"^^xsd:string, + oboInOwl:id "GO:0005637"^^xsd:string + + SubClassOf: + obo:GO_0019866, + obo:GO_0031965 + + +Class: obo:GO_0016328 + + Annotations: + oboInOwl:id "GO:0016328"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string + obo:IAO_0000115 "The membranes on the sides of epithelial cells which lie at the interface of adjacent cells."^^xsd:string, + rdfs:label "lateral plasma membrane"^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0005635 + + Annotations: + rdfs:label "nuclear envelope"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005636"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Nuclear_envelope"^^xsd:string, + oboInOwl:id "GO:0005635"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The double lipid bilayer enclosing the nucleus and separating its contents from the rest of the cytoplasm; includes the intermembrane space, a gap of width 20-40 nm (also called the perinuclear space)."^^xsd:string + + SubClassOf: + obo:GO_0031967, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0012505 + + +Class: obo:GO_0005634 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Cell_nucleus"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1702920020"^^xsd:string, + oboInOwl:id "GO:0005634"^^xsd:string, + rdfs:label "nucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle of eukaryotic cells in which chromosomes are housed and replicated. In most cells, the nucleus contains all of the cell's chromosomes except the organellar chromosomes, and is the site of RNA synthesis and processing. In some species, or in specialized cell types, RNA metabolism or DNA replication may be absent."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "cell nucleus"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0043231 + + +Class: obo:GO_0016327 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:hb"^^xsd:string + obo:IAO_0000115 "The apical end of the lateral plasma membrane of epithelial cells."^^xsd:string, + rdfs:label "apicolateral plasma membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016327"^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0005633 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "ascus lipid droplet"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ascus lipid particle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12702293"^^xsd:string + obo:IAO_0000115 "Any particle of coalesced lipids in an ascus or ascospore. May include associated proteins."^^xsd:string, + oboInOwl:id "GO:0005633"^^xsd:string + + SubClassOf: + obo:GO_0005811 + + +Class: obo:GO_0016324 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016324"^^xsd:string, + rdfs:label "apical plasma membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + obo:IAO_0000115 "The region of the plasma membrane located at the apical end of the cell."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0045177, + obo:GO_0044459 + + +Class: obo:GO_0005632 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "Either of the two innermost layers of the spore wall, as described in Saccharomyces."^^xsd:string, + rdfs:label "inner layer of spore wall"^^xsd:string, + oboInOwl:id "GO:0005632"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0005619 + + +Class: obo:GO_0044352 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "pinosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14731589"^^xsd:string, + oboInOwl:hasDbXref "PMID:14732047"^^xsd:string + obo:IAO_0000115 "A membrane-bounded, uncoated intracellular vesicle formed by the process of pinocytosis."^^xsd:string, + oboInOwl:id "GO:0044352"^^xsd:string + + SubClassOf: + obo:GO_0005768 + + +Class: obo:GO_0005631 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "chitosan layer of spore wall"^^xsd:string, + oboInOwl:id "GO:0005631"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "The second outermost layer of the spore wall, as described in Saccharomyces."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0005619 + + +Class: obo:GO_0044353 + + Annotations: + rdfs:label "micropinosome"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:14731589"^^xsd:string, + oboInOwl:hasDbXref "PMID:14732047"^^xsd:string + obo:IAO_0000115 "A membrane-bounded, uncoated intracellular vesicle formed by the process of micropinocytosis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044353"^^xsd:string + + SubClassOf: + obo:GO_0044352 + + +Class: obo:GO_0005630 + + Annotations: + rdfs:label "dityrosine layer of spore wall"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0005630"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "The outermost layer of the spore wall, as described in Saccharomyces."^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0005619 + + +Class: obo:GO_0016323 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The region of the plasma membrane that includes the basal end and sides of the cell. Often used in reference to animal polarized epithelial membranes, where the basal membrane is the part attached to the extracellular matrix, or in plant cells, where the basal membrane is defined with respect to the zygotic axis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0016323"^^xsd:string, + rdfs:label "basolateral plasma membrane"^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0009390 + + Annotations: + oboInOwl:hasExactSynonym "dimethyl sulphoxide reductase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "UM-BBD_enzymeID:e0188"^^xsd:string + obo:IAO_0000115 "An enzyme complex that catalyzes the formation of dimethyl sulfide from dimethyl sulfoxide."^^xsd:string, + rdfs:label "dimethyl sulfoxide reductase complex"^^xsd:string, + oboInOwl:id "GO:0009390"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0005616 + + Annotations: + oboInOwl:id "GO:0005616"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "larval serum protein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:6781759"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex which, in Drosophila, is a heterohexamer of three subunits, alpha, beta and gamma. The complex is thought to store amino acids for synthesis of adult proteins."^^xsd:string + + SubClassOf: + obo:GO_0044421, + obo:BFO_0000050 some obo:GO_0005615, + obo:GO_0043234 + + +Class: obo:GO_0005618 + + Annotations: + oboInOwl:id "GO:0005618"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The rigid or semi-rigid envelope lying outside the cell membrane of plant, fungal, and most prokaryotic cells, maintaining their shape and protecting them from osmotic lysis. In plants it is made of cellulose and, often, lignin; in fungi it is composed largely of polysaccharides; in bacteria it is composed of peptidoglycan."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:hasDbXref "Wikipedia:Cell_wall"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cell wall"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset , + oboInOwl:inSubset + + SubClassOf: + obo:GO_0030312 + + +Class: obo:GO_0005619 + + Annotations: + oboInOwl:id "GO:0005619"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasBroadSynonym "fungal-type spore wall"^^xsd:string, + rdfs:label "ascospore wall"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879693568"^^xsd:string + obo:IAO_0000115 "The specialized cell wall of the ascospore (spore), which is the product of meiotic division. Examples of this component are found in Fungi."^^xsd:string + + SubClassOf: + obo:GO_0009277, + obo:GO_0031160 + + +Class: obo:GO_0030981 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the microtubule cytoskeleton that lies just beneath the plasma membrane."^^xsd:string, + oboInOwl:id "GO:0030981"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cortical microtubule cytoskeleton"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0015630, + obo:GO_0044430, + obo:GO_0030863 + + +Class: obo:GO_0036063 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:19934220"^^xsd:string + obo:IAO_0000115 "A cone-shaped structure in the head of a spermatozoon, which is formed by the coalescence of Golgi fragments following the completion of meiosis. The acroblast is situated adjacent to the acrosomal vesicle."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "spermatid acroblast"^^xsd:string, + oboInOwl:id "GO:0036063"^^xsd:string, + rdfs:comment "See also the fly_anatomy.ontology term 'acroblast ; FBbt:00004947'."^^xsd:string, + rdfs:label "acroblast"^^xsd:string + + SubClassOf: + obo:GO_0044431 + + +Class: obo:GO_0036064 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:21750193"^^xsd:string + obo:IAO_0000115 "A membrane-tethered derivative of the centriole, and the site of assembly and remodelling of the cilium. As well as anchoring the cilium, the basal body is thought to provide a selective gateway regulating the entry of ciliary proteins and vesicles by intraflagellar transport."^^xsd:string, + rdfs:label "cilium basal body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036064"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "ciliary basal body"^^xsd:string + + SubClassOf: + obo:GO_0005932, + obo:GO_0044441 + + +Class: obo:GO_0036062 + + Annotations: + oboInOwl:id "GO:0036062"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10976048"^^xsd:string, + oboInOwl:hasDbXref "PMID:18439406"^^xsd:string + oboInOwl:hasExactSynonym "periactive zone"^^xsd:string, + rdfs:label "presynaptic periactive zone"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sart"^^xsd:string, + oboInOwl:hasDbXref "PMID:10976048"^^xsd:string, + oboInOwl:hasDbXref "PMID:18439406"^^xsd:string + obo:IAO_0000115 "A region that surrounds the active zone of the presynaptic plasma membrane, and is specialized for the control of synaptic development."^^xsd:string + + SubClassOf: + obo:GO_0044456 + + +Class: obo:GO_0055051 + + Annotations: + oboInOwl:id "GO:0055051"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ATP-binding cassette (ABC) transporter complex, integrated substrate binding"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex for the transport of metabolites out of the cell, consisting of 4 domains: two ATP-binding domains and two membrane spanning domains. In some cases, all 4 domains are contained on 1 polypeptide, while in others one ATP-binding domain and one membrane spanning domain are together on one polypeptide in what is called a \"half transporter\". Two \"half-transporters\" come together to form a functional transporter. Transport of the substrate across the membrane is driven by the hydrolysis of ATP."^^xsd:string + + SubClassOf: + obo:GO_0043190 + + +Class: obo:GO_0055052 + + Annotations: + oboInOwl:id "GO:0055052"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ATP-binding cassette (ABC) transporter complex, substrate-binding subunit-containing"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex for the transport of metabolites into the cell, consisting of 5 subunits: two ATP-binding subunits, two membrane spanning subunits, and one substrate-binding subunit. In organisms with two membranes, the substrate-binding protein moves freely in the periplasmic space and joins the other subunits only when bound with substrate. In organisms with only one membrane the substrate-binding protein is tethered to the cytoplasmic membrane and associated with the other subunits. Transport of the substrate across the membrane is driven by the hydrolysis of ATP."^^xsd:string + + SubClassOf: + obo:GO_0043190 + + +Class: obo:GO_0005624 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "That fraction of cells, prepared by disruptive biochemical methods, that includes the plasma and other membranes."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + rdfs:label "membrane fraction"^^xsd:string, + oboInOwl:id "GO:0005624"^^xsd:string + + SubClassOf: + obo:GO_0005626 + + +Class: obo:GO_0061200 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "clathrin sculpted gamma-aminobutyric acid transport vesicle"^^xsd:string, + oboInOwl:id "GO:0061200"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "A clathrin sculpted lipid bilayer membrane-enclosed vesicle after clathrin release and containing gamma-aminobutyric acid transport vesicle."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasExactSynonym "clathrin sculpted GABA transport vesicle"^^xsd:string + + SubClassOf: + obo:GO_0060198 + + +Class: obo:GO_0005623 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasDbXref "NIF_Subcellular:sao1813327414"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cell_(biology)"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope."^^xsd:string, + oboInOwl:id "GO:0005623"^^xsd:string, + rdfs:label "cell"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0005575 + + +Class: obo:GO_0061201 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of the clathrin sculpted gamma-aminobutyric acid transport vesicle."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasExactSynonym "clathrin sculpted GABA transport vesicle lumen"^^xsd:string, + rdfs:label "clathrin sculpted gamma-aminobutyric acid transport vesicle lumen"^^xsd:string, + oboInOwl:id "GO:0061201"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0061200, + obo:GO_0060205 + + +Class: obo:GO_0005626 + + Annotations: + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "That fraction of cells, prepared by disruptive biochemical methods, that is not soluble in water."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + oboInOwl:hasRelatedSynonym "particle-bound"^^xsd:string, + oboInOwl:id "GO:0005626"^^xsd:string, + rdfs:label "insoluble fraction"^^xsd:string + + SubClassOf: + obo:GO_0000267 + + +Class: obo:GO_0061202 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + oboInOwl:hasExactSynonym "clathrin sculpted GABA transport vesicle membrane"^^xsd:string, + oboInOwl:id "GO:0061202"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a clathrin sculpted gamma-aminobutyric acid transport vesicle."^^xsd:string, + rdfs:label "clathrin sculpted gamma-aminobutyric acid transport vesicle membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0061200, + obo:GO_0030665 + + +Class: obo:GO_0005625 + + Annotations: + oboInOwl:hasBroadSynonym "soluble"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string + obo:IAO_0000115 "That fraction of cells, prepared by disruptive biochemical methods, that is soluble in water."^^xsd:string, + rdfs:label "soluble fraction"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + oboInOwl:id "GO:0005625"^^xsd:string + + SubClassOf: + obo:GO_0000267 + + +Class: obo:GO_0005622 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "internal to cell"^^xsd:string, + oboInOwl:id "GO:0005622"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "nucleocytoplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Intracellular"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "protoplast"^^xsd:string, + oboInOwl:hasExactSynonym "protoplasm"^^xsd:string, + rdfs:label "intracellular"^^xsd:string, + oboInOwl:inSubset + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0005621 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:rn"^^xsd:string, + oboInOwl:hasDbXref "PMID:14600225"^^xsd:string, + oboInOwl:hasDbXref "PMID:2005820"^^xsd:string + obo:IAO_0000115 "Crater-like ring of chitinous scar tissue located on the surface of the mother cell. It is formed after the newly emerged daughter cell separates thereby marking the site of cytokinesis and septation. The number of bud scars that accumulate on the surface of a cell is a useful determinant of replicative age."^^xsd:string, + oboInOwl:id "GO:0005621"^^xsd:string, + rdfs:label "cellular bud scar"^^xsd:string + + SubClassOf: + obo:GO_0044426, + obo:BFO_0000050 some obo:GO_0009277 + + +Class: obo:GO_0044326 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Part of the dendritic spine that connects the dendritic shaft to the head of the dendritic spine."^^xsd:string, + rdfs:label "dendritic spine neck"^^xsd:string, + oboInOwl:id "GO:0044326"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0043197 + + +Class: obo:GO_0060091 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "kinocilium"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Kinocilium"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "PMID:15882574"^^xsd:string + obo:IAO_0000115 "A nonmotile primary cilium that is found at the apical surface of auditory receptor cells. The kinocilium is surrounded by actin-based stereocilia."^^xsd:string, + oboInOwl:id "GO:0060091"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0032421, + obo:GO_0031513, + obo:GO_0044422 + + +Class: obo:GO_0044327 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044327"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:nln"^^xsd:string + obo:IAO_0000115 "Distal part of the dendritic spine, that carries the post-synaptic density."^^xsd:string, + rdfs:label "dendritic spine head"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:BFO_0000050 some obo:GO_0043197 + + +Class: obo:GO_0036038 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:21725307"^^xsd:string + obo:IAO_0000115 "A protein complex that is located at the ciliary transition zone and consists of tectonic 1 (Tctn1) in complex with other proteins. Acts to control ciliary assembly and trafficking. In mouse, other members of the complex include Mks1, Tmem216, Tmem67, Cep290, B9d1, Tctn2 and Cc2d2a."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0036038"^^xsd:string, + rdfs:label "tectonic complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0035869, + obo:GO_0043234 + + +Class: obo:GO_0010287 + + Annotations: + oboInOwl:hasExactSynonym "PG"^^xsd:string, + oboInOwl:hasExactSynonym "plastoglobuli"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plastoglobule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tair_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:16461379"^^xsd:string + obo:IAO_0000115 "A lipoprotein particle present in chloroplasts. They are rich in non-polar lipids (triglycerides, esters) as well as in prenylquinones, plastoquinone and tocopherols. Plastoglobules are often associated with thylakoid membranes, suggesting an exchange of lipids with thylakoids."^^xsd:string, + oboInOwl:id "GO:0010287"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0010502"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009570, + obo:GO_0044434 + + +Class: obo:GO_0036030 + + Annotations: + oboInOwl:id "GO:0036030"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "serpin A5-plasma kallikrein complex"^^xsd:string, + rdfs:label "protein C inhibitor-plasma kallikrein complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ans"^^xsd:string, + oboInOwl:hasDbXref "PMID:2844223"^^xsd:string, + oboInOwl:hasDbXref "PMID:8536714"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that contains protein C inhibitor (SERPINA5) and plasma kallikrein (KLK1B); formation of the complex inhibits the serine protease activity of plasma kallikrein."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "PCI-plasma kallikrein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "SERPINA5-plasma kallikrein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000014685"^^xsd:string + oboInOwl:hasExactSynonym "plasma serine protease inhibitor-plasma kallikrein complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PR:000009420"^^xsd:string + oboInOwl:hasExactSynonym "protein C inhibitor-KLKB1 complex"^^xsd:string + + SubClassOf: + obo:GO_0097180 + + +Class: obo:GO_0030990 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030990"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:14570576"^^xsd:string + obo:IAO_0000115 "A nonmembrane-bound oligomeric protein complex that participates in bidirectional transport of molecules (cargo) along axonemal microtubules."^^xsd:string, + oboInOwl:inSubset , + rdfs:label "intraflagellar transport particle"^^xsd:string + + SubClassOf: + obo:GO_0044447, + obo:GO_0043234 + + +Class: obo:GO_0030991 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:14570576"^^xsd:string + obo:IAO_0000115 "The smaller subcomplex of the intraflagellar transport particle; characterized complexes have molecular weights of 710-760 kDa."^^xsd:string, + rdfs:label "intraflagellar transport particle A"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030991"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030990, + obo:GO_0044447, + obo:GO_0043234 + + +Class: obo:GO_0010282 + + Annotations: + oboInOwl:id "GO:0010282"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "senescence-associated vacuole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "senescence associated vacuole"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15743448"^^xsd:string + obo:IAO_0000115 "A lytic vacuole that is maintained at acidic pH and has different tonoplast composition compared to the central vacuole. Found during leaf senescence and develops in the peripheral cytoplasm of cells that contain chloroplast."^^xsd:string + + SubClassOf: + obo:GO_0000325, + obo:GO_0000323 + + +Class: obo:GO_0030992 + + Annotations: + rdfs:label "intraflagellar transport particle B"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:14570576"^^xsd:string + obo:IAO_0000115 "The larger subcomplex of the intraflagellar transport particle; characterized complexes have molecular weights around 550 kDa."^^xsd:string, + oboInOwl:id "GO:0030992"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030990, + obo:GO_0044447, + obo:GO_0043234 + + +Class: obo:GO_0016342 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "catenin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198599323"^^xsd:string + obo:IAO_0000115 "Complex of peripheral cytoplasmic proteins (alpha-, beta- and gamma-catenin) that interact with the cytoplasmic region of uvomorulin/E-cadherin to connect it to the actin cytoskeleton."^^xsd:string, + oboInOwl:id "GO:0016342"^^xsd:string + + SubClassOf: + obo:GO_0019897, + obo:GO_0043234 + + +Class: obo:GO_0034719 + + Annotations: + oboInOwl:hasBroadSynonym "SMN-containing protein complex"^^xsd:string, + rdfs:comment "Note that this complex is sometimes referred to as the 'SMN complex', but it should not be confused with GO:0032797."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11522829"^^xsd:string, + oboInOwl:hasDbXref "PMID:17401408"^^xsd:string + obo:IAO_0000115 "A protein complex formed by the association of several methylated Sm proteins with the SMN complex; the latter contains the survival motor neuron (SMN) protein and at least eight additional integral components, including the Gemin2-8 and unrip proteins; additional proteins, including galectin-1 and galectin-3, are also found in the SMN-SM complex. The SMN-Sm complex is involved in spliceosomal snRNP assembly in the cytoplasm."^^xsd:string, + rdfs:label "SMN-Sm protein complex"^^xsd:string, + oboInOwl:id "GO:0034719"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0030988 + + Annotations: + rdfs:label "high molecular weight kininogen receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11290596"^^xsd:string + obo:IAO_0000115 "A protein complex that acts as a receptor for high molecular weight kininogens. In humans, this receptor includes the CK1 and uPAR proteins."^^xsd:string, + oboInOwl:id "GO:0030988"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0034718 + + Annotations: + oboInOwl:id "GO:0034718"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17640873"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the survival motor neuron (SMN) protein and Gemin2; may form the stable core of the larger SMN complex."^^xsd:string, + rdfs:label "SMN-Gemin2 complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005655 + + Annotations: + oboInOwl:hasExactSynonym "nucleolar RNase P complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nucleolar ribonuclease P complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:12045094"^^xsd:string + obo:IAO_0000115 "A ribonuclease P complex located in the nucleolus of a eukaryotic cell, where it catalyzes the 5' endonucleolytic cleavage of precursor tRNAs to yield mature tRNAs. Eukaryotic nucleolar ribonuclease P complexes generally contain a single RNA molecule that is necessary but not sufficient for catalysis, and several protein molecules."^^xsd:string, + oboInOwl:id "GO:0005655"^^xsd:string + + EquivalentTo: + obo:GO_0030677 + and (obo:BFO_0000050 some obo:GO_0005730) + + SubClassOf: + obo:GO_0044452, + obo:GO_0030681 + + +Class: obo:GO_0034717 + + Annotations: + rdfs:label "Gemin6-Gemin7-unrip complex"^^xsd:string, + oboInOwl:id "GO:0034717"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17640873"^^xsd:string + obo:IAO_0000115 "A protein complex that contains Gemin6, Gemin7, and unrip (STRAP), and can bind to snRNAs; may play a role in snRNP assembly."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005654 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao661522542"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ma"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string + obo:IAO_0000115 "That part of the nuclear content other than the chromosomes or the nucleolus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Nucleoplasm"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "nucleoplasm"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0005654"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031981 + + +Class: obo:GO_0034716 + + Annotations: + oboInOwl:id "GO:0034716"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:17640873"^^xsd:string + obo:IAO_0000115 "A protein complex that contains Gemin3 (DDX20), Gemin4, and Gemin5, and can bind to snRNAs; may be an intermediate in SMN complex assembly."^^xsd:string, + rdfs:label "Gemin3-Gemin4-Gemin5 complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0034715 + + Annotations: + oboInOwl:id "GO:0034715"^^xsd:string, + rdfs:label "pICln-Sm protein complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11713266"^^xsd:string + obo:IAO_0000115 "A protein complex that contains pICln (CLNS1A) and several Sm proteins, including SmD1, SmD2, SmE, SmF, and SmG."^^xsd:string, + oboInOwl:hasExactSynonym "6S pICln complex"^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0005652 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Nuclear_lamina"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1455996588"^^xsd:string, + rdfs:label "nuclear lamina"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "The fibrous, electron-dense layer lying on the nucleoplasmic side of the inner membrane of a cell nucleus, composed of lamin filaments. The polypeptides of the lamina are thought to be concerned in the dissolution of the nuclear envelope and its re-formation during mitosis. The lamina is composed of lamin A and lamin C filaments cross-linked into an orthogonal lattice, which is attached via lamin B to the inner nuclear membrane through interactions with a lamin B receptor, an IFAP, in the membrane."^^xsd:string, + oboInOwl:id "GO:0005652"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0034399, + obo:GO_0044428 + + +Class: obo:GO_0005658 + + Annotations: + oboInOwl:hasExactSynonym "DNA polymerase alpha:primase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:11395402"^^xsd:string + obo:IAO_0000115 "A complex of four polypeptides, comprising large and small DNA polymerase alpha subunits and two primase subunits, which catalyzes the synthesis of an RNA primer on the lagging strand of replicating DNA; the smaller of the two primase subunits alone can catalyze oligoribonucleotide synthesis."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "alpha DNA polymerase:primase complex"^^xsd:string, + oboInOwl:id "GO:0005658"^^xsd:string, + oboInOwl:hasRelatedSynonym "pol-prim"^^xsd:string, + oboInOwl:hasExactSynonym "heterotetrameric polymerase alpha holoenzyme"^^xsd:string, + oboInOwl:hasBroadSynonym "primosome"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0043601, + obo:GO_0043234 + + +Class: obo:GO_0005657 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The Y-shaped region of a replicating DNA molecule, resulting from the separation of the DNA strands and in which the synthesis of new strands takes place. Also includes associated protein complexes."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "replication fork"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Replication_fork"^^xsd:string, + oboInOwl:hasRelatedSynonym "replication focus"^^xsd:string, + oboInOwl:id "GO:0005657"^^xsd:string + + SubClassOf: + obo:GO_0044427 + + +Class: obo:GO_0005656 + + Annotations: + rdfs:label "pre-replicative complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15222894"^^xsd:string + obo:IAO_0000115 "A protein-DNA complex assembled at eukaryotic DNA replication origins during late mitosis and G1, allowing the origin to become competent, or 'licensed', for replication. The complex normally includes the origin recognition complex (ORC), Cdc6, Cdt1 and the MiniChromosome Maintenance (Mcm2-7) proteins."^^xsd:string, + oboInOwl:id "GO:0005656"^^xsd:string, + oboInOwl:hasExactSynonym "pre-RC"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:BFO_0000051 some obo:GO_0000808, + obo:GO_0032993, + obo:BFO_0000051 some obo:GO_0042555 + + +Class: obo:GO_0005638 + + Annotations: + oboInOwl:id "GO:0005638"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "Any of a group of intermediate-filament proteins that form the fibrous matrix on the inner surface of the nuclear envelope. They are classified as lamins A, B and C."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "lamin filament"^^xsd:string, + oboInOwl:hasExactSynonym "type V intermediate filament"^^xsd:string + + EquivalentTo: + obo:GO_0005882 + and (obo:BFO_0000050 some obo:GO_0005652) + + SubClassOf: + obo:GO_0005882, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0005652 + + +Class: obo:GO_0005639 + + Annotations: + oboInOwl:id "GO:0005639"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the nuclear inner membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + rdfs:label "integral to nuclear inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0031229, + obo:GO_0031301 + + +Class: obo:GO_0055029 + + Annotations: + oboInOwl:id "GO:0055029"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear DNA-directed RNA polymerase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A protein complex, located in the nucleus, that possesses DNA-directed RNA polymerase activity."^^xsd:string + + EquivalentTo: + obo:GO_0000428 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0000428, + obo:GO_0044428 + + +Class: obo:GO_0010278 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0010278"^^xsd:string, + rdfs:label "chloroplast outer membrane translocon"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11299338"^^xsd:string + obo:IAO_0000115 "The protein transport machinery of the chloroplast outer membrane that contains at least three components Toc159, Toc75 and Toc34, interacts with precursor proteins which are imported into the chloroplast in a GTP dependant manner."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009707, + obo:GO_0044425, + obo:GO_0044434, + obo:GO_0043234 + + +Class: obo:GO_0046868 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0716731363"^^xsd:string + obo:IAO_0000115 "An intracellular, often complex, membranous structure, sometimes with additional membranous lamellae inside, found in bacteria. They are associated with synthesis of DNA and secretion of proteins."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mesosome"^^xsd:string, + oboInOwl:id "GO:0046868"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Mesosome"^^xsd:string + + SubClassOf: + obo:GO_0044459 + + +Class: obo:GO_0055028 + + Annotations: + oboInOwl:id "GO:0055028"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cortical microtubule"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Arrays of microtubules underlying and connected to the plasma membrane in the cortical cytosol."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0030981, + obo:GO_0005881, + obo:GO_0044448 + + +Class: obo:GO_0030173 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030173"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string + obo:IAO_0000115 "Located such that some or all of the gene product itself penetrates at least one phospholipid bilayer of the Golgi complex membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string, + oboInOwl:hasRelatedSynonym "Golgi integral membrane protein"^^xsd:string, + rdfs:label "integral to Golgi membrane"^^xsd:string + + SubClassOf: + obo:GO_0031228, + obo:GO_0031301 + + +Class: obo:GO_0030175 + + Annotations: + oboInOwl:hasDbXref "NIF_Subcellular:sao-1046371754"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030175"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Thin, stiff protrusion extended by the leading edge of a motile cell such as a crawling fibroblast or amoeba, or an axonal growth cone; usually approximately 0.1 um wide, 5-10 um long, can be up to 50 um long in axon growth cones; contains a loose bundle of about 20 actin filaments oriented with their plus ends pointing outward."^^xsd:string, + rdfs:label "filopodium"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Filopodia"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0030028"^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0030176 + + Annotations: + rdfs:label "integral to endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:hasExactSynonym "ER integral membrane protein"^^xsd:string, + oboInOwl:hasExactSynonym "integral to ER membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0030176"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Penetrating at least one phospholipid bilayer of an endoplasmic reticulum membrane. May also refer to the state of being buried in the bilayer with no exposure outside the bilayer."^^xsd:string + + SubClassOf: + obo:GO_0031227, + obo:GO_0031301 + + +Class: obo:GO_0030993 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "axonemal heterotrimeric kinesin-II complex"^^xsd:string, + oboInOwl:id "GO:0030993"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:kmv"^^xsd:string, + oboInOwl:hasDbXref "PMID:14570576"^^xsd:string + obo:IAO_0000115 "A kinesin complex found in eukaryotic axonemes that contains two distinct plus end-directed kinesin motor proteins and at least one accessory subunit, and that functions in the anterograde transport of molecules (cargo) from the basal body to the distal tip of the axoneme."^^xsd:string + + SubClassOf: + obo:GO_0044447, + obo:GO_0043234 + + +Class: obo:GO_0034709 + + Annotations: + oboInOwl:hasExactSynonym "20S methylosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11713266"^^xsd:string, + oboInOwl:hasDbXref "PMID:11756452"^^xsd:string + obo:IAO_0000115 "A large (20 S) protein complex that possesses protein arginine methyltransferase activity and modifies specific arginines to dimethylarginines in the arginine- and glycine-rich domains of several spliceosomal Sm proteins, thereby targeting these proteins to the survival of motor neurons (SMN) complex for assembly into small nuclear ribonucleoprotein (snRNP) core particles. Proteins found in the methylosome include the methyltransferase JBP1 (PRMT5), pICln (CLNS1A), MEP50 (WDR77), and unmethylated forms of SM proteins that have RG domains."^^xsd:string, + oboInOwl:id "GO:0034709"^^xsd:string, + rdfs:label "methylosome"^^xsd:string, + oboInOwl:hasExactSynonym "20S methyltransferase complex"^^xsd:string + + SubClassOf: + obo:GO_0034708, + obo:GO_0044444 + + +Class: obo:GO_0034708 + + Annotations: + rdfs:label "methyltransferase complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034708"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses methyltransferase activity."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0005640 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the nuclear envelope; continuous with the endoplasmic reticulum of the cell and sometimes studded with ribosomes."^^xsd:string, + oboInOwl:id "GO:0005640"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "nuclear outer membrane"^^xsd:string, + oboInOwl:hasExactSynonym "perinuclear membrane"^^xsd:string, + oboInOwl:hasBroadSynonym "outer envelope"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao1617136075"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0031968, + obo:BFO_0000050 some obo:GO_0042175, + obo:GO_0031965 + + +Class: obo:GO_0030998 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jb"^^xsd:string + obo:IAO_0000115 "A proteinaceous scaffold associated with S. pombe chromosomes during meiotic prophase. Linear elements have a structure related to but not equivalent to the synaptonemal complex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "linear element"^^xsd:string, + oboInOwl:id "GO:0030998"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794 + + +Class: obo:GO_0070176 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:17075059"^^xsd:string + obo:IAO_0000115 "A transcriptional repressor complex that contains the lin-9, lin-35, lin-37, lin-52, lin-53, lin-5is involved in 4-, dpl-1 and efl-1 proteins, and is involved in cell fate specification."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "DRM complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17075059"^^xsd:string + oboInOwl:hasExactSynonym "DP/Rb/MuvB"^^xsd:string, + oboInOwl:id "GO:0070176"^^xsd:string + + SubClassOf: + obo:GO_0017053 + + +Class: obo:GO_0034705 + + Annotations: + rdfs:label "potassium channel complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034705"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ion channel complex through which potassium ions pass."^^xsd:string + + SubClassOf: + obo:GO_0034703 + + +Class: obo:GO_0005642 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12631728"^^xsd:string + obo:IAO_0000115 "Stacks of endoplasmic reticulum (ER) membranes containing a high density of nuclear pores, thought to form from excess nuclear membrane components, that have been described in a number of different cells. Annulate lamellar membranes are continuous with and embedded within the ER."^^xsd:string, + oboInOwl:id "GO:0005642"^^xsd:string, + rdfs:label "annulate lamellae"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0042175 + + +Class: obo:GO_0055035 + + Annotations: + rdfs:label "plastid thylakoid membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string + obo:IAO_0000115 "The lipid bilayer membrane of any thylakoid within a plastid."^^xsd:string, + oboInOwl:id "GO:0055035"^^xsd:string + + SubClassOf: + obo:GO_0044435, + obo:GO_0042651, + obo:BFO_0000050 some obo:GO_0031976 + + +Class: obo:GO_0055036 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:213106"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a virion."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "virion membrane"^^xsd:string, + oboInOwl:id "GO:0055036"^^xsd:string + + SubClassOf: + obo:GO_0044423 + + +Class: obo:GO_0034704 + + Annotations: + rdfs:label "calcium channel complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ion channel complex through which calcium ions pass."^^xsd:string, + oboInOwl:id "GO:0034704"^^xsd:string + + SubClassOf: + obo:GO_0034703 + + +Class: obo:GO_0005641 + + Annotations: + oboInOwl:hasRelatedSynonym "nuclear membrane lumen"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "perinuclear space"^^xsd:string, + rdfs:comment "Note that this term should not be confused with the cellular component term 'perinuclear region ; GO:0048471'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ai"^^xsd:string + obo:IAO_0000115 "The region between the two lipid bilayers of the nuclear envelope; 20-40 nm wide."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0005653"^^xsd:string, + oboInOwl:id "GO:0005641"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear intermembrane space"^^xsd:string, + rdfs:label "nuclear envelope lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005635, + obo:GO_0044428, + obo:GO_0031970 + + +Class: obo:GO_0055037 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "PMID:1237064"^^xsd:string + oboInOwl:hasRelatedSynonym "ERC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "PMID:12370264"^^xsd:string + oboInOwl:hasRelatedSynonym "endosome recycling compartment"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:10930469"^^xsd:string, + oboInOwl:hasDbXref "PMID:15601896"^^xsd:string, + oboInOwl:hasDbXref "PMID:16246101"^^xsd:string + obo:IAO_0000115 "Organelle consisting of networks of 60nm tubules organized around the microtubule organizing centre in some cell types. They transport receptors from late endosomes back to the plasma membrane for recycling and are also involved in membrane trafficking."^^xsd:string, + oboInOwl:id "GO:0055037"^^xsd:string, + rdfs:label "recycling endosome"^^xsd:string + + SubClassOf: + obo:GO_0005768 + + +Class: obo:GO_0034707 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034707"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ion channel complex through which chloride ions pass."^^xsd:string, + rdfs:label "chloride channel complex"^^xsd:string + + SubClassOf: + obo:GO_0034702 + + +Class: obo:GO_0055038 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jid"^^xsd:string, + oboInOwl:hasDbXref "GOC:rph"^^xsd:string, + oboInOwl:hasDbXref "PMID:10930469"^^xsd:string, + oboInOwl:hasDbXref "PMID:15601896"^^xsd:string, + oboInOwl:hasDbXref "PMID:16246101"^^xsd:string + obo:IAO_0000115 "The lipid bilayer surrounding a recycling endosome."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "recycling endosome membrane"^^xsd:string, + oboInOwl:id "GO:0055038"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0055037, + obo:GO_0010008 + + +Class: obo:GO_0005643 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Nuclear_pore"^^xsd:string, + oboInOwl:hasDbXref "NIF_Subcellular:sao220861693"^^xsd:string, + rdfs:label "nuclear pore"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasNarrowSynonym "nuclear pore membrane protein"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasAlternativeId "GO:0005644"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198547684"^^xsd:string + obo:IAO_0000115 "Any of the numerous similar discrete openings in the nuclear envelope of a eukaryotic cell, where the inner and outer nuclear membranes are joined."^^xsd:string, + oboInOwl:id "GO:0005643"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:al"^^xsd:string, + oboInOwl:hasDbXref "PMID:7603572"^^xsd:string + oboInOwl:hasExactSynonym "nucleopore"^^xsd:string, + oboInOwl:hasExactSynonym "NPC"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear pore complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005635, + obo:GO_0044428, + obo:GO_0046930 + + +Class: obo:GO_0034706 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ion channel complex through which sodium ions pass."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0034706"^^xsd:string, + rdfs:label "sodium channel complex"^^xsd:string + + SubClassOf: + obo:GO_0034703 + + +Class: obo:GO_0055031 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-tubulin large complex, eMTOC"^^xsd:string, + rdfs:label "gamma-tubulin large complex, equatorial microtubule organizing center"^^xsd:string, + oboInOwl:id "GO:0055031"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-tubulin large complex, equatorial microtubule organizing centre"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex of gamma tubulin and associated proteins thought to be formed by multimerization of gamma-tubulin small complexes located at equatorial microtubule organizing centers."^^xsd:string + + EquivalentTo: + obo:GO_0000931 + and (obo:BFO_0000050 some obo:GO_0000923) + + SubClassOf: + obo:GO_0032155, + obo:GO_0000931, + obo:BFO_0000050 some obo:GO_0000923 + + +Class: obo:GO_0055032 + + Annotations: + rdfs:label "gamma-tubulin large complex, spindle pole body"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex of gamma tubulin and associated proteins thought to be formed by multimerization of gamma-tubulin small complexes located in the spindle pole body."^^xsd:string, + oboInOwl:id "GO:0055032"^^xsd:string + + EquivalentTo: + obo:GO_0000931 + and (obo:BFO_0000050 some obo:GO_0005816) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005816, + obo:GO_0000931 + + +Class: obo:GO_0055033 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "gamma-tubulin large complex, interphase microtubule organizing center"^^xsd:string, + oboInOwl:id "GO:0055033"^^xsd:string, + oboInOwl:hasExactSynonym "gamma-tubulin large complex, iMTOC"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A complex of gamma tubulin and associated proteins thought to be formed by multimerization of gamma-tubulin small complexes located at interphase microtubule organizing centers."^^xsd:string, + oboInOwl:hasExactSynonym "gamma-tubulin large complex, interphase microtubule organizing centre"^^xsd:string + + EquivalentTo: + obo:GO_0000931 + and (obo:BFO_0000050 some obo:GO_0031021) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031021, + obo:GO_0000931 + + +Class: obo:GO_0034703 + + Annotations: + oboInOwl:id "GO:0034703"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An ion channel complex through which cations pass."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cation channel complex"^^xsd:string + + SubClassOf: + obo:GO_0034702 + + +Class: obo:GO_0034702 + + Annotations: + oboInOwl:id "GO:0034702"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ion channel complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:071673706X"^^xsd:string + obo:IAO_0000115 "A protein complex that spans a membrane and forms a water-filled channel across the phospholipid bilayer allowing selective ion transport down its electrochemical gradient."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016021, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0055087 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0055087"^^xsd:string, + rdfs:label "Ski complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Ski_complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mcc"^^xsd:string, + oboInOwl:hasDbXref "PMID:10744028"^^xsd:string, + oboInOwl:hasDbXref "PMID:15703439"^^xsd:string, + oboInOwl:hasDbXref "PMID:16043509"^^xsd:string, + oboInOwl:hasDbXref "PMID:18042677"^^xsd:string + obo:IAO_0000115 "A protein complex that regulates RNA degradation by the exosome complex. In Saccharomyces the complex has a heterotetrameric stoichiometry consisting of one copy each of Ski2p and Ski3 and two copies of Ski8p."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0043265 + + Annotations: + oboInOwl:id "GO:0043265"^^xsd:string, + rdfs:label "ectoplasm"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:12211103"^^xsd:string + obo:IAO_0000115 "Granule free cytoplasm, lying immediately below the plasma membrane."^^xsd:string + + SubClassOf: + obo:GO_0044444 + + +Class: obo:GO_0043261 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043261"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha2, beta1 and gamma3 polypeptide chains."^^xsd:string, + rdfs:label "laminin-12 complex"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0043263 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:11601609"^^xsd:string + obo:IAO_0000115 "An extracellular multi-enzyme complex containing up to 11 different enzymes aligned on a non-catalytic scaffolding glycoprotein. Functions to hydrolyze cellulose."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Cellulosome"^^xsd:string, + oboInOwl:id "GO:0043263"^^xsd:string, + rdfs:label "cellulosome"^^xsd:string + + SubClassOf: + obo:GO_0043264 + + +Class: obo:GO_0043264 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "extracellular non-membrane-enclosed organelle"^^xsd:string, + oboInOwl:id "GO:0043264"^^xsd:string, + rdfs:label "extracellular non-membrane-bounded organelle"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane and occurring outside the cell."^^xsd:string + + SubClassOf: + obo:GO_0043228, + obo:GO_0043230 + + +Class: obo:GO_0031205 + + Annotations: + rdfs:label "endoplasmic reticulum Sec complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "PMID:12158317"^^xsd:string, + oboInOwl:hasDbXref "PMID:14617809"^^xsd:string + obo:IAO_0000115 "An endoplasmic reticulum membrane-associated complex involved in the translocation of proteins that are targeted to the ER. In yeast, this complex consists of two subcomplexes, namely, the Sec61 complex and the Sec62/Sec63 complex."^^xsd:string, + oboInOwl:id "GO:0031205"^^xsd:string + + SubClassOf: + obo:BFO_0000051 some obo:GO_0005784, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0030867, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0043260 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "laminin-11 complex"^^xsd:string, + oboInOwl:id "GO:0043260"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha5, beta2 and gamma1 polypeptide chains."^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0038037 + + Annotations: + oboInOwl:id "GO:0038037"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "GPCR dimer"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "G-protein coupled receptor dimer"^^xsd:string, + rdfs:label "G-protein coupled receptor dimeric complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:al"^^xsd:string, + oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10713101"^^xsd:string + obo:IAO_0000115 "A protein complex that contains two G-protein coupled receptors."^^xsd:string + + SubClassOf: + obo:GO_0043235 + + +Class: obo:GO_0031209 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "WAVE complex"^^xsd:string, + rdfs:label "SCAR complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pg"^^xsd:string, + oboInOwl:hasDbXref "PMID:12181570"^^xsd:string + obo:IAO_0000115 "A heterotetrameric complex that includes orthologues of human PIR121, Nap125 and HSPC300 and regulates actin polymerization and/or depolymerization through small GTPase mediated signal transduction."^^xsd:string, + oboInOwl:id "GO:0031209"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0038039 + + Annotations: + oboInOwl:id "GO:0038039"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "G-protein coupled receptor heterodimer"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:20150590"^^xsd:string + oboInOwl:hasExactSynonym "GPCR heterodimer"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:al"^^xsd:string, + oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:16109836"^^xsd:string, + oboInOwl:hasDbXref "PMID:20150590"^^xsd:string + obo:IAO_0000115 "A protein complex that contains two G-protein coupled receptors (GPCRs) of different subtypes. Formation of a GPCR heterodimer may alter the functional property of the GPCR."^^xsd:string, + rdfs:label "G-protein coupled receptor heterodimeric complex"^^xsd:string + + SubClassOf: + obo:GO_0038037 + + +Class: obo:GO_0031207 + + Annotations: + rdfs:label "Sec62/Sec63 complex"^^xsd:string, + oboInOwl:hasExactSynonym "Sec62/63 complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031207"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12518317"^^xsd:string, + oboInOwl:hasDbXref "PMID:14617809"^^xsd:string + obo:IAO_0000115 "A protein complex involved in the posttranslational targeting of proteins to the ER. In yeast, it is a tetrameric complex consisting of Sec62p, Sec63p, Sec71p and Sec72p."^^xsd:string, + oboInOwl:hasExactSynonym "ER protein translocation subcomplex "^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031205, + obo:GO_0044425, + obo:GO_0044432, + obo:GO_0043234 + + +Class: obo:GO_0038038 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "G-protein coupled receptor homodimer"^^xsd:string, + oboInOwl:id "GO:0038038"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:al"^^xsd:string, + oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10713101"^^xsd:string, + oboInOwl:hasDbXref "PMID:16670762"^^xsd:string + obo:IAO_0000115 "A protein complex that contains two G-protein coupled receptors (GPCRs) of the same subtype. Formation of a GPCR homodimer may be important for the transport of newly formed receptors to the cell surface, and the function of the receptor."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "GPCR homodimer"^^xsd:string, + rdfs:label "G-protein coupled receptor homodimeric complex"^^xsd:string + + SubClassOf: + obo:GO_0038037 + + +Class: obo:GO_0001726 + + Annotations: + oboInOwl:hasRelatedSynonym "membrane ruffle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0124325653"^^xsd:string + obo:IAO_0000115 "Projection at the leading edge of a crawling cell; the protrusions are supported by a microfilament meshwork."^^xsd:string, + rdfs:label "ruffle"^^xsd:string, + oboInOwl:id "GO:0001726"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0042995 + + +Class: obo:GO_0031211 + + Annotations: + oboInOwl:id "GO:0031211"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string + obo:IAO_0000115 "A dimeric complex of the endoplasmic reticulum that catalyzes S-palmitoylation, the addition of palmitate (C16:0) or other long-chain fatty acids to proteins at a cysteine residue."^^xsd:string, + rdfs:label "endoplasmic reticulum palmitoyltransferase complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0044425, + obo:GO_0002178, + obo:GO_0044432 + + +Class: obo:GO_0001725 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "actin cable"^^xsd:string, + oboInOwl:id "GO:0001725"^^xsd:string, + oboInOwl:hasExactSynonym "stress fibre"^^xsd:string, + rdfs:label "stress fiber"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16651381"^^xsd:string + obo:IAO_0000115 "A contractile actin filament bundle that consists of short actin filaments with alternating polarity, cross-linked by alpha-actinin and possibly other actin bundling proteins, and with myosin present in a periodic distribution along the fiber."^^xsd:string + + SubClassOf: + obo:GO_0042641, + obo:GO_0032432 + + +Class: obo:GO_0035003 + + Annotations: + oboInOwl:hasBroadSynonym "SAC"^^xsd:string, + oboInOwl:id "GO:0035003"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11752566"^^xsd:string, + oboInOwl:hasDbXref "PMID:12500938"^^xsd:string + obo:IAO_0000115 "The most apical region of the lateral plasma membrane of an invertebrate epithelial cell. The subapical complex lies above the zonula adherens and the septate junction, and is comparable to the position of the tight junction of vertebrate cells."^^xsd:string, + rdfs:label "subapical complex"^^xsd:string + + SubClassOf: + obo:GO_0044459, + obo:GO_0032991, + obo:BFO_0000050 some obo:GO_0043296 + + +Class: obo:GO_0060076 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060076"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string + obo:IAO_0000115 "A synapse in which an action potential in the presynaptic cell increases the probability of an action potential occurring in the postsynaptic cell."^^xsd:string, + rdfs:label "excitatory synapse"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Excitatory_synapse"^^xsd:string + + SubClassOf: + obo:GO_0045202 + + +Class: obo:GO_0035000 + + Annotations: + oboInOwl:id "GO:0035000"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15835887"^^xsd:string + obo:IAO_0000115 "An oligosaccharyltransferase (OST) complex that contains the seven polypeptides found in OST complex I, plus heterotrimeric Sec61alpha-beta-gamma and the tetrameric TRAP complex. Of the three forms of mammalian OST complexes identified, the OSTIII complex has the strongest affinity for ribosomes."^^xsd:string, + oboInOwl:hasExactSynonym "OSTCIII"^^xsd:string, + rdfs:label "oligosaccharyltransferase III complex"^^xsd:string + + SubClassOf: + obo:GO_0008250 + + +Class: obo:GO_0043259 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha5, beta1 and gamma1 polypeptide chains."^^xsd:string, + oboInOwl:id "GO:0043259"^^xsd:string, + rdfs:label "laminin-10 complex"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0043258 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "laminin-9 complex"^^xsd:string, + oboInOwl:id "GO:0043258"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha4, beta2 and gamma1 polypeptide chains."^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0030532 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "small nuclear ribonucleoprotein"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:id "GO:0030532"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:SnRNP"^^xsd:string, + rdfs:label "small nuclear ribonucleoprotein complex"^^xsd:string, + oboInOwl:hasExactSynonym "snRNP"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0879695897"^^xsd:string + obo:IAO_0000115 "A complex composed of RNA of the small nuclear RNA (snRNA) class and protein, found in the nucleus of a eukaryotic cell. These are typically named after the snRNA(s) they contain, e.g. U1 snRNP or U4/U6 snRNP. Many, but not all, of these complexes are involved in splicing of nuclear mRNAs."^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044428 + + +Class: obo:GO_0030531 + + Annotations: + oboInOwl:hasExactSynonym "scRNP"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "small cytoplasmic ribonucleoprotein complex"^^xsd:string, + oboInOwl:hasExactSynonym "small cytoplasmic ribonucleoprotein"^^xsd:string, + oboInOwl:id "GO:0030531"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A complex composed of RNA of the small cytoplasmic RNA (scRNA) class and protein, found in the cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044444 + + +Class: obo:GO_0042025 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0042025"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:pamgo_curators"^^xsd:string + obo:IAO_0000115 "A membrane-bounded organelle as it is found in the host cell in which chromosomes are housed and replicated. The host is defined as the larger of the organisms involved in a symbiotic interaction."^^xsd:string, + rdfs:label "host cell nucleus"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0033649"^^xsd:string + + SubClassOf: + obo:GO_0033648 + + +Class: obo:GO_0038045 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_6888.1"^^xsd:string + oboInOwl:hasExactSynonym "large latent complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "Reactome:REACT_6888.1"^^xsd:string + oboInOwl:hasExactSynonym "LLC"^^xsd:string, + rdfs:label "large latent transforming growth factor-beta complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:2350783"^^xsd:string, + oboInOwl:hasDbXref "PMID:8680476"^^xsd:string, + oboInOwl:hasDbXref "PMID:9805445"^^xsd:string, + oboInOwl:hasDbXref "Reactome:REACT_6888.1"^^xsd:string + obo:IAO_0000115 "A protein complex containing latency-associated proteins (LAPs), mature disulphide-linked dimeric TGF-beta, and latent TGF-beta binding proteins (LTBPs). TGF-beta is mostly secreted as part of the large latent complex, and must be subsequently released from the LLC in order to bind to cell surface receptors."^^xsd:string, + oboInOwl:id "GO:0038045"^^xsd:string + + SubClassOf: + obo:GO_0043234 + + +Class: obo:GO_0042022 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ebc"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:10971505"^^xsd:string + obo:IAO_0000115 "A protein complex that binds interleukin-12; comprises a beta1 and a beta2 subunit."^^xsd:string, + oboInOwl:id "GO:0042022"^^xsd:string, + rdfs:label "interleukin-12 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IL-12 receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "CORUM:2026"^^xsd:string + oboInOwl:hasNarrowSynonym "IL12RB1-IL12RB2 complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0030530 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Particulate complex of heterogeneous nuclear RNA (hnRNA; a heterogeneous mixture of RNA molecules of high Mr with a rapid turnover rate that occurs in cell nuclei during protein synthesis; it is the form of RNA synthesized in eukaryotes by RNA polymerase II, that which is translated into protein) with protein, which is cell-specific and heterogeneous. The protein component may play a role in the processing of the hnRNA to mRNA."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Heterogeneous_ribonucleoprotein_particle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "heterogeneous nuclear ribonucleoprotein"^^xsd:string, + oboInOwl:id "GO:0030530"^^xsd:string, + oboInOwl:hasExactSynonym "hnRNP"^^xsd:string, + rdfs:label "heterogeneous nuclear ribonucleoprotein complex"^^xsd:string + + SubClassOf: + obo:GO_0030529, + obo:GO_0044428 + + +Class: obo:GO_0032299 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ribonuclease H2 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:14734815"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses ribonuclease H activity, in which the catalytic subunit is a member of the RNase H2 (or HII) class. For example, in Saccharomyces the complex contains Rnh201p, Rnh202p and Rnh203p."^^xsd:string, + oboInOwl:hasExactSynonym "RNase H2 complex"^^xsd:string, + oboInOwl:id "GO:0032299"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0060077 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0060077"^^xsd:string, + rdfs:label "inhibitory synapse"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string + obo:IAO_0000115 "A synapse in which an action potential in the presynaptic cell reduces the probability of an action potential occurring in the postsynaptic cell."^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Inhibitory_postsynaptic_potential"^^xsd:string + + SubClassOf: + obo:GO_0045202 + + +Class: obo:GO_0042406 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the endoplasmic reticulum membrane, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "extrinsic to ER membrane"^^xsd:string, + rdfs:label "extrinsic to endoplasmic reticulum membrane"^^xsd:string, + oboInOwl:id "GO:0042406"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0031312, + obo:GO_0044432 + + +Class: obo:GO_0042405 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "An intranuclear focus at which aggregated proteins have been sequestered."^^xsd:string, + rdfs:label "nuclear inclusion body"^^xsd:string, + oboInOwl:id "GO:0042405"^^xsd:string + + EquivalentTo: + obo:GO_0016234 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:GO_0016234 + + +Class: obo:GO_0008352 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Consider also annotating to the molecular function term 'microtubule-severing ATPase activity ; GO:0008568'."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10910766"^^xsd:string + obo:IAO_0000115 "A complex possessing an activity that couples ATP hydrolysis to the severing of microtubules; usually a heterodimer comprising a catalytic subunit (often 60kDa) and a regulatory subunit (often 80 kDa)."^^xsd:string, + oboInOwl:id "GO:0008352"^^xsd:string, + rdfs:label "katanin complex"^^xsd:string + + SubClassOf: + obo:GO_0044450, + obo:BFO_0000050 some obo:GO_0005813, + obo:GO_0005875 + + +Class: obo:GO_0019719 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + oboInOwl:id "GO:0019719"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Vesicular particles formed from disrupted endoplasmic reticulum and plasma membranes without any adhering ribosomes."^^xsd:string, + rdfs:label "smooth microsome"^^xsd:string + + SubClassOf: + obo:GO_0005792 + + +Class: obo:GO_0019718 + + Annotations: + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Vesicular particles formed from disrupted endoplasmic reticulum membranes and studded with ribosomes on the outside."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019718"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + rdfs:label "rough microsome"^^xsd:string + + SubClassOf: + obo:GO_0005792 + + +Class: obo:GO_0044202 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The outer, i.e. cytoplasm-facing, lipid bilayer of the host nuclear envelope; continuous with the endoplasmic reticulum of the host cell and sometimes studded with ribosomes."^^xsd:string, + rdfs:label "host cell nuclear outer membrane"^^xsd:string, + oboInOwl:id "GO:0044202"^^xsd:string + + SubClassOf: + obo:GO_0044200, + obo:GO_0044384 + + +Class: obo:GO_0031606 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The proteasome core subcomplex that constitutes the two outer rings of the cytosolic proteasome core complex."^^xsd:string, + rdfs:label "cytosolic proteasome core complex, alpha-subunit complex"^^xsd:string, + oboInOwl:id "GO:0031606"^^xsd:string + + SubClassOf: + obo:GO_0019773, + obo:BFO_0000050 some obo:GO_0031603, + obo:GO_0044445 + + +Class: obo:GO_0090397 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "A plant cell papilla that is part of a stigma papilla cell."^^xsd:string, + rdfs:comment "Part of stigma papilla cell (PO:0025168)."^^xsd:string, + oboInOwl:id "GO:0090397"^^xsd:string, + rdfs:label "stigma papilla"^^xsd:string + + SubClassOf: + obo:GO_0090395 + + +Class: obo:GO_0044203 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0044203"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The fibrous, electron-dense layer lying on the nucleoplasmic side of the inner membrane of a host cell nucleus, composed of lamin filaments."^^xsd:string, + rdfs:label "host cell nuclear lamina"^^xsd:string + + SubClassOf: + obo:GO_0044094, + obo:BFO_0000050 some obo:GO_0044201 + + +Class: obo:GO_0031607 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits forming the inner ring of the core complex of a proteasome located in the nucleus of a cell."^^xsd:string, + oboInOwl:id "GO:0031607"^^xsd:string, + rdfs:label "nuclear proteasome core complex, beta-subunit complex"^^xsd:string + + EquivalentTo: + obo:GO_0019774 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0019774, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031601 + + +Class: obo:GO_0044200 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "Either of the lipid bilayers that surround the host nucleus and form the nuclear envelope; excludes the intermembrane space."^^xsd:string, + rdfs:label "host cell nuclear membrane"^^xsd:string, + oboInOwl:id "GO:0044200"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0044199, + obo:GO_0033644 + + +Class: obo:GO_0031608 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ER proteasome core complex, beta-subunit complex"^^xsd:string, + oboInOwl:id "GO:0031608"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits forming the inner ring of the core complex of a proteasome located in the endoplasmic reticulum of a cell."^^xsd:string + + EquivalentTo: + obo:GO_0019774 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0019774, + obo:BFO_0000050 some obo:GO_0031602, + obo:GO_0044432 + + +Class: obo:GO_0044201 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The inner, i.e. lumen-facing, lipid bilayer of the host nuclear envelope."^^xsd:string, + oboInOwl:id "GO:0044201"^^xsd:string, + rdfs:label "host cell nuclear inner membrane"^^xsd:string + + SubClassOf: + obo:GO_0044200 + + +Class: obo:GO_0031609 + + Annotations: + rdfs:label "cytosolic proteasome core complex, beta-subunit complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031609"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The proteasome core subcomplex that constitutes the two inner rings of the cytosolic proteasome core complex."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031603, + obo:GO_0019774, + obo:GO_0044445 + + +Class: obo:GO_0030529 + + Annotations: + oboInOwl:inSubset , + oboInOwl:id "GO:0030529"^^xsd:string, + oboInOwl:hasExactSynonym "protein-RNA complex"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Ribonucleoprotein"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ribonucleoprotein complex"^^xsd:string, + oboInOwl:hasExactSynonym "RNA-protein complex"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasExactSynonym "ribonucleoprotein"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:krc"^^xsd:string + obo:IAO_0000115 "A macromolecular complex containing both protein and RNA molecules."^^xsd:string, + oboInOwl:hasExactSynonym "RNP"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0032991 + + +Class: obo:GO_0090396 + + Annotations: + rdfs:comment "Part of leaf papilla cell (PO:0025167)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "leaf papilla"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "A plant cell papilla that is part of a leaf papilla cell."^^xsd:string, + oboInOwl:id "GO:0090396"^^xsd:string + + SubClassOf: + obo:GO_0090395 + + +Class: obo:GO_0090395 + + Annotations: + rdfs:comment "Part of papilla cell (PO:0025166), which is a shoot epidermal cell (PO:0025165) in plants. Replaces the obsolete term papillae (PO:0002001)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plant cell papilla"^^xsd:string, + oboInOwl:id "GO:0090395"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "A cell projection that is a short, rounded projection from a plant epidermal cell."^^xsd:string + + SubClassOf: + obo:GO_0042995 + + +Class: obo:GO_0031201 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031201"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:10872468"^^xsd:string + obo:IAO_0000115 "A protein complex involved in membrane fusion; a stable ternary complex consisting of a four-helix bundle, usually formed from one R-SNARE and three Q-SNAREs with an ionic layer sandwiched between hydrophobic layers. One well-characterized example is the neuronal SNARE complex formed of synaptobrevin 2, syntaxin 1a, and SNAP-25."^^xsd:string, + rdfs:label "SNARE complex"^^xsd:string + + SubClassOf: + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0035012 + + Annotations: + oboInOwl:id "GO:0035012"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "The terminal region of a polytene chromosome."^^xsd:string, + rdfs:label "polytene chromosome, telomeric region"^^xsd:string + + EquivalentTo: + obo:GO_0000781 + and (obo:BFO_0000050 some obo:GO_0005700) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005700, + obo:GO_0000781 + + +Class: obo:GO_0031600 + + Annotations: + oboInOwl:id "GO:0031600"^^xsd:string, + rdfs:label "cytosolic proteasome regulatory particle"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "A multisubunit complex located in the cytosol of a cell, which caps one or both ends of the proteasome core complex. This complex recognizes, unfolds ubiquitinated proteins and translocates them to the proteasome core complex."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031597, + obo:GO_0005838, + obo:GO_0044445 + + +Class: obo:GO_0030526 + + Annotations: + oboInOwl:hasExactSynonym "granulocyte macrophage colony stimulating factor receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The heterodimeric receptor for granulocyte macrophage colony-stimulating factor."^^xsd:string, + oboInOwl:id "GO:0030526"^^xsd:string, + rdfs:label "granulocyte macrophage colony-stimulating factor receptor complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0031601 + + Annotations: + rdfs:label "nuclear proteasome core complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031601"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The core complex of a proteasome located in the nucleus of a cell."^^xsd:string + + EquivalentTo: + obo:GO_0005839 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031595, + obo:GO_0005839 + + +Class: obo:GO_0031602 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The core complex of a proteasome located in the endoplasmic reticulum of a cell."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031602"^^xsd:string, + rdfs:label "ER proteasome core complex"^^xsd:string + + EquivalentTo: + obo:GO_0005839 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0005839, + obo:BFO_0000050 some obo:GO_0031596, + obo:GO_0044432 + + +Class: obo:GO_0031603 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031603"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The core complex of a proteasome located in the cytosol of a cell."^^xsd:string, + rdfs:label "cytosolic proteasome core complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031597, + obo:GO_0005839, + obo:GO_0044445 + + +Class: obo:GO_0031604 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031604"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits forming the outer ring of the core complex of a proteasome located in the nucleus of a cell."^^xsd:string, + rdfs:label "nuclear proteasome core complex, alpha-subunit complex"^^xsd:string + + EquivalentTo: + obo:GO_0019773 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0019773, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031601 + + +Class: obo:GO_0031605 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031605"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits forming the outer ring of the core complex of a proteasome located in the endoplasmic reticulum of a cell."^^xsd:string, + rdfs:label "ER proteasome core complex, alpha-subunit complex"^^xsd:string + + EquivalentTo: + obo:GO_0019773 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0019773, + obo:BFO_0000050 some obo:GO_0031602, + obo:GO_0044432 + + +Class: obo:GO_0043240 + + Annotations: + oboInOwl:id "GO:0043240"^^xsd:string, + oboInOwl:hasExactSynonym "FA core complex"^^xsd:string, + oboInOwl:hasExactSynonym "FA complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "Fanconi anaemia complex"^^xsd:string, + oboInOwl:hasExactSynonym "FA nuclear complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:12093742"^^xsd:string + obo:IAO_0000115 "A protein complex composed of the Fanconi anaemia (FA) proteins including A, C, E, G and F (FANCA-F). Functions in the activation of the downstream protein FANCD2 by monoubiquitylation, and is essential for protection against chromosome breakage."^^xsd:string, + rdfs:label "Fanconi anaemia nuclear complex"^^xsd:string + + SubClassOf: + obo:GO_0044451, + obo:GO_0043234 + + +Class: obo:GO_0035805 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:16944418"^^xsd:string, + oboInOwl:hasDbXref "PMID:17163408"^^xsd:string + obo:IAO_0000115 "A specialized extracellular matrix that surrounds the ovum of animals. The egg coat provides structural support and can play an essential role in oogenesis, fertilization and early development."^^xsd:string, + rdfs:label "egg coat"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16944418"^^xsd:string, + oboInOwl:hasDbXref "PMID:17163408"^^xsd:string + oboInOwl:hasNarrowSynonym "zona pellucida"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16944418"^^xsd:string, + oboInOwl:hasDbXref "PMID:17163408"^^xsd:string + oboInOwl:hasNarrowSynonym "vitelline membrane"^^xsd:string, + oboInOwl:id "GO:0035805"^^xsd:string + + SubClassOf: + obo:GO_0030312 + + +Class: obo:GO_0070931 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070931"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The volume enclosed by the membrane of a Golgi-associated vesicle."^^xsd:string, + rdfs:label "Golgi-associated vesicle lumen"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005798, + obo:GO_0060205, + obo:GO_0044431 + + +Class: obo:GO_0070938 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "constriction ring"^^xsd:string, + oboInOwl:id "GO:0070938"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0123645859"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0792354923"^^xsd:string, + oboInOwl:hasDbXref "PMID:10791428"^^xsd:string, + oboInOwl:hasDbXref "PMID:17913889"^^xsd:string + obo:IAO_0000115 "A cytoskeletal structure composed of filamentous protein that forms beneath the membrane of many cells or organelles, in the plane of cell or organelle division. Ring contraction is associated with centripetal growth of the membrane that divides the cytoplasm of the two daughter cells or organelles."^^xsd:string, + rdfs:label "contractile ring"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "cytokinetic ring"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0070937 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "See also the molecular function term 'alkyl hydroperoxide reductase activity ; GO:0008785'."^^xsd:string, + oboInOwl:id "GO:0070937"^^xsd:string, + rdfs:label "CRD-mediated mRNA stability complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19029303"^^xsd:string + obo:IAO_0000115 "A protein complex that binds to, and promotes stabilization of, mRNA molecules containing the coding region instability determinant (CRD). In human, IGF2BP1 and at least four additional proteins: HNRNPU, SYNCRIP, YBX1, and DHX9."^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0043245 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043245"^^xsd:string, + rdfs:label "extraorganismal space"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string + obo:IAO_0000115 "The environmental space outside of an organism; this may be a host organism in the case of parasitic and symbiotic organisms."^^xsd:string + + SubClassOf: + obo:GO_0044421 + + +Class: obo:GO_0032283 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plastid acetate CoA-transferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An acetate CoA-transferase complex located in the stroma of a plastid."^^xsd:string, + oboInOwl:id "GO:0032283"^^xsd:string + + EquivalentTo: + obo:GO_0009329 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0009329, + obo:BFO_0000050 some obo:GO_0032282 + + +Class: obo:GO_0043246 + + Annotations: + rdfs:label "megasome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11206117"^^xsd:string, + oboInOwl:hasDbXref "PMID:1999020"^^xsd:string + obo:IAO_0000115 "Large, cysteine proteinase rich lysosomes, often found in the amastigote (an intracytoplasmic, nonflagellated form of the parasite) stage of Leishmania species belonging to the mexicana complex."^^xsd:string, + oboInOwl:id "GO:0043246"^^xsd:string + + SubClassOf: + obo:GO_0005764 + + +Class: obo:GO_0032284 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "plastid biotin carboxylase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A biotin carboxylase complex located in the stroma of a plastid."^^xsd:string, + oboInOwl:id "GO:0032284"^^xsd:string + + EquivalentTo: + obo:GO_0009343 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:GO_0009343, + obo:BFO_0000050 some obo:GO_0032282 + + +Class: obo:GO_0032281 + + Annotations: + oboInOwl:id "GO:0032281"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ef"^^xsd:string + obo:IAO_0000115 "An assembly of four or five subunits which form a structure with an extracellular N-terminus and a large loop that together form the ligand binding domain. The C-terminus is intracellular. The ionotropic glutamate receptor complex itself acts as a ligand gated ion channel; on binding glutamate, charged ions pass through a channel in the center of the receptor complex. The AMPA receptors mediate fast synaptic transmission in the CNS and are composed of subunits GluR1-4, products from separate genes. These subunits have an extracellular N-terminus and an intracellular C-terminus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasRelatedSynonym "AMPA receptor "^^xsd:string, + oboInOwl:hasExactSynonym "AMPA-selective glutamate receptor complex"^^xsd:string, + rdfs:label "alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid selective glutamate receptor complex"^^xsd:string + + SubClassOf: + obo:GO_0008328 + + +Class: obo:GO_0017086 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "BCADH"^^xsd:string, + oboInOwl:hasExactSynonym "branched-chain alpha-ketoacid dehydrogenase complex"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031212"^^xsd:string, + rdfs:label "3-methyl-2-oxobutanoate dehydrogenase (lipoamide) complex"^^xsd:string, + oboInOwl:id "GO:0017086"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:1.2.4.4"^^xsd:string + obo:IAO_0000115 "A protein complex that catalyzes the reaction 3-methyl-2-oxobutanoate + lipoamide = S-(2-methylpropanoyl)-dihydrolipoamide + carbon dioxide (CO2). This requires thiamine diphosphate; the enzyme also acts on (S)-3-methyl-2-oxopentanoate and 4-methyl-2-oxo-pentanoate."^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0043234 + + +Class: obo:GO_0032282 + + Annotations: + oboInOwl:hasExactSynonym "plastid ACCase complex"^^xsd:string, + oboInOwl:id "GO:0032282"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "An acetyl-CoA carboxylase complex located in the stroma of a plastid."^^xsd:string, + rdfs:label "plastid acetyl-CoA carboxylase complex"^^xsd:string + + EquivalentTo: + obo:GO_0009317 + and (obo:BFO_0000050 some obo:GO_0009536) + + SubClassOf: + obo:GO_0044435, + obo:BFO_0000050 some obo:GO_0009532, + obo:GO_0009317 + + +Class: obo:GO_0017087 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "BRENDA:3.4.24.64"^^xsd:string, + oboInOwl:hasDbXref "EC:3.4.24.64"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A protein complex that consists of a catalytic alpha subunit (alpha-MPP) and a regulatory beta subunit (beta-MPP), and catalyzes the release of N-terminal targeting peptides from precursor proteins imported into the mitochondrion."^^xsd:string, + rdfs:label "mitochondrial processing peptidase complex"^^xsd:string, + rdfs:comment "Note that monomeric mitochondrial processing peptidases have been observed."^^xsd:string, + oboInOwl:id "GO:0017087"^^xsd:string + + SubClassOf: + obo:GO_0044429, + obo:BFO_0000050 some obo:GO_0005759, + obo:GO_0043234 + + +Class: obo:GO_0032280 + + Annotations: + oboInOwl:id "GO:0032280"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string + obo:IAO_0000115 "A type of synapse occurring primarily on dendrite shafts and neuronal cell bodies. Symmetric synapses involve axons containing clusters of predominantly flattened or elongated vesicles and do not contain a prominent postsynaptic density."^^xsd:string, + rdfs:label "symmetric synapse"^^xsd:string + + SubClassOf: + obo:GO_0045202 + + +Class: obo:GO_0035808 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:12897161"^^xsd:string, + oboInOwl:hasDbXref "PMID:20364342"^^xsd:string, + oboInOwl:hasDbXref "PMID:21429938"^^xsd:string + obo:IAO_0000115 "A protein complex that initiates the formation of double-strand breaks (DSBs) required for meiotic recombination. Consists of a protein that catalyses formation of the double-strand breaks (Spo11 in S. cerevisiae and Rec12 in S. pombe), and a number of accessory proteins."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0035808"^^xsd:string, + rdfs:label "meiotic recombination initiation complex"^^xsd:string + + SubClassOf: + obo:GO_0044454, + obo:BFO_0000050 some obo:GO_0000794, + obo:GO_0043234 + + +Class: obo:GO_0019717 + + Annotations: + oboInOwl:hasDbXref "Wikipedia:Synaptosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to disrupted cells, and does not necessarily correspond to any specific structure(s) in an intact cell."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Any of the discrete particles (nerve-ending particles) formed from the clublike presynaptic nerve endings that resist disruption and are snapped or torn off their attachments when brain tissue is homogenized in media isosmotic to plasma."^^xsd:string, + rdfs:label "synaptosome"^^xsd:string, + oboInOwl:id "GO:0019717"^^xsd:string + + SubClassOf: + obo:GO_0005624 + + +Class: obo:GO_0070939 + + Annotations: + rdfs:comment "See also the molecular function term 'acetolactate synthase activity ; GO:0003984'."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070939"^^xsd:string, + rdfs:label "Dsl1p complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jh"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19151722"^^xsd:string + obo:IAO_0000115 "A multisubunit tethering complex, i.e. a protein complex involved in mediating the initial interaction between vesicles and the membranes with which they fuse, that is involved in trafficking from the Golgi apparatus to the ER. In Saccharomyces cerevisiae the Dsl1p complex contains Dsl1p, Tip20p, and Sec39p."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0060053 + + Annotations: + oboInOwl:id "GO:0060053"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:dph"^^xsd:string + obo:IAO_0000115 "Intermediate filament cytoskeletal structure that is made up of neurofilaments. Neurofilaments are specialized intermediate filaments found in neurons."^^xsd:string, + rdfs:label "neurofilament cytoskeleton"^^xsd:string + + SubClassOf: + obo:GO_0045111 + + +Class: obo:GO_0043253 + + Annotations: + oboInOwl:id "GO:0043253"^^xsd:string, + rdfs:label "chloroplast ribosome"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ecd"^^xsd:string + obo:IAO_0000115 "A ribosome contained within a chloroplast."^^xsd:string + + EquivalentTo: + obo:GO_0005840 + and (obo:BFO_0000050 some obo:GO_0009507) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0009570, + obo:GO_0009547, + obo:GO_0044434 + + +Class: obo:GO_0032279 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:dgh"^^xsd:string, + oboInOwl:hasDbXref "GOC:ef"^^xsd:string + obo:IAO_0000115 "A type of synapse occurring between an axon and a dendritic spine or dendritic shaft. Asymmetric synapses, the most abundant synapse type in the central nervous system, involve axons that contain predominantly spherical vesicles and contain a thickened postsynaptic density."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032279"^^xsd:string, + rdfs:label "asymmetric synapse"^^xsd:string + + SubClassOf: + obo:GO_0045202 + + +Class: obo:GO_0043256 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043256"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string, + oboInOwl:hasDbXref "http://www.sdbonline.org/fly/newgene/laminna1.htm"^^xsd:string + obo:IAO_0000115 "A large, extracellular glycoprotein complex composed of three different polypeptide chains, alpha, beta and gamma. Provides an integral part of the structural scaffolding of basement membranes."^^xsd:string, + rdfs:label "laminin complex"^^xsd:string + + SubClassOf: + obo:GO_0044420, + obo:BFO_0000050 some obo:GO_0005605, + obo:GO_0043234 + + +Class: obo:GO_0043257 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:10842354"^^xsd:string + obo:IAO_0000115 "A laminin complex composed of alpha4, beta1 and gamma1 polypeptide chains."^^xsd:string, + oboInOwl:id "GO:0043257"^^xsd:string, + rdfs:label "laminin-8 complex"^^xsd:string + + SubClassOf: + obo:GO_0043256 + + +Class: obo:GO_0060987 + + Annotations: + oboInOwl:id "GO:0060987"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:ascb_2009"^^xsd:string, + oboInOwl:hasDbXref "GOC:dph"^^xsd:string, + oboInOwl:hasDbXref "GOC:tb"^^xsd:string + obo:IAO_0000115 "A macromolecular complex that contains a tube of lipid surrounded by a protein coat."^^xsd:string, + rdfs:label "lipid tube"^^xsd:string + + SubClassOf: + obo:GO_0032994 + + +Class: obo:GO_0017090 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0017090"^^xsd:string, + oboInOwl:hasExactSynonym "PABA peptide hydrolase complex"^^xsd:string, + rdfs:label "meprin A complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "EC:3.4.24.18"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "MEROPS_fam:M12"^^xsd:string + obo:IAO_0000115 "A protein complex that is located in the cell membrane, and is involved in the metabolism of peptides, including neuropeptides. The complex has metalloendopeptidase activity that catalyzes the hydrolysis of protein and peptide substrates, preferentially on carboxyl side of hydrophobic residues."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016021, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0032798 + + Annotations: + oboInOwl:hasBroadSynonym "Swi5 complex"^^xsd:string, + oboInOwl:id "GO:0032798"^^xsd:string, + rdfs:comment "Note that this term refers to Schizosaccharomyces pombe Swi5, which should not be confused with the unrelated Saccharomyces Swi5p."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:elh"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "Sae3-Mei5 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:15620352"^^xsd:string, + oboInOwl:hasDbXref "PMID:16921379"^^xsd:string + obo:IAO_0000115 "A conserved DNA recombinase mediator complex that contains two Swi5 monomers and one Sfr1 monomer in Schizosaccharomyces, or orthologs thereof (e.g. Sae3p and Mei5p in Saccharomyces)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Swi5-Sfr1 complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000790, + obo:GO_0044454, + obo:GO_0033061 + + +Class: obo:GO_0032797 + + Annotations: + oboInOwl:id "GO:0032797"^^xsd:string, + oboInOwl:hasExactSynonym "survival motor neuron complex"^^xsd:string, + rdfs:label "SMN complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16434402"^^xsd:string, + oboInOwl:hasDbXref "PMID:17023415"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the survival motor neuron (SMN) protein and at least eight additional integral components, including the Gemin2-8 and Unrip proteins; the complex is found in the cytoplasm and in nuclear Gems, and is involved in spliceosomal snRNP assembly in the cytoplasm and in pre-mRNA splicing in the nucleus."^^xsd:string, + rdfs:comment "Note that a larger complex containing Sm proteins and other subunits is also sometimes referred to as the 'SMN complex'. The larger complex is represented by 'SMN-Sm protein complex ; GO:0034719'."^^xsd:string, + oboInOwl:hasExactSynonym "SMN core complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031248 + + Annotations: + oboInOwl:id "GO:0031248"^^xsd:string, + rdfs:label "protein acetyltransferase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + obo:IAO_0000115 "A complex that catalyzes the transfer of an acetyl group to a protein acceptor molecule."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0043234 + + +Class: obo:GO_0031246 + + Annotations: + oboInOwl:id "GO:0031246"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Located in the outer membrane of the cell such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane, with the bulk of the gene product located on the side that faces the periplasm."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "intrinsic to internal side of outer membrane"^^xsd:string, + rdfs:label "intrinsic to internal side of cell outer membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031241, + obo:GO_0031230 + + +Class: obo:GO_0070916 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19726565"^^xsd:string + obo:IAO_0000115 "A protein complex that possesses inositol phosphoceramide synthase activity and contains a catalytic subunit and a regulatory subunit (Aur1p and Kei1p, respectively, in Saccharomyces)."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "inositol phosphoceramide synthase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "IPC synthase complex"^^xsd:string, + oboInOwl:id "GO:0070916"^^xsd:string + + SubClassOf: + obo:GO_0044431, + obo:GO_0043234 + + +Class: obo:GO_0008328 + + Annotations: + oboInOwl:id "GO:0008328"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "ionotropic glutamate receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "http://www.bris.ac.uk/Depts/Synaptic/info/glutamate.html"^^xsd:string + obo:IAO_0000115 "A multimeric assembly of four or five subunits which form a structure with an extracellular N-terminus and a large loop that together form the ligand binding domain. The C-terminus is intracellular. The ionotropic glutamate receptor complex itself acts as a ligand-gated ion channel; on binding glutamate, charged ions pass through a channel in the center of the receptor complex."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0070913 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Ddb1-Wdr21 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18794354"^^xsd:string + obo:IAO_0000115 "A heterodimeric nucleotide-excision repair complex that is involved in transcription-coupled repair. The subunits are known as Ddb1 and Wdr21 in S. pombe; Ddb1 contains a motif called the DDB-box that interacts with adaptor proteins for DDB1/cullin 4 ubiquitin ligases."^^xsd:string, + oboInOwl:id "GO:0070913"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0070912 + + Annotations: + rdfs:label "Ddb1-Ckn1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:18794354"^^xsd:string + obo:IAO_0000115 "A heterodimeric nucleotide-excision repair complex that is involved in transcription-coupled repair. The subunits are known as Ddb1 and Ckn1 in S. pombe; Ddb1 contains a motif called the DDB-box that interacts with adaptor proteins for DDB1/cullin 4 ubiquitin ligases."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0070912"^^xsd:string + + SubClassOf: + obo:GO_0000109 + + +Class: obo:GO_0019773 + + Annotations: + rdfs:label "proteasome core complex, alpha-subunit complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:10854779"^^xsd:string + obo:IAO_0000115 "The proteasome core subcomplex that constitutes the two outer rings of the proteasome core complex. An example of this component is found in Mus musculus."^^xsd:string, + oboInOwl:id "GO:0019773"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0005839, + obo:GO_0043234 + + +Class: obo:GO_0031633 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that this term refers to a subcellular structure, and should not be confused with the specialized cells known as xanthophores, which produce yellow pigment and are found in fish and amphibian skin. Note that several terms in the biological process ontology ('xanthophore differentiation ; GO:0050936' and its children) refer to xanthophores in the sense of pigment-producing cells."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0395825172"^^xsd:string + obo:IAO_0000115 "A chromatophore containing yellow pigment."^^xsd:string, + oboInOwl:id "GO:0031633"^^xsd:string, + rdfs:label "xanthophore"^^xsd:string + + SubClassOf: + obo:GO_0042716 + + +Class: obo:GO_0048555 + + Annotations: + oboInOwl:id "GO:0048555"^^xsd:string, + oboInOwl:hasBroadSynonym "sperm cell nucleus"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tair_curators"^^xsd:string + obo:IAO_0000115 "The nucleus of the generative cell, a cell contained within the pollen grain that will divide to produce two haploid sperm cells."^^xsd:string, + oboInOwl:hasBroadSynonym "male germ cell nucleus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "generative cell nucleus"^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0032766 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:11948184"^^xsd:string + obo:IAO_0000115 "A heterotrimeric protein complex formed by the association of NHE3, E3KARP and alpha-actinin upon an increase in calcium ion concentration; found in clusters localized on plasma membrane and in intracellular compartments."^^xsd:string, + oboInOwl:hasExactSynonym "NHE3/E3KARP/alpha-actinin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "NHE3/E3KARP/ACTN4 complex"^^xsd:string, + oboInOwl:id "GO:0032766"^^xsd:string + + SubClassOf: + obo:GO_0044464, + obo:GO_0043234 + + +Class: obo:GO_0019774 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string, + oboInOwl:hasDbXref "GOC:rb"^^xsd:string, + oboInOwl:hasDbXref "PMID:10854779"^^xsd:string + obo:IAO_0000115 "The proteasome core subcomplex that constitutes the two inner rings of the proteasome core complex. An example of this component is found in Mus musculus."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0019774"^^xsd:string, + rdfs:label "proteasome core complex, beta-subunit complex"^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:BFO_0000050 some obo:GO_0005839, + obo:GO_0043234 + + +Class: obo:GO_0071761 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgZ isotype and two identical immunoglobulin light chains, held together by disulfide bonds. The IgZ isotype is also known as the IgT isotype in certain species of fish."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgZ antibody"^^xsd:string, + rdfs:comment "Note that an IgZ immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Note that IgZ is found in bony fish, and called IgT in certain species, such as trout."^^xsd:string, + rdfs:label "IgZ immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071761"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + oboInOwl:hasExactSynonym "IgT immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgT antibody"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0071762 + + Annotations: + rdfs:label "heavy chain immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "HCab"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgNAR antibody"^^xsd:string, + rdfs:comment "Note that a heavy chain immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Note that IgNAR is found in serum of cartilaginous fish as a heavy chain dimer without immunoglobulin light chains. Note that HCab is found in camels as a heavy chain dimer without immunoglobulin light chains."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgNAR immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:12543123"^^xsd:string, + oboInOwl:hasDbXref "PMID:16051357"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgNAR isotype held together by disulfide bonds and lacking immunoglobulin light chains."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "Ig NAR immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071762"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0048556 + + Annotations: + oboInOwl:hasAlternativeId "GO:0043074"^^xsd:string, + rdfs:label "microsporocyte nucleus"^^xsd:string, + oboInOwl:hasExactSynonym "pollen mother cell nucleus"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "microspore mother cell nucleus"^^xsd:string, + oboInOwl:id "GO:0048556"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:tair_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:047186840X"^^xsd:string + obo:IAO_0000115 "The nucleus of the microsporocyte. The microsporocyte is a diploid cell in which meiosis will occur, resulting in four microspores. A microspore is a spore that, in vascular plants, gives rise to a male gametophyte."^^xsd:string + + SubClassOf: + obo:GO_0005634 + + +Class: obo:GO_0071760 + + Annotations: + rdfs:comment "Note that an IgY immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Note that IgY is found in amphibians, reptiles, and birds."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgY isotype and two identical immunoglobulin light chains, held together by disulfide bonds. An IgY immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + oboInOwl:id "GO:0071760"^^xsd:string, + rdfs:label "IgY immunoglobulin complex"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0031252 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pg"^^xsd:string + obo:IAO_0000115 "The area of a motile cell closest to the direction of movement."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "front of cell"^^xsd:string, + oboInOwl:inSubset , + rdfs:label "cell leading edge"^^xsd:string, + oboInOwl:id "GO:0031252"^^xsd:string, + oboInOwl:hasExactSynonym "leading edge of cell"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0031251 + + Annotations: + oboInOwl:hasExactSynonym "poly(A) nuclease complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "PAN complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:9774670"^^xsd:string + obo:IAO_0000115 "A complex that possesses poly(A)-specific ribonuclease activity; catalyzes the message-specific shortening of mRNA poly(A) tails. Contains at least two subunits, known as Pan2p and Pan3p in Saccharomyces."^^xsd:string, + oboInOwl:id "GO:0031251"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0031250 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string + obo:IAO_0000115 "An enzyme complex composed of 4 subunits, 2 copies of the large protein (nrdD in E. coli) and 2 copies of the small protein (nrdG in E. coli). It catalyzes the generation of 2'deoxyribonucleotides under anaerobic growth conditions. The larger subunit is the catalytic unit that is activated by the smaller iron-binding subunit."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031250"^^xsd:string, + rdfs:label "anaerobic ribonucleoside-triphosphate reductase complex"^^xsd:string + + SubClassOf: + obo:GO_0043234, + obo:GO_0044444 + + +Class: obo:GO_0031256 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "leading edge membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding the leading edge of a motile cell."^^xsd:string, + oboInOwl:id "GO:0031256"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031252, + obo:GO_0044459 + + +Class: obo:GO_0031255 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:pg"^^xsd:string + obo:IAO_0000115 "The area of a motile cell perpendicular to the direction of movement."^^xsd:string, + rdfs:label "lateral part of motile cell"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031255"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0031254 + + Annotations: + rdfs:label "trailing edge"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "back of cell"^^xsd:string, + oboInOwl:inSubset , + + Annotations: oboInOwl:hasDbXref "GOC:pg"^^xsd:string + obo:IAO_0000115 "The area of a motile cell opposite to the direction of movement."^^xsd:string, + oboInOwl:id "GO:0031254"^^xsd:string + + SubClassOf: + obo:GO_0044464 + + +Class: obo:GO_0031253 + + Annotations: + rdfs:label "cell projection membrane"^^xsd:string, + oboInOwl:hasRelatedSynonym "membrane extension"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The portion of the plasma membrane surrounding a cell surface projection."^^xsd:string, + oboInOwl:hasRelatedSynonym "membrane projection"^^xsd:string, + oboInOwl:id "GO:0031253"^^xsd:string + + SubClassOf: + obo:GO_0044463, + obo:GO_0044459 + + +Class: obo:GO_0031235 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031235"^^xsd:string, + rdfs:label "intrinsic to internal side of plasma membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the plasma membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane, with the bulk of the gene product located on the side that faces the cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0031226, + obo:BFO_0000050 some obo:GO_0009898 + + +Class: obo:GO_0031236 + + Annotations: + rdfs:label "extrinsic to external side of plasma membrane, in periplasmic space"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031236"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Located in the periplasmic space and loosely bound to the surface of the plasma membrane that faces away from the cytoplasm, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031238"^^xsd:string + + EquivalentTo: + obo:GO_0031232 + and (obo:BFO_0000050 some obo:GO_0030288) + + SubClassOf: + obo:GO_0044462, + obo:BFO_0000050 some obo:GO_0030288, + obo:GO_0031232 + + +Class: obo:GO_0031237 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031237"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Located in the plasma membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane, with the bulk of the gene product located in the periplasmic space."^^xsd:string, + rdfs:label "intrinsic to external side of plasma membrane, in periplasmic space"^^xsd:string, + oboInOwl:hasAlternativeId "GO:0031239"^^xsd:string + + EquivalentTo: + obo:GO_0031233 + and (obo:BFO_0000050 some obo:GO_0030288) + + SubClassOf: + obo:GO_0044462, + obo:BFO_0000050 some obo:GO_0030288, + obo:GO_0031233 + + +Class: obo:GO_0032783 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0032783"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17150956"^^xsd:string + obo:IAO_0000115 "A heterodimeric protein complex that acts as an RNA polymerase II elongation factor; the complex is conserved from yeast to humans, and is present in S. pombe, but absent from S. cerevisiae."^^xsd:string, + rdfs:label "ELL-EAF complex"^^xsd:string + + SubClassOf: + obo:GO_0008023 + + +Class: obo:GO_0071752 + + Annotations: + rdfs:label "secretory dimeric IgA immunoglobulin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A dimeric form of secretory IgA immunoglobulin complex."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "secretory dimeric IgA1 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "secretory dimeric IgA antibody"^^xsd:string, + oboInOwl:id "GO:0071752"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Dimeric IgA is by far the most common form of polymeric IgA. In human only the IgA1 isotype is capable of a dimeric form."^^xsd:string + + SubClassOf: + obo:GO_0071750, + obo:GO_0071751 + + +Class: obo:GO_0032777 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "Piccolo NuA4 histone acetyltransferase complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:12782659"^^xsd:string, + oboInOwl:hasDbXref "PMID:15964809"^^xsd:string + obo:IAO_0000115 "A heterotrimeric H4/H2A histone acetyltransferase complex with a substrate preference of chromatin over free histones. It contains a subset of the proteins found in the larger NuA4 histone acetyltransferase complex; for example, the S. cerevisiae complex contains Esa1p, Yng2p, and Epl1p."^^xsd:string, + oboInOwl:id "GO:0032777"^^xsd:string + + SubClassOf: + obo:GO_0043189 + + +Class: obo:GO_0071753 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:20176268"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgM isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and in its circulating form complexed with J chain in polymeric forms. An IgM immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + rdfs:comment "Note that an IgM immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "IgM immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071753"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0071754 + + Annotations: + rdfs:comment "Note that an IgM immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:20176268"^^xsd:string + obo:IAO_0000115 "A polymer of five or six IgM core units each composed of two identical immunoglobulin heavy chains of the IgM isotype and two identical immunoglobulin light chains, held together by disulfide bonds; the individual IgM core units are held together via disulfide bonds with a single J chain polypeptide acting as a bridge between two of the polymeric units. Circulating IgM is present in the extracellular space, in mucosal areas or other tissues, or in the blood or lymph."^^xsd:string, + rdfs:label "IgM immunoglobulin complex, circulating"^^xsd:string, + oboInOwl:id "GO:0071754"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IgM antibody"^^xsd:string + + SubClassOf: + obo:GO_0071753, + obo:GO_0042571 + + +Class: obo:GO_0071755 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that an IgM immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + rdfs:label "IgM B cell receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:20176268"^^xsd:string + obo:IAO_0000115 "An IgM immunoglobulin complex that is present in the plasma membrane of B cells and is composed of two identical immunoglobulin heavy chains of the IgM isotype and two identical immunoglobulin light chains and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgM"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgM"^^xsd:string, + oboInOwl:id "GO:0071755"^^xsd:string + + SubClassOf: + obo:GO_0071753, + obo:GO_0019815 + + +Class: obo:GO_0035059 + + Annotations: + oboInOwl:id "GO:0035059"^^xsd:string, + oboInOwl:hasExactSynonym "replication-coupling assembly factor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:10591219"^^xsd:string + obo:IAO_0000115 "A protein complex that facilitates the assembly of nucleosomes on to newly synthesized DNA. In Drosophila, the complex comprises ASF1 and histones H3 and H4."^^xsd:string, + rdfs:label "RCAF complex"^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0071750 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two monomeric IgA immunoglobulin complexes linked through both direct disulfide bonds and through a disulfide binded monomer of J chain acting as a bridge. Each IgA monomer consists of two identical immunoglobulin heavy chains of an IgA isotype and two identical immunoglobulin light chains, held together by disulfide bonds. Dimeric IgA is sometimes complexed additionally with secretory component, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "dimeric IgA antibody"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "dimeric IgA immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071750"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Dimeric IgA is by far the most common form of polymeric IgA. In human only the IgA1 isotype is capable of a dimeric form."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "dimeric IgA1 antibody"^^xsd:string + + SubClassOf: + obo:GO_0071749 + + +Class: obo:GO_0071751 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A polymeric IgA immunoglobulin complex that is complexed with one chain of secretory component (SC). Polymeric IgA is present in mucosal areas, having been transported via a transcytosis mechanism in mucosal epithelial cells relying on the polymeric Ig receptor, a portion of which then remains bound to the polymeric IgA as secretory component."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "sIgA1 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "secretory IgA antibody"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available. In human only the IgA1 isotype in the polymeric form is capable of becoming secretory IgA."^^xsd:string, + rdfs:label "secretory IgA immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071751"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "sIgA antibody"^^xsd:string + + SubClassOf: + obo:GO_0071749 + + +Class: obo:GO_0031241 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "internal side of outer membrane"^^xsd:string, + rdfs:label "internal side of cell outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The side of the outer membrane that faces the periplasm of the cell."^^xsd:string, + oboInOwl:id "GO:0031241"^^xsd:string + + SubClassOf: + obo:GO_0044462, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009279 + + +Class: obo:GO_0031240 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "external side of cell outer membrane"^^xsd:string, + oboInOwl:hasRelatedSynonym "external side of outer membrane"^^xsd:string, + oboInOwl:id "GO:0031240"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mlg"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The side of the outer membrane that is opposite to the side that faces the periplasm of the cell."^^xsd:string + + SubClassOf: + obo:GO_0044462, + obo:GO_0044425, + obo:BFO_0000050 some obo:GO_0009279 + + +Class: obo:GO_0071756 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:20176268"^^xsd:string + obo:IAO_0000115 "A circulating form of IgM consisting of a pentamer of IgM core units with a single J chain polypeptide."^^xsd:string, + oboInOwl:id "GO:0071756"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that an IgM immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + rdfs:label "pentameric IgM immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "pentameric IgM antibody"^^xsd:string + + SubClassOf: + obo:GO_0071754 + + +Class: obo:GO_0031243 + + Annotations: + oboInOwl:hasExactSynonym "intrinsic to external side of outer membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Located in the outer membrane of the cell such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane, with the bulk of the gene product located on the side opposite to the side that faces the periplasm."^^xsd:string, + rdfs:label "intrinsic to external side of cell outer membrane"^^xsd:string, + oboInOwl:id "GO:0031243"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031240, + obo:GO_0031230 + + +Class: obo:GO_0071757 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:20176268"^^xsd:string + obo:IAO_0000115 "A circulating form of IgM consisting of a hexamer of IgM core units with a single J chain polypeptide."^^xsd:string, + rdfs:comment "Note that an IgM immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071757"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "hexameric IgM antibody"^^xsd:string, + rdfs:label "hexameric IgM immunoglobulin complex"^^xsd:string + + SubClassOf: + obo:GO_0071754 + + +Class: obo:GO_0046930 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0046930"^^xsd:string, + oboInOwl:hasRelatedSynonym "channel-forming toxin activity"^^xsd:string, + oboInOwl:hasExactSynonym "pore"^^xsd:string, + oboInOwl:hasRelatedSynonym "pore-forming toxin activity"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "Any small opening in a membrane that allows the passage of gases and/or liquids."^^xsd:string, + rdfs:label "pore complex"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0016021, + obo:GO_0044425, + obo:GO_0043234 + + +Class: obo:GO_0031242 + + Annotations: + oboInOwl:hasExactSynonym "extrinsic to external side of outer membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extrinsic to external side of cell outer membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of the outer membrane of the cell that faces away from the cytoplasm, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0031242"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031240, + obo:GO_0031244 + + +Class: obo:GO_0071758 + + Annotations: + oboInOwl:id "GO:0071758"^^xsd:string, + rdfs:label "IgW immunoglobulin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:comment "Note that an IgW immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Note that IgW is found in fish."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgW isotype and two identical immunoglobulin light chains, held together by disulfide bonds. An IgW immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0031245 + + Annotations: + rdfs:label "extrinsic to internal side of cell outer membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of the outer membrane of the cell that faces the cytoplasm, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0031245"^^xsd:string, + oboInOwl:hasExactSynonym "extrinsic to internal side of outer membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031241, + obo:GO_0031244 + + +Class: obo:GO_0071759 + + Annotations: + rdfs:comment "Note that an IgX immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Note that IgX is found in amphibians."^^xsd:string, + oboInOwl:id "GO:0071759"^^xsd:string, + rdfs:label "IgX immunoglobulin complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgX isotype and two identical immunoglobulin light chains, held together by disulfide bonds. An IgX immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0031244 + + Annotations: + rdfs:label "extrinsic to cell outer membrane"^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Loosely bound to one surface of the outer membrane of the cell, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0031244"^^xsd:string + + SubClassOf: + obo:GO_0044462, + obo:GO_0019898, + obo:BFO_0000050 some obo:GO_0009279 + + +Class: obo:GO_0031228 + + Annotations: + oboInOwl:id "GO:0031228"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the Golgi membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to Golgi membrane"^^xsd:string + + SubClassOf: + obo:GO_0031300, + obo:BFO_0000050 some obo:GO_0000139, + obo:GO_0044431 + + +Class: obo:GO_0031229 + + Annotations: + oboInOwl:id "GO:0031229"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the nuclear inner membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + rdfs:label "intrinsic to nuclear inner membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005637, + obo:GO_0044453, + obo:GO_0031300 + + +Class: obo:GO_0031226 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031226"^^xsd:string, + rdfs:label "intrinsic to plasma membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the plasma membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string + + SubClassOf: + obo:GO_0031224, + obo:GO_0044459 + + +Class: obo:GO_0031227 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the endoplasmic reticulum membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:id "GO:0031227"^^xsd:string, + rdfs:label "intrinsic to endoplasmic reticulum membrane"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005789, + obo:GO_0031300, + obo:GO_0044432 + + +Class: obo:GO_0031224 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031224"^^xsd:string, + rdfs:label "intrinsic to membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in a membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + rdfs:comment "Note that proteins intrinsic to membranes cannot be removed without disrupting the membrane, e.g. by detergent."^^xsd:string + + SubClassOf: + obo:GO_0044425 + + +Class: obo:GO_0031225 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "anchored to membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Tethered to a membrane by a covalently attached anchor, such as a lipid group, that is embedded in the membrane. When used to describe a protein, indicates that none of the peptide sequence is embedded in the membrane."^^xsd:string, + oboInOwl:id "GO:0031225"^^xsd:string + + SubClassOf: + obo:GO_0031224 + + +Class: obo:GO_0071339 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "MLL1 complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:sp"^^xsd:string, + oboInOwl:hasDbXref "PMID:15960975"^^xsd:string + obo:IAO_0000115 "A protein complex that can methylate lysine-4 of histone H3. MLL1/MLL is the catalytic methyltransferase subunit, and the complex also contains the core components ASH2L, HCFC1/HCF1 WDR5 and RBBP5."^^xsd:string, + oboInOwl:id "GO:0071339"^^xsd:string + + SubClassOf: + obo:GO_0035097 + + +Class: obo:GO_0008305 + + Annotations: + rdfs:label "integrin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:17543136"^^xsd:string + obo:IAO_0000115 "A protein complex that is composed of one alpha subunit and one beta subunit, both of which are members of the integrin superfamily of cell adhesion receptors; the complex spans the plasma membrane and binds to extracellular matrix ligands, cell-surface ligands, and soluble ligands."^^xsd:string, + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0008305"^^xsd:string, + oboInOwl:hasRelatedSynonym "laminin receptor protein"^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0005887, + obo:GO_0044459, + obo:GO_0043235 + + +Class: obo:GO_0008303 + + Annotations: + rdfs:label "caspase complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_apoptosis"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0198506732"^^xsd:string + obo:IAO_0000115 "A protein complex that is located in the cytosol and acts as a cysteine-type endopeptidase involved in the apoptotic process; the peptidase activity has specificity for the hydrolysis of aspartyl bonds."^^xsd:string, + oboInOwl:id "GO:0008303"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0031616 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031616"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A centrosome from which one pole of a mitotic or meiotic spindle is organized."^^xsd:string, + rdfs:label "spindle pole centrosome"^^xsd:string + + EquivalentTo: + obo:GO_0005813 + and (obo:BFO_0000050 some obo:GO_0000922) + + SubClassOf: + obo:BFO_0000050 some obo:GO_0000922, + obo:GO_0005813 + + +Class: obo:GO_0071740 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "membrane-bound IgD"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "surface IgD"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "IgD B cell receptor complex"^^xsd:string, + oboInOwl:id "GO:0071740"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:11282392"^^xsd:string + obo:IAO_0000115 "An IgD immunoglobulin complex that is present in the plasma membrane of B cells and is composed of two identical immunoglobulin heavy chains of the IgD isotype and two identical immunoglobulin light chains and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + rdfs:comment "Note that an IgD immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string + + SubClassOf: + obo:GO_0071738, + obo:GO_0019815 + + +Class: obo:GO_0031615 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The subcomplex of the cytosolic proteasome regulatory particle that forms the peripheral lid, which is added on top of the base subcomplex."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031615"^^xsd:string, + rdfs:label "cytosolic proteasome regulatory particle, lid subcomplex"^^xsd:string + + SubClassOf: + obo:GO_0008541, + obo:BFO_0000050 some obo:GO_0031600, + obo:GO_0044445 + + +Class: obo:GO_0031614 + + Annotations: + rdfs:label "ER proteasome regulatory particle, lid subcomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031614"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits that form the peripheral lid of the regulatory particle of a proteasome located in the endoplasmic reticulum of a cell."^^xsd:string + + EquivalentTo: + obo:GO_0008541 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0008541, + obo:BFO_0000050 some obo:GO_0031599, + obo:GO_0044432 + + +Class: obo:GO_0031613 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031613"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits that form the peripheral lid of the regulatory particle of a proteasome located in the nucleus of a cell."^^xsd:string, + rdfs:label "nuclear proteasome regulatory particle, lid subcomplex"^^xsd:string + + EquivalentTo: + obo:GO_0008541 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0008541, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031598 + + +Class: obo:GO_0071743 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IgE antibody"^^xsd:string, + rdfs:label "IgE immunoglobulin complex, circulating"^^xsd:string, + rdfs:comment "Note that an IgE immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgE isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + oboInOwl:id "GO:0071743"^^xsd:string + + SubClassOf: + obo:GO_0042571, + obo:GO_0071742 + + +Class: obo:GO_0031612 + + Annotations: + oboInOwl:id "GO:0031612"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "cytosolic proteasome regulatory particle, base subcomplex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "The subcomplex of the proteasome regulatory particle that directly associates with the proteasome core complex located in the cytosol of the cell."^^xsd:string + + SubClassOf: + obo:GO_0008540, + obo:BFO_0000050 some obo:GO_0031600, + obo:GO_0044445 + + +Class: obo:GO_0071744 + + Annotations: + rdfs:comment "Note that an IgE immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "surface IgE"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "membrane-bound IgE"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "An IgE immunoglobulin complex that is present in the plasma membrane of B cells and is composed of two identical immunoglobulin heavy chains of the IgE isotype and two identical immunoglobulin light chains and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + rdfs:label "IgE B cell receptor complex"^^xsd:string, + oboInOwl:id "GO:0071744"^^xsd:string + + SubClassOf: + obo:GO_0071742, + obo:GO_0019815 + + +Class: obo:GO_0031611 + + Annotations: + oboInOwl:id "GO:0031611"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits of the regulatory particle that directly associate with the core complex of a proteasome located in the endoplasmic reticulum of a cell."^^xsd:string, + rdfs:label "ER proteasome regulatory particle, base subcomplex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string + + EquivalentTo: + obo:GO_0008540 + and (obo:BFO_0000050 some obo:GO_0005783) + + SubClassOf: + obo:GO_0008540, + obo:BFO_0000050 some obo:GO_0031599, + obo:GO_0044432 + + +Class: obo:GO_0071741 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "IgD immunoglobulin complex, GPI-anchored"^^xsd:string, + oboInOwl:id "GO:0071741"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:11282392"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgD isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and bound via a GPI-anchor to the plasma membrane of B cells."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "GPI-anchored IgD"^^xsd:string, + rdfs:comment "Note that an IgD immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string + + SubClassOf: + obo:GO_0071738 + + +Class: obo:GO_0031610 + + Annotations: + oboInOwl:id "GO:0031610"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The subunits of the regulatory particle that directly associate with the core complex of a proteasome located in the nucleus of a cell."^^xsd:string, + rdfs:label "nuclear proteasome regulatory particle, base subcomplex"^^xsd:string + + EquivalentTo: + obo:GO_0008540 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0008540, + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0031598 + + +Class: obo:GO_0071742 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgE isotype and two identical immunoglobulin light chains, held together by disulfide bonds. An IgE immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + rdfs:comment "Note that an IgE immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "IgE immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071742"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0071747 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgA"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:id "GO:0071747"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "An IgA immunoglobulin complex that is present in the plasma membrane of B cells and is composed of two identical immunoglobulin heavy chains of an IgA isotype and two identical immunoglobulin light chains and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgA"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgA2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgA1"^^xsd:string, + rdfs:label "IgA B cell receptor complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgA2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgA1"^^xsd:string + + SubClassOf: + obo:GO_0071745, + obo:GO_0019815 + + +Class: obo:GO_0031234 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extrinsic to internal side of plasma membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of the plasma membrane that faces the cytoplasm, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:id "GO:0031234"^^xsd:string, + rdfs:comment "Consider also annotating to 'cell cortex ; GO:0005938'."^^xsd:string + + SubClassOf: + obo:GO_0044424, + obo:GO_0019897, + obo:BFO_0000050 some obo:GO_0009898 + + +Class: obo:GO_0071748 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "monomeric IgA antibody"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:id "GO:0071748"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "monomeric IgA immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "monomeric IgA2 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of an IgA isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "monomeric IgA1 antibody"^^xsd:string + + SubClassOf: + obo:GO_0071746 + + +Class: obo:GO_0031233 + + Annotations: + rdfs:label "intrinsic to external side of plasma membrane"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0031233"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the plasma membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane, with the bulk of the gene product located on the side opposite to the side that faces the cytoplasm."^^xsd:string + + SubClassOf: + obo:GO_0031226, + obo:BFO_0000050 some obo:GO_0009897 + + +Class: obo:GO_0071745 + + Annotations: + oboInOwl:id "GO:0071745"^^xsd:string, + rdfs:label "IgA immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgA isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and sometimes complexed with J chain or J chain and secretory component. An IgA immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgA2 antibody"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgA1 antibody"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0031232 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Loosely bound to the surface of the plasma membrane that faces away from the cytoplasm, but not integrated into the hydrophobic region."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "extrinsic to external side of plasma membrane"^^xsd:string, + oboInOwl:id "GO:0031232"^^xsd:string + + SubClassOf: + obo:GO_0019897, + obo:BFO_0000050 some obo:GO_0009897 + + +Class: obo:GO_0071746 + + Annotations: + rdfs:label "IgA immunoglobulin complex, circulating"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgA2 antibody"^^xsd:string, + oboInOwl:id "GO:0071746"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgA1 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IgA antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of an IgA isotype and two identical immunoglobulin light chains, held together by disulfide bonds, sometimes complexed with J chain or J chain and secretory component, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string + + SubClassOf: + obo:GO_0042571, + obo:GO_0071745 + + +Class: obo:GO_0031231 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "intrinsic to peroxisomal membrane"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "Located in the peroxisomal membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + oboInOwl:id "GO:0031231"^^xsd:string + + SubClassOf: + obo:GO_0044439, + obo:GO_0031300, + obo:BFO_0000050 some obo:GO_0005778 + + +Class: obo:GO_0031230 + + Annotations: + oboInOwl:inSubset , + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:mtg_sensu"^^xsd:string + obo:IAO_0000115 "Located in the cell outer membrane such that some covalently attached portion of the gene product, for example part of a peptide sequence or some other covalently attached group such as a GPI anchor, spans or is embedded in one or both leaflets of the membrane."^^xsd:string, + rdfs:label "intrinsic to cell outer membrane"^^xsd:string, + oboInOwl:id "GO:0031230"^^xsd:string + + SubClassOf: + obo:GO_0044462, + obo:GO_0031224, + obo:BFO_0000050 some obo:GO_0009279 + + +Class: obo:GO_0071749 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:16362985"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two, three, or four monomeric IgA immunoglobulin complexes linked through both direct disulfide bonds and through disulfide binded monomers of J chain acting as a bridge. Each IgA monomer consists of two identical immunoglobulin heavy chains of an IgA isotype and two identical immunoglobulin light chains, held together by disulfide bonds. Dimeric IgA is sometimes complexed additionally with secretory component, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071749"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "pIgA1 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "polymeric IgA antibody"^^xsd:string, + rdfs:comment "Note that an IgA immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Dimeric IgA is by far the most common form of polymeric IgA. In human only the IgA1 isotype is capable of a polymeric forms."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "polymeric IgA1 antibody"^^xsd:string, + rdfs:label "polymeric IgA immunoglobulin complex"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "pIgA antibody"^^xsd:string + + SubClassOf: + obo:GO_0071746 + + +Class: obo:GO_0031618 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A region of heterochromatin located near the centromere of a chromosome in the nucleus."^^xsd:string, + oboInOwl:id "GO:0031618"^^xsd:string, + oboInOwl:hasExactSynonym "nuclear centric heterochromatin"^^xsd:string, + rdfs:label "nuclear centromeric heterochromatin"^^xsd:string + + EquivalentTo: + obo:GO_0005721 + and (obo:BFO_0000050 some obo:GO_0005634) + + SubClassOf: + obo:GO_0005720, + obo:GO_0005721 + + +Class: obo:GO_0031617 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:16079914"^^xsd:string + obo:IAO_0000115 "A supercomplex formed by the association of two subcomplexes (known as MIND and Ndc80 in Schizosaccharomyces) with additional proteins at the kinetochores of condensed nuclear chromosomes."^^xsd:string, + oboInOwl:id "GO:0031617"^^xsd:string, + oboInOwl:hasExactSynonym "Ndc80-MIND-Spc7 complex"^^xsd:string, + rdfs:label "NMS complex"^^xsd:string + + SubClassOf: + obo:GO_0044427, + obo:BFO_0000050 some obo:GO_0000776, + obo:GO_0043234 + + +Class: obo:GO_0071341 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071341"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string + oboInOwl:hasExactSynonym "mid1p medial cortical dot"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:19959363"^^xsd:string + oboInOwl:hasExactSynonym "midsome"^^xsd:string, + rdfs:label "medial cortical node"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "GOC:vw"^^xsd:string, + oboInOwl:hasDbXref "PMID:19474789"^^xsd:string, + oboInOwl:hasDbXref "PMID:19959363"^^xsd:string + obo:IAO_0000115 "A protein complex that contains the mid1, cdr2, wee1, klp8, and blt1 proteins, and is involved in contractile ring localization. Medial cortical node complexes appear as cortical dots in the middle of the cell during interphase, and function to recruit other ring components in early mitosis."^^xsd:string + + SubClassOf: + obo:BFO_0000050 some obo:GO_0031097, + obo:GO_0032155, + obo:GO_0044448, + obo:GO_0043234 + + +Class: obo:GO_0043293 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:10428850"^^xsd:string, + oboInOwl:hasDbXref "PMID:11406413"^^xsd:string, + oboInOwl:hasDbXref "PMID:12176339"^^xsd:string, + oboInOwl:hasDbXref "PMID:15189137"^^xsd:string + obo:IAO_0000115 "A multisubunit protein complex involved in the activation of apoptosis. In mammals it is typically composed of seven Apaf-1 subunits bound to cytochrome c and caspase-9. A similar complex to promote apoptosis is formed from homologous gene products in other eukaryotic organisms."^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasDbXref "Wikipedia:Apoptosome"^^xsd:string, + oboInOwl:id "GO:0043293"^^xsd:string, + rdfs:label "apoptosome"^^xsd:string + + SubClassOf: + obo:GO_0044445, + obo:GO_0043234 + + +Class: obo:GO_0031213 + + Annotations: + + Annotations: oboInOwl:hasDbXref "PMID:12972596"^^xsd:string + obo:IAO_0000115 "A chromatin remodeling complex that mediates nucleosome deposition and generates regularly spaced nucleosome arrays. In humans, the complex is composed of the ATPase hSNF2H and the HBXAP protein (RSF-1)."^^xsd:string, + oboInOwl:hasExactSynonym "remodeling and spacing factor complex "^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "RSF complex"^^xsd:string, + oboInOwl:id "GO:0031213"^^xsd:string + + SubClassOf: + obo:GO_0016585 + + +Class: obo:GO_0043292 + + Annotations: + rdfs:label "contractile fiber"^^xsd:string, + oboInOwl:hasExactSynonym "contractile fibre"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043292"^^xsd:string, + oboInOwl:hasBroadSynonym "muscle fibre"^^xsd:string, + oboInOwl:hasBroadSynonym "muscle fiber"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0815316194"^^xsd:string + obo:IAO_0000115 "Fibers, composed of actin, myosin, and associated proteins, found in cells of smooth or striated muscle."^^xsd:string + + SubClassOf: + obo:GO_0043232, + obo:GO_0044444 + + +Class: obo:GO_0043291 + + Annotations: + rdfs:label "RAVE complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0043291"^^xsd:string, + oboInOwl:hasBroadSynonym "regulator of the (H+)-ATPase of the vacuolar and endosomal membranes"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "PMID:11283612"^^xsd:string, + oboInOwl:hasDbXref "PMID:11844802"^^xsd:string + obo:IAO_0000115 "A multisubunit complex that in Saccharomyces is composed of three subunits, Rav1p, Rav2p and Skp1p. Acts transiently to catalyze assembly of cytoplasmic V1, with membrane embedded V0 to form the V-ATPase holoenzyme."^^xsd:string + + SubClassOf: + obo:GO_0044444, + obo:GO_0043234 + + +Class: obo:GO_0043296 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "apical cell junction complex"^^xsd:string, + rdfs:label "apical junction complex"^^xsd:string, + oboInOwl:id "GO:0043296"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:go_curators"^^xsd:string, + oboInOwl:hasDbXref "PMID:12525486"^^xsd:string, + oboInOwl:hasDbXref "PMID:15196556"^^xsd:string + obo:IAO_0000115 "A functional unit located near the cell apex at the points of contact between epithelial cells, which in vertebrates is composed of the tight junction, the zonula adherens, and desmosomes and in invertebrates is composed of the subapical complex (SAC), the zonula adherens and the septate junction. Functions in the regulation of cell polarity, tissue integrity and intercellular adhesion and permeability."^^xsd:string + + SubClassOf: + obo:GO_0005911, + obo:BFO_0000050 some obo:GO_0016327 + + +Class: obo:GO_0035838 + + Annotations: + rdfs:label "growing cell tip"^^xsd:string, + oboInOwl:id "GO:0035838"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "The region at either end of the longest axis of a cylindrical or elongated cell, where polarized growth occurs."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "growing cell end"^^xsd:string + + SubClassOf: + obo:GO_0051286, + obo:GO_0030427 + + +Class: obo:GO_0035839 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:expert_jd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cell tip at which no growth takes place. For example, in fission yeast the cell end newly formed by cell division does not grow immediately upon its formation, and lacks actin cytoskeletal structures."^^xsd:string, + oboInOwl:id "GO:0035839"^^xsd:string, + rdfs:label "non-growing cell tip"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "non-growing cell end"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasRelatedSynonym "new cell end"^^xsd:string + + SubClassOf: + obo:GO_0051286 + + +Class: obo:GO_0043294 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "mitochondrial glutamate synthase complex (NADH)"^^xsd:string, + oboInOwl:id "GO:0043294"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:jl"^^xsd:string, + oboInOwl:hasDbXref "PMID:7047525"^^xsd:string + obo:IAO_0000115 "A protein complex, found in the mitochondria, that in yeast consists of a large and a small subunit. Possesses glutamate synthase (NADH) activity."^^xsd:string + + EquivalentTo: + obo:GO_0031027 + and (obo:BFO_0000050 some obo:GO_0005739) + + SubClassOf: + obo:GO_0044429, + obo:GO_0031027, + obo:BFO_0000050 some obo:GO_0005759 + + +Class: obo:GO_0035841 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string + oboInOwl:hasExactSynonym "new cell tip after activation of bipolar cell growth"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "post-NETO new cell tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "post-NETO new cell end"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_jd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string, + oboInOwl:hasDbXref "PMID:19431238"^^xsd:string + obo:IAO_0000115 "A cell tip that was newly formed at the last cell division, and that has started to grow after the cell has activated bipolar cell growth (i.e. in which new end take-off, NETO, has taken place). New end take-off is when monopolar cells initiate bipolar growth."^^xsd:string, + oboInOwl:id "GO:0035841"^^xsd:string, + rdfs:label "new growing cell tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "post-new end take-off new cell tip"^^xsd:string + + SubClassOf: + obo:GO_0035838 + + +Class: obo:GO_0035840 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "old growing cell end"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_jd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cell tip which has existed for at least one complete cell cycle, and at which polarized growth occurs. For example, in fission yeast the cell end that existed prior to cell division grows immediately after division, and contains a distinctive complement of proteins including actin cytoskeletal structures."^^xsd:string, + rdfs:label "old growing cell tip"^^xsd:string, + oboInOwl:id "GO:0035840"^^xsd:string + + SubClassOf: + obo:GO_0035838 + + +Class: obo:GO_0035843 + + Annotations: + rdfs:label "endonuclear canal"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:18359585"^^xsd:string + obo:IAO_0000115 "A membrane-bound structure present in the nucleus of a spermatozoon. There is variation in the number of endonuclear canals between sperm of different organisms, and some species lack these structures altogether. The endonuclear canal may provide a supporting role for the sperm nucleus, and originates during spermiogenesis from an invagination of the nuclear envelope."^^xsd:string, + oboInOwl:id "GO:0035843"^^xsd:string + + SubClassOf: + obo:GO_0044428, + obo:BFO_0000050 some obo:GO_0001673 + + +Class: obo:GO_0035842 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "post-NETO old cell tip"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + rdfs:label "old cell tip after activation of bipolar cell growth"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:expert_jd"^^xsd:string, + oboInOwl:hasDbXref "GOC:mah"^^xsd:string + obo:IAO_0000115 "A cell tip which has existed for at least one complete cell cycle, and at which polarized growth occurs, which is part of a cell that has activated bipolar cell growth (i.e. in which new end take-off, NETO, has taken place). For example, in fission yeast the cell end that existed prior to cell division grows immediately after division, and contains a distinctive complement of proteins including actin cytoskeletal structures."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "post-new end take-off old cell tip"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:mah"^^xsd:string + oboInOwl:hasExactSynonym "post-NETO old cell end"^^xsd:string, + oboInOwl:id "GO:0035842"^^xsd:string + + SubClassOf: + obo:GO_0035840 + + +Class: obo:GO_0071735 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG1"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG4"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of an IgG isotype and two identical immunoglobulin light chains, held together by disulfide bonds. An IgG immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG3"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2a"^^xsd:string, + rdfs:label "IgG immunoglobulin complex"^^xsd:string, + oboInOwl:id "GO:0071735"^^xsd:string, + rdfs:comment "Note that an IgG immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Also, IgG isotypes vary by species."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2c"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2b"^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0071736 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of an IgG isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2c antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG4 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG1 antibody"^^xsd:string, + rdfs:comment "Note that an IgG immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Also, IgG isotypes vary by species."^^xsd:string, + oboInOwl:id "GO:0071736"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2a antibody"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG3 antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2b antibody"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "IgG2 antibody"^^xsd:string, + rdfs:label "IgG immunoglobulin complex, circulating"^^xsd:string + + SubClassOf: + obo:GO_0042571, + obo:GO_0071735 + + +Class: obo:GO_0035032 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:hasExactSynonym "class III PI3K complex"^^xsd:string, + rdfs:label "phosphatidylinositol 3-kinase complex, class III"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:bf"^^xsd:string, + oboInOwl:hasDbXref "PMID:9255069"^^xsd:string + obo:IAO_0000115 "A complex containing a heterodimer of a catalytic Class III phosphoinositide 3-kinase (PI3K) subunit bound to a regulatory (adaptor) subunit. Class III PI3Ks have a substrate specificity restricted to phosphatidylinositol (PI)."^^xsd:string, + oboInOwl:id "GO:0035032"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:curators"^^xsd:string + oboInOwl:hasExactSynonym "phosphoinositide 3-kinase complex, class III"^^xsd:string + + SubClassOf: + obo:GO_0005942 + + +Class: obo:GO_0071737 + + Annotations: + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG3"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG2b"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG4"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG2c"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG"^^xsd:string, + oboInOwl:id "GO:0071737"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG1"^^xsd:string, + rdfs:comment "Note that an IgG immunoglobulin complex has the function of antigen binding if a suitable antigen is available. Also, IgG isotypes vary by species."^^xsd:string, + rdfs:label "IgG B cell receptor complex"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG2a"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG2b"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG2c"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "membrane-bound IgG2a"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG2"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG1"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string + obo:IAO_0000115 "An IgG immunoglobulin complex that is present in the plasma membrane of B cells and is composed of two identical immunoglobulin heavy chains of an IgG isotype and two identical immunoglobulin light chains and a signaling subunit, a heterodimer of the Ig-alpha and Ig-beta proteins."^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG4"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasNarrowSynonym "surface IgG3"^^xsd:string + + SubClassOf: + obo:GO_0071735, + obo:GO_0019815 + + +Class: obo:GO_0071738 + + Annotations: + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + oboInOwl:id "GO:0071738"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:11282392"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgD isotype and two identical immunoglobulin light chains, held together by disulfide bonds. An IgD immunoglobulin complex may be embedded in the plasma membrane or present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + rdfs:label "IgD immunoglobulin complex"^^xsd:string, + rdfs:comment "Note that an IgD immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string + + SubClassOf: + obo:GO_0019814 + + +Class: obo:GO_0071739 + + Annotations: + rdfs:label "IgD immunoglobulin complex, circulating"^^xsd:string, + oboInOwl:hasOBONamespace "cellular_component"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string + oboInOwl:hasExactSynonym "IgD antibody"^^xsd:string, + oboInOwl:id "GO:0071739"^^xsd:string, + + Annotations: oboInOwl:hasDbXref "GOC:add"^^xsd:string, + oboInOwl:hasDbXref "ISBN:0781765196"^^xsd:string, + oboInOwl:hasDbXref "PMID:11282392"^^xsd:string + obo:IAO_0000115 "A protein complex composed of two identical immunoglobulin heavy chains of the IgD isotype and two identical immunoglobulin light chains, held together by disulfide bonds, and present in the extracellular space, in mucosal areas or other tissues, or circulating in the blood or lymph."^^xsd:string, + rdfs:comment "Note that an IgD immunoglobulin complex has the function of antigen binding if a suitable antigen is available."^^xsd:string + + SubClassOf: + obo:GO_0042571, + obo:GO_0071738 + + diff --git a/tutorial/resources/BDK14-exercises/basic-restriction/chromosome-parts-interim.owl b/tutorial/resources/BDK14-exercises/basic-restriction/chromosome-parts-interim.owl new file mode 100644 index 000000000..954b866d5 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-restriction/chromosome-parts-interim.owl @@ -0,0 +1,536 @@ + + + + + + + + + + +]> + + + + + 1.2 + + + + + + + + High-level terms not to be used for direct annotation + + + + shorthand + + + in_subset + + + has_scope + + + has_obo_format_version + + + PIR GO slim + + + + Plant GO slim + + + + definition + + + database_cross_reference + + + Aspergillus GO slim + + + + Generic GO slim + + + + has_alternative_id + + + has_obo_namespace + + + Yeast GO slim + + + + subset_property + + + + synonym_type_property + + + Prokaryotic GO subset + + + + + has_exact_synonym + + + + has_related_synonym + + + Systematic synonym + + + + + Fission yeast GO slim + + + + Candida GO slim + + + + has_narrow_synonym + + + Catalytic activity terms in need of attention + + + + + + + + + + + + + + + + + + + chromosome, centromeric region + + GO:0000775 + Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + cellular_component + centromere + chromosome, centric region + chromosome, pericentric region + + + GOC:elh + GOC:kmv + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + + + + + + + + + + chromosome, telomeric region + + GO:0000781 + Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + cellular_component + telomere + + + GOC:elh + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + + + + + + + + + + chromatin + + GO:0000785 + GO:0005717 + NIF_Subcellular:sao1615953555 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + cellular_component + chromosome scaffold + + + GOC:elh + PMID:20404130 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + + + + + + + + + + cellular_component + GO:0005575 + GO:0008372 + NIF_Subcellular:sao1337158144 + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + cellular component + cellular component unknown + cellular_component + + + + + + + + + + GOC:go_curators + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + + + + + + + + + + intracellular + + GO:0005622 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + cellular_component + internal to cell + nucleocytoplasm + protoplasm + protoplast + + + + + + + GOC:mah + nucleocytoplasm + + + + + GOC:mah + protoplast + + + + + ISBN:0198506732 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + + + + + + + + + + cell + + + + + + + + + chromosome + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0005694 + Wikipedia:Chromosome + cellular_component + chromatid + interphase chromosome + prophase chromosome + + + + + + + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + ISBN:0198547684 + + + + + + + + + + chromocenter + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + GO:0010369 + cellular_component + + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + PMID:12384572 + PMID:15053486 + PMID:16831888 + + + + + + + + + + organelle + + + GO:0043226 + NIF_Subcellular:sao1539965131 + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + Wikipedia:Organelle + cellular_component + + + + + + GOC:go_curators + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + + + + + + + + + + non-membrane-bounded organelle + + GO:0043228 + NIF_Subcellular:sao1456184038 + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + cellular_component + non-membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + + + + + + + + + + intracellular organelle + + + GO:0043229 + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + + + + + + + + + + organelle part + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GO:0044422 + cellular_component + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + intracellular part + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GO:0044424 + cellular_component + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + chromosomal part + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0044427 + cellular_component + chromosomal component + chromosome component + chromosome part + + + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GOC:jl + + + + + + + + + + intracellular organelle part + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GO:0044446 + cellular_component + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + cell part + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GO:0044464 + cellular_component + protoplast + + + + + GOC:mah + protoplast + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + + + + + + DNA replication termination region + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GO:0097047 + TER + cellular_component + + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GOC:mcc + GOC:pr + PMID:20797631 + + + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/basic-restriction/chromosomePartsInterimAS.owl b/tutorial/resources/BDK14-exercises/basic-restriction/chromosomePartsInterimAS.owl new file mode 100644 index 000000000..5a13b9036 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-restriction/chromosomePartsInterimAS.owl @@ -0,0 +1,660 @@ + + + + + + + + + + +]> + + + + + 1.2 + + + + + + + + + + + + + definition + + + + + + + + Aspergillus GO slim + + + + + + + + + Candida GO slim + + + + + + + + + Generic GO slim + + + + + + + + + PIR GO slim + + + + + + + + + Plant GO slim + + + + + + + + + Fission yeast GO slim + + + + + + + + + Yeast GO slim + + + + + + + + + Prokaryotic GO subset + + + + + + + + + High-level terms not to be used for direct annotation + + + + + + + + + Catalytic activity terms in need of attention + + + + + + + + + Systematic synonym + + + + + + + + + + subset_property + + + + + + + + synonym_type_property + + + + + + + + has_alternative_id + + + + + + + + database_cross_reference + + + + + + + + has_exact_synonym + + + + + + + + has_narrow_synonym + + + + + + + + has_obo_format_version + + + + + + + + has_obo_namespace + + + + + + + + has_related_synonym + + + + + + + + has_scope + + + + + + + + + + + + + + in_subset + + + + + + + + shorthand + + + + + + + + + + + + + + + + + + + + + + + + + chromosome, centromeric region + + GO:0000775 + Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + cellular_component + centromere + chromosome, centric region + chromosome, pericentric region + + + GOC:elh + GOC:kmv + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + + + + + + + + + + chromosome, telomeric region + + GO:0000781 + Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + cellular_component + telomere + + + GOC:elh + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + + + + + + + + + + chromatin + + GO:0000785 + GO:0005717 + NIF_Subcellular:sao1615953555 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + cellular_component + chromosome scaffold + + + GOC:elh + PMID:20404130 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + + + + + + + + + + cellular_component + GO:0005575 + GO:0008372 + NIF_Subcellular:sao1337158144 + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + cellular component + cellular component unknown + cellular_component + + + + + + + + + + GOC:go_curators + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + + + + + + + + + + intracellular + + GO:0005622 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + cellular_component + internal to cell + nucleocytoplasm + protoplasm + protoplast + + + + + + + GOC:mah + nucleocytoplasm + + + + + GOC:mah + protoplast + + + + + ISBN:0198506732 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + + + + + + + + + + cell + + + + + + + + + chromosome + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0005694 + Wikipedia:Chromosome + cellular_component + chromatid + interphase chromosome + prophase chromosome + + + + + + + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + ISBN:0198547684 + + + + + + + + + + chromocenter + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + GO:0010369 + cellular_component + + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + PMID:12384572 + PMID:15053486 + PMID:16831888 + + + + + + + + + + organelle + + + GO:0043226 + NIF_Subcellular:sao1539965131 + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + Wikipedia:Organelle + cellular_component + + + + + + GOC:go_curators + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + + + + + + + + + + non-membrane-bounded organelle + + GO:0043228 + NIF_Subcellular:sao1456184038 + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + cellular_component + non-membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + + + + + + + + + + intracellular organelle + + + GO:0043229 + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + + + + + + + + + + organelle part + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GO:0044422 + cellular_component + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + intracellular part + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GO:0044424 + cellular_component + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + chromosomal part + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0044427 + cellular_component + chromosomal component + chromosome component + chromosome part + + + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GOC:jl + + + + + + + + + + intracellular organelle part + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GO:0044446 + cellular_component + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + cell part + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GO:0044464 + cellular_component + protoplast + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + GOC:mah + protoplast + + + + + + + + + + DNA replication termination region + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GO:0097047 + TER + cellular_component + + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GOC:mcc + GOC:pr + PMID:20797631 + + + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/basic-restriction/er-sec-complex.owl b/tutorial/resources/BDK14-exercises/basic-restriction/er-sec-complex.owl new file mode 100644 index 000000000..220fb03c1 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-restriction/er-sec-complex.owl @@ -0,0 +1,1097 @@ + + + + 1.2 + + + + + + + + + + + + + definition + + + + + + + + Aspergillus GO slim + + + + + + + + + Candida GO slim + + + + + + + + + Generic GO slim + + + + + + + + + PIR GO slim + + + + + + + + + Plant GO slim + + + + + + + + + Fission yeast GO slim + + + + + + + + + Yeast GO slim + + + + + + + + + Prokaryotic GO subset + + + + + + + + + High-level terms not to be used for direct annotation + + + + + + + + + Catalytic activity terms in need of attention + + + + + + + + + + Systematic synonym + + + + + + + + + subset_property + + + + + + + + synonym_type_property + + + + + + + + has_alternative_id + + + + + + + + database_cross_reference + + + + + + + + has_exact_synonym + + + + + + + + has_narrow_synonym + + + + + + + + has_obo_format_version + + + + + + + + has_obo_namespace + + + + + + + + has_related_synonym + + + + + + + + has_scope + + + + + + + + + + + + + + in_subset + + + + + + + + shorthand + + + + + + + + + + + + + + + + + + + + + + + + + + BFO:0000050 + OBO_REL:part_of + gene_ontology + part_of + part_of + part_of + + + + + + + + + BFO:0000051 + OBO_REL:has_part + gene_ontology + has_part + has_part + has_part + + + + + + + + + + + + + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + GO:0008372 + NIF_Subcellular:sao1337158144 + cellular component + cellular component unknown + cellular_component + GO:0005575 + + + + + + + + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + cellular_component + + + + + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + GOC:go_curators + + + + + + + + + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + internal to cell + protoplasm + cellular_component + nucleocytoplasm + protoplast + GO:0005622 + + + + + intracellular + + + + + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + ISBN:0198506732 + + + + + nucleocytoplasm + GOC:mah + + + + + protoplast + GOC:mah + + + + + + + + + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + NIF_Subcellular:sao1813327414 + Wikipedia:Cell_(biology) + cellular_component + GO:0005623 + + + + cell + + + + + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + GOC:go_curators + + + + + + + + + All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + Wikipedia:Cytoplasm + cellular_component + GO:0005737 + + + + + + cytoplasm + + + + + All of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + ISBN:0198547684 + + + + + + + + + + The irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The ER takes two forms, rough (or granular), with ribosomes adhering to the outer surface, and smooth (with no ribosomes attached). + NIF_Subcellular:sao1036339110 + Wikipedia:Endoplasmic_reticulum + ER + cellular_component + GO:0005783 + + + + + + + endoplasmic reticulum + + + + + The irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. The ER takes two forms, rough (or granular), with ribosomes adhering to the outer surface, and smooth (with no ribosomes attached). + ISBN:0198506732 + + + + + + + + + A translocon complex that contains a core heterotrimer of conserved alpha, beta and gamma subunits, and may contain additional proteins (translocon-associated proteins or TRAPs); in budding yeast the core proteins are Sec61p, Sbh1p, and Sss1p. The Sec61 translocon complex functions in cotranslational and posttranslational translocation events. + Sec61p-Sbh1p-Sss1p complex + cellular_component + GO:0005784 + + Sec61 translocon complex + + + + + A translocon complex that contains a core heterotrimer of conserved alpha, beta and gamma subunits, and may contain additional proteins (translocon-associated proteins or TRAPs); in budding yeast the core proteins are Sec61p, Sbh1p, and Sss1p. The Sec61 translocon complex functions in cotranslational and posttranslational translocation events. + GOC:mah + PMID:18166647 + + + + + Sec61p-Sbh1p-Sss1p complex + GOC:mah + + + + + + + + + + + + + + + + + The lipid bilayer surrounding the endoplasmic reticulum. + ER membrane + cellular_component + GO:0005789 + endoplasmic reticulum membrane + + + + + The lipid bilayer surrounding the endoplasmic reticulum. + GOC:mah + + + + + + + + + The rough (or granular) endoplasmic reticulum (ER) has ribosomes adhering to the outer surface; the ribosomes are the site of translation of the mRNA for those proteins which are either to be retained within the cisternae (ER-resident proteins), the proteins of the lysosomes, or the proteins destined for export from the cell. Glycoproteins undergo their initial glycosylation within the cisternae. + NIF_Subcellular:sao1881364067 + Wikipedia:Endoplasmic_reticulum#Rough_endoplasmic_reticulum + RER + rough ER + cellular_component + GO:0005791 + rough endoplasmic reticulum + + + + + The rough (or granular) endoplasmic reticulum (ER) has ribosomes adhering to the outer surface; the ribosomes are the site of translation of the mRNA for those proteins which are either to be retained within the cisternae (ER-resident proteins), the proteins of the lysosomes, or the proteins destined for export from the cell. Glycoproteins undergo their initial glycosylation within the cisternae. + ISBN:0198506732 + + + + + + + + + A collection of membranous structures involved in transport within the cell. The main components of the endomembrane system are endoplasmic reticulum, Golgi bodies, vesicles, cell membrane and nuclear envelope. Members of the endomembrane system pass materials through each other or though the use of vesicles. + Wikipedia:Endomembrane_system + cellular_component + GO:0012505 + + + + endomembrane system + + + + + A collection of membranous structures involved in transport within the cell. The main components of the endomembrane system are endoplasmic reticulum, Golgi bodies, vesicles, cell membrane and nuclear envelope. Members of the endomembrane system pass materials through each other or though the use of vesicles. + GOC:lh + + + + + + + + + Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + Wikipedia:Biological_membrane + cellular_component + GO:0016020 + + + + + + + membrane + + + + + Double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GOC:mah + ISBN:0815316194 + + + + + + + + + + + + + + + The lipid bilayer surrounding the rough endoplasmic reticulum. + RER membrane + rough ER membrane + cellular_component + GO:0030867 + rough endoplasmic reticulum membrane + + + + + The lipid bilayer surrounding the rough endoplasmic reticulum. + GOC:mah + + + + + + + + + + + + + + + + The lipid bilayer surrounding an organelle. + cellular_component + GO:0031090 + + organelle membrane + + + + + The lipid bilayer surrounding an organelle. + GOC:mah + + + + + + + + + A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which the constituent parts function together. + macromolecule complex + cellular_component + GO:0032991 + + + macromolecular complex + + + + + A stable assembly of two or more macromolecules, i.e. proteins, nucleic acids, carbohydrates or lipids, in which the constituent parts function together. + GOC:mah + + + + + + + + + + + + + + + + The continuous network of membranes encompassing the nuclear outer membrane and the endoplasmic reticulum membrane. + nuclear membrane-ER network + nuclear membrane-endoplasmic reticulum continuum + cellular_component + NE-ER continuum + NE-ER network + nuclear envelope-ER network + nuclear envelope-endoplasmic reticulum continuum + nuclear envelope-endoplasmic reticulum network + GO:0042175 + nuclear outer membrane-endoplasmic reticulum membrane network + + + + + The continuous network of membranes encompassing the nuclear outer membrane and the endoplasmic reticulum membrane. + GOC:bf + GOC:jl + GOC:mah + GOC:mcc + GOC:pr + GOC:vw + + + + + nuclear membrane-ER network + GOC:mah + + + + + nuclear membrane-endoplasmic reticulum continuum + GOC:mah + + + + + nuclear envelope-endoplasmic reticulum network + GOC:mah + + + + + + + + + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + NIF_Subcellular:sao1539965131 + Wikipedia:Organelle + cellular_component + GO:0043226 + + + + organelle + + + + + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + GOC:go_curators + + + + + + + + + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + NIF_Subcellular:sao414196390 + membrane-enclosed organelle + cellular_component + GO:0043227 + + membrane-bounded organelle + + + + + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + GOC:go_curators + + + + + + + + + + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + GO:0043229 + + + intracellular organelle + + + + + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + GOC:go_curators + + + + + + + + + + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + intracellular membrane-enclosed organelle + cellular_component + GO:0043231 + + + intracellular membrane-bounded organelle + + + + + Organized structure of distinctive morphology and function, bounded by a single or double lipid bilayer membrane and occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, and vesicles. Excludes the plasma membrane. + GOC:go_curators + + + + + + + + + Any macromolecular complex composed of two or more polypeptide subunits, which may or may not be identical. Protein complexes may have other associated non-protein prosthetic groups, such as nucleotides, metal ions or other small molecules. + Wikipedia:Protein_complex + protein-protein complex + cellular_component + GO:0043234 + + + + protein complex + + + + + Any macromolecular complex composed of two or more polypeptide subunits, which may or may not be identical. Protein complexes may have other associated non-protein prosthetic groups, such as nucleotides, metal ions or other small molecules. + GOC:go_curators + + + + + + + + + + + + + + + + + + + + + + + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + cellular_component + GO:0044422 + + organelle part + + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + + + + + + + + + + + + + + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + cellular_component + GO:0044424 + + intracellular part + + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + + + + + + + + + + + + + + + + + Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + cellular_component + GO:0044425 + + membrane part + + + + + Any constituent part of a membrane, a double layer of lipid molecules that encloses all cells, and, in eukaryotes, many organelles; may be a single or double lipid bilayer; also includes associated proteins. + GOC:jl + + + + + + + + + + + + + + + + + + + + + + + + + + + Any constituent part of the endoplasmic reticulum, the irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. + ER component + cellular_component + GO:0044432 + endoplasmic reticulum part + + + + + Any constituent part of the endoplasmic reticulum, the irregular network of unit membranes, visible only by electron microscopy, that occurs in the cytoplasm of many eukaryotic cells. The membranes form a complex meshwork of tubular channels, which are often expanded into slitlike cavities called cisternae. + GOC:jl + + + + + + + + + + + + + + + + + + + + + + + + + + Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + cytoplasm component + cellular_component + GO:0044444 + + cytoplasmic part + + + + + Any constituent part of the cytoplasm, all of the contents of a cell excluding the plasma membrane and nucleus, but including other subcellular structures. + GOC:jl + + + + + + + + + + + + + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + cellular_component + GO:0044446 + + intracellular organelle part + + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + + + + + + + + + + + + + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + cellular_component + protoplast + GO:0044464 + + + cell part + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + protoplast + GOC:mah + + + + + + + + + + + + + + + + + A protein complex that constitutes a specific site of protein translocation across the endoplasmic reticulum, which involves the signal recognition particle receptor. The complex contains a core heterotrimer of alpha, beta and gamma subunits, and may contain additional proteins. + GO:0031206 + Sec complex-associated translocon complex + cellular_component + GO:0071256 + translocon complex + + + + + A protein complex that constitutes a specific site of protein translocation across the endoplasmic reticulum, which involves the signal recognition particle receptor. The complex contains a core heterotrimer of alpha, beta and gamma subunits, and may contain additional proteins. + GOC:mah + PMID:10611978 + PMID:18166647 + PMID:8612571 + + + + + Sec complex-associated translocon complex + GOC:mah + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/basic-subclass/chromosome-parts-interim.owl b/tutorial/resources/BDK14-exercises/basic-subclass/chromosome-parts-interim.owl new file mode 100644 index 000000000..03c64c69e --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-subclass/chromosome-parts-interim.owl @@ -0,0 +1,536 @@ + + + + + + + + + + +]> + + + + + 1.2 + + + + + + + + High-level terms not to be used for direct annotation + + + + shorthand + + + in_subset + + + has_scope + + + has_obo_format_version + + + PIR GO slim + + + + Plant GO slim + + + + definition + + + database_cross_reference + + + Aspergillus GO slim + + + + Generic GO slim + + + + has_alternative_id + + + has_obo_namespace + + + subset_property + + + Yeast GO slim + + + + + synonym_type_property + + + Prokaryotic GO subset + + + + + has_exact_synonym + + + + has_related_synonym + + + Systematic synonym + + + + + Fission yeast GO slim + + + + Candida GO slim + + + + has_narrow_synonym + + + Catalytic activity terms in need of attention + + + + + + + + + + + + + + + + + + + chromosome, centromeric region + + GO:0000775 + Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + cellular_component + centromere + chromosome, centric region + chromosome, pericentric region + + + GOC:elh + GOC:kmv + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + + + + + + + + + + chromosome, telomeric region + + GO:0000781 + Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + cellular_component + telomere + + + GOC:elh + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + + + + + + + + + + chromatin + + GO:0000785 + GO:0005717 + NIF_Subcellular:sao1615953555 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + cellular_component + chromosome scaffold + + + GOC:elh + PMID:20404130 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + + + + + + + + + + cellular_component + GO:0005575 + GO:0008372 + NIF_Subcellular:sao1337158144 + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + cellular component + cellular component unknown + cellular_component + + + + + + + + + + GOC:go_curators + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + + + + + + + + + + intracellular + + GO:0005622 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + cellular_component + internal to cell + nucleocytoplasm + protoplasm + protoplast + + + + + + + ISBN:0198506732 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + + + + + GOC:mah + protoplast + + + + + GOC:mah + nucleocytoplasm + + + + + + + + + + cell + + + + + + + + + chromosome + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0005694 + Wikipedia:Chromosome + cellular_component + chromatid + interphase chromosome + prophase chromosome + + + + + + + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + ISBN:0198547684 + + + + + + + + + + chromocenter + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + GO:0010369 + cellular_component + + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + PMID:12384572 + PMID:15053486 + PMID:16831888 + + + + + + + + + + organelle + + GO:0043226 + NIF_Subcellular:sao1539965131 + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + Wikipedia:Organelle + cellular_component + + + + + + GOC:go_curators + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + + + + + + + + + + non-membrane-bounded organelle + + GO:0043228 + NIF_Subcellular:sao1456184038 + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + cellular_component + non-membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + + + + + + + + + + intracellular organelle + + + GO:0043229 + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + + + + + + + + + + organelle part + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GO:0044422 + cellular_component + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + intracellular part + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GO:0044424 + cellular_component + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + chromosomal part + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0044427 + cellular_component + chromosomal component + chromosome component + chromosome part + + + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GOC:jl + + + + + + + + + + intracellular organelle part + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GO:0044446 + cellular_component + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + cell part + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GO:0044464 + cellular_component + protoplast + + + + + GOC:mah + protoplast + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + + + + + + DNA replication termination region + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GO:0097047 + TER + cellular_component + + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GOC:mcc + GOC:pr + PMID:20797631 + + + + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/basic-subclass/chromosome-parts.owl b/tutorial/resources/BDK14-exercises/basic-subclass/chromosome-parts.owl new file mode 100644 index 000000000..390d2a3e1 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/basic-subclass/chromosome-parts.owl @@ -0,0 +1,637 @@ + + + + 1.2 + + + + + + + + High-level terms not to be used for direct annotation + + + + shorthand + + + in_subset + + + has_scope + + + has_obo_format_version + + + PIR GO slim + + + + Plant GO slim + + + + definition + + + database_cross_reference + + + Aspergillus GO slim + + + + Generic GO slim + + + + has_alternative_id + + + has_obo_namespace + + + Yeast GO slim + + + + subset_property + + + + synonym_type_property + + + Prokaryotic GO subset + + + + + has_exact_synonym + + + + has_related_synonym + + + Systematic synonym + + + + + Fission yeast GO slim + + + + Candida GO slim + + + + has_narrow_synonym + + + Catalytic activity terms in need of attention + + + + + + + + + + + + + + + + + + + + part_of + BFO:0000050 + OBO_REL:part_of + gene_ontology + part_of + part_of + + + + + + + + + + + + + chromosome, centromeric region + + GO:0000775 + Note that this term can be used in place of the obsolete cellular component term 'centromere ; GO:0005698'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + cellular_component + centromere + chromosome, centric region + chromosome, pericentric region + + + GOC:elh + GOC:kmv + The region of a chromosome that includes the centromeric DNA and associated proteins. In monocentric chromosomes, this region corresponds to a single area of the chromosome, whereas in holocentric chromosomes, it is evenly distributed along the chromosome. + + + + + + + + + + chromosome, telomeric region + + GO:0000781 + Note that this term can be used in place of the obsolete cellular component term 'telomere ; GO:0005696'. Use with caution because this term refers to a specific region of the chromosome and not a protein complex. + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + cellular_component + telomere + + + GOC:elh + The terminal region of a linear chromosome that includes the telomeric DNA repeats and associated proteins. + + + + + + + + + + chromatin + + GO:0000785 + GO:0005717 + NIF_Subcellular:sao1615953555 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + cellular_component + chromosome scaffold + + + GOC:elh + PMID:20404130 + The ordered and organized complex of DNA, protein, and sometimes RNA, that forms the chromosome. + + + + + + + + + + cellular_component + GO:0005575 + GO:0008372 + NIF_Subcellular:sao1337158144 + Note that, in addition to forming the root of the cellular component ontology, this term is recommended for use for the annotation of gene products whose cellular component is unknown. Note that when this term is used for annotation, it indicates that no information was available about the cellular component of the gene product annotated as of the date the annotation was made; the evidence code ND, no data, is used to indicate this. + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + cellular component + cellular component unknown + cellular_component + + + + + + + + + + GOC:go_curators + The part of a cell or its extracellular environment in which a gene product is located. A gene product may be located in one or more parts of a cell and its location may be as specific as a particular macromolecular complex, that is, a stable, persistent association of macromolecules that function together. + + + + + + + + + + intracellular + + GO:0005622 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + Wikipedia:Intracellular + cellular_component + internal to cell + nucleocytoplasm + protoplasm + protoplast + + + + + + + GOC:mah + protoplast + + + + + GOC:mah + nucleocytoplasm + + + + + ISBN:0198506732 + The living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + + + + + + + + + + cell + + GO:0005623 + NIF_Subcellular:sao1813327414 + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + Wikipedia:Cell_(biology) + cellular_component + + + + + + GOC:go_curators + The basic structural and functional unit of all organisms. Includes the plasma membrane and any external encapsulating structures such as the cell wall and cell envelope. + + + + + + + + + + chromosome + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0005694 + Wikipedia:Chromosome + cellular_component + chromatid + interphase chromosome + prophase chromosome + + + + + + + + + A structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + ISBN:0198547684 + + + + + + + + + + chromocenter + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + GO:0010369 + cellular_component + + + A region in which centric, heterochromatic portions of one or more chromosomes form a compact structure. + PMID:12384572 + PMID:15053486 + PMID:16831888 + + + + + + + + + + organelle + + GO:0043226 + NIF_Subcellular:sao1539965131 + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + Wikipedia:Organelle + cellular_component + + + + + + GOC:go_curators + Organized structure of distinctive morphology and function. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, and prokaryotic structures such as anammoxosomes and pirellulosomes. Excludes the plasma membrane. + + + + + + + + + + non-membrane-bounded organelle + + GO:0043228 + NIF_Subcellular:sao1456184038 + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + cellular_component + non-membrane-enclosed organelle + + + + GOC:go_curators + Organized structure of distinctive morphology and function, not bounded by a lipid bilayer membrane. Includes ribosomes, the cytoskeleton and chromosomes. + + + + + + + + + + intracellular organelle + + + GO:0043229 + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + cellular_component + + + + + GOC:go_curators + Organized structure of distinctive morphology and function, occurring within the cell. Includes the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton. Excludes the plasma membrane. + + + + + + + + + + organelle part + + + + + + + + + + + + + + + + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GO:0044422 + cellular_component + + + + Any constituent part of an organelle, an organized structure of distinctive morphology and function. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton, but excludes the plasma membrane. + GOC:jl + + + + + + + + + + intracellular part + + + + + + + + + + + + + + + + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GO:0044424 + cellular_component + + + + Any constituent part of the living contents of a cell; the matter contained within (but not including) the plasma membrane, usually taken to exclude large vacuoles and masses of secretory or ingested material. In eukaryotes it includes the nucleus and cytoplasm. + GOC:jl + + + + + + + + + + chromosomal part + + + + + + + + + + + + + + + + + + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GO:0044427 + cellular_component + chromosomal component + chromosome component + chromosome part + + + + Any constituent part of a chromosome, a structure composed of a very long molecule of DNA and associated proteins (e.g. histones) that carries hereditary information. + GOC:jl + + + + + + + + + + intracellular organelle part + + + + + + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GO:0044446 + cellular_component + + + + A constituent part of an intracellular organelle, an organized structure of distinctive morphology and function, occurring within the cell. Includes constituent parts of the nucleus, mitochondria, plastids, vacuoles, vesicles, ribosomes and the cytoskeleton but excludes the plasma membrane. + GOC:jl + + + + + + + + + + cell part + + + + + + + + + + + + + + + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GO:0044464 + cellular_component + protoplast + + + + + Any constituent part of a cell, the basic structural and functional unit of all organisms. + GOC:jl + + + + + GOC:mah + protoplast + + + + + + + + + + DNA replication termination region + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GO:0097047 + TER + cellular_component + + + A chromosomal region that contains fork pausing elements influencing the progression and merging of DNA replication forks. + GOC:mcc + GOC:pr + PMID:20797631 + + + + + + + + + + diff --git a/tutorial/resources/BDK14-exercises/taxon-union/taxslim-with-union.owl b/tutorial/resources/BDK14-exercises/taxon-union/taxslim-with-union.owl new file mode 100644 index 000000000..555e41241 --- /dev/null +++ b/tutorial/resources/BDK14-exercises/taxon-union/taxslim-with-union.owl @@ -0,0 +1,32437 @@ + + + + + + + + + +]> + + + + 1.2 + + + + + + has_obo_format_version + + + + + + has_exact_synonym + + + + + + + + definition + + + + has_related_synonym + + + + database_cross_reference + + + + has_obo_namespace + + + + has_broad_synonym + + + + + + unknown + all + NCBITaxon:1 + root + + + + + + + + + unknown + NCBITaxon:10001 + Sciurus + + + + + + + + unknown + NCBITaxon:100127 + Euplotidae + + + + + + + + hamsters + unknown + NCBITaxon:10026 + Cricetinae + + + + + + + + + + + unknown + NCBITaxon:10028 + Cricetulus + + + + + + + + + Chinese hamster + Chinese hamsters + Cricetulus aureus + striped dwarf hamster + unknown + Cricetus griseus + NCBITaxon:10029 + Cricetulus griseus + + + + + lesser long-tailed hamster + long-tailed dwarf hamster + long-tailed hamster + unknown + NCBITaxon:10030 + Cricetulus longicaudatus + + + + + unknown + NCBITaxon:10033 + Cricetus + + + + + + + + black-bellied hamster + common hamster + unknown + NCBITaxon:10034 + Cricetus cricetus + + + + + unknown + NCBITaxon:10035 + Mesocricetus + + + + + + + + Syrian golden hamster + Syrian golden hamsters + Syrian hamster + golden hamster + Golden hamsters + Microcricetus aureus + Syrian hamsters + unknown + NCBITaxon:10036 + Mesocricetus auratus + + + + + unknown + NCBITaxon:10040 + Peromyscus + + + + + + + + deer mouse + unknown + Peromyscus maniculatis + NCBITaxon:10042 + Peromyscus maniculatus + + + + + unknown + NCBITaxon:10043 + Phodopus + + + + + + + + Djungarian hamster + Djungarian hamster also in use for Phodopus campbelli + Dzhungarian hamster + Siberian hamster + striped hairy-footed hamster + unknown + NCBITaxon:10044 + Phodopus sungorus + + + + + gerbils + unknown + NCBITaxon:10045 + Gerbillinae + + + + + + + + + jirds + unknown + NCBITaxon:10046 + Meriones + + + + + + + + Mongolian gerbil + Mongolian jird + unknown + NCBITaxon:10047 + Meriones unguiculatus + + + + + meadow voles + unknown + NCBITaxon:10053 + Microtus + + + + + + + + + blind mole-rats + unknown + NCBITaxon:10061 + Spalacinae + + + + + + + + unknown + NCBITaxon:10062 + Spalax + + + + + + + + unknown + NCBITaxon:10066 + Muridae + + + + + + + + + unknown + NCBITaxon:10069 + Akodon + + + + + + + + mice + unknown + Nannomys + NCBITaxon:10088 + Mus + + + + + + + + + + + + Ryukyu mouse + ricefield mouse + unknown + NCBITaxon:10089 + Mus caroli + + + + + house mouse + mouse + Mus muscaris + mice C57BL/6xCBA/CaJ hybrid + unknown + NCBITaxon:10090 + Mus musculus + + + + + + + + + + + + Mus castaneus + Mus musculus castenus + southeastern Asian house mouse + unknown + NCBITaxon:10091 + Mus musculus castaneus + + + + + western European house mouse + unknown + Mus domesticus + NCBITaxon:10092 + Mus musculus domesticus + + + + + mice + unknown + NCBITaxon:10095 + Mus sp. + + + + + Algerian mouse + western wild mouse + unknown + Mus musculus spretus + NCBITaxon:10096 + Mus spretus + + + + + unknown + NCBITaxon:100977 + Chactidae + + + + + + + + mound-building mouse + steppe mouse + unknown + Mus hortulanus + NCBITaxon:10103 + Mus spicilegus + + + + + African soft-furred rat + Natal multimammate mouse + Natal multimammate rat + unknown + Praomys natalensis + NCBITaxon:10112 + Mastomys natalensis + + + + + rat + rats + unknown + NCBITaxon:10114 + Rattus + + + + + + + + + + Norway rat + Rattus sp. strain Wistar + brown rat + rat + rats + Gunn rats + Rattus norvegicus8 + Rattus norwegicus + Rattus rattiscus + unknown + NCBITaxon:10116 + Rattus norvegicus + + + + + black rat + house rat + roof rat + unknown + NCBITaxon:10117 + Rattus rattus + + + + + rats + unknown + NCBITaxon:10118 + Rattus sp. + + + + + unknown + NCBITaxon:101186 + Halobatrachus + + + + + + + + unknown + NCBITaxon:101187 + Halobatrachus didactylus + + + + + cavies + unknown + NCBITaxon:10139 + Caviidae + + + + + + + + guinea pigs + guinea-pigs + unknown + NCBITaxon:10140 + Cavia + + + + + + + + + domestic guinea pig + guinea pig + Cavia aperea porcellus + Cavia cobaya + Cavia cobya + unknown + NCBITaxon:10141 + Cavia porcellus + + + + + unknown + NCBITaxon:10144 + Cavia cutleri + + + + + chinchillas + chinchillas and viscachas + unknown + NCBITaxon:10150 + Chinchillidae + + + + + + + + unknown + NCBITaxon:10151 + Chinchilla + + + + + + + + unknown + NCBITaxon:102210 + Benincasa + + + + + + + + ash gourd + wax gourd + winter melon + Cucurbita hispida + Curcurbita hispida + unknown + NCBITaxon:102211 + Benincasa hispida + + + + + unknown + unclassified tailed phages + NCBITaxon:102294 + unclassified Caudovirales + + + + + + + + unknown + NCBITaxon:102312 + Pteriidae + + + + + + + + Vira + Viridae + viruses + unknown + NCBITaxon:10239 + Viruses + + + + + + + + + + + unknown + NCBITaxon:10240 + Poxviridae + + + + + + + + unknown + NCBITaxon:10241 + Chordopoxvirinae + + + + + + + + unknown + NCBITaxon:10242 + Orthopoxvirus + + + + + + + + unknown + vaccinia virus VV + NCBITaxon:10245 + Vaccinia virus + + + + + + + + unknown + Vaccinia virus (strain Copenhagen) + NCBITaxon:10249 + Vaccinia virus Copenhagen + + + + + unknown + NCBITaxon:102804 + Asteroideae + + + + + + + + unknown + NCBITaxon:102814 + Heliantheae + + + + + + + + unknown + NCBITaxon:10292 + Herpesviridae + + + + + + + + + + unknown + NCBITaxon:10293 + Alphaherpesvirinae + + + + + + + + + + unknown + NCBITaxon:10294 + Simplexvirus + + + + + + + + HSV-1 + HSV1 + Herpes simplex virus 1 + Human herpesvirus type 1 + herpes simplex virus 1 HSV-1 + herpes simplex virus HSV-1 + herpes simplex virus type 1 HSV-1 + herpes simplex virus type 1 HSV1 + herpes simplex virus type-1 HSV-1 + Herpes simplex virus type 1 + unknown + NCBITaxon:10298 + Human herpesvirus 1 + + + + + + + + + + unknown + NCBITaxon:10299 + Herpes simplex virus (type 1 / strain 17) + + + + + unknown + Herpes simplex virus (type 1 / strain KOS) + NCBITaxon:10306 + Human herpesvirus 1 strain KOS + + + + + unknown + NCBITaxon:10308 + Herpes simplex virus (type 1 / strain Patton) + + + + + unknown + NCBITaxon:10319 + Varicellovirus + + + + + + + + Bovine herpesvirus type 1 + Bovine herpesvirus-1 + Bovine rhinotracheitis virus + bovine herpesvirus 1 BHV 1 + bovine herpesvirus 1 BHV-1 + bovine herpesvirus 1 BHV1 + bovine herpesvirus BHV-1 + bovine herpesvirus type 1 BHV-1 + bovine herpesvirus type-1 BHV-1 + infectious bovine rhinotracheitis virus + infectious bovine rhinotracheitis virus BHV-1 + BoHV-1 + unknown + NCBITaxon:10320 + Bovine herpesvirus 1 + + + + + + + + unknown + Bovine herpesvirus type 1 (strain P8-2) + NCBITaxon:10324 + Bovine herpesvirus type 1.1 (strain P8-2) + + + + + unknown + NCBITaxon:10357 + Betaherpesvirinae + + + + + + + + + unknown + NCBITaxon:10358 + Cytomegalovirus + + + + + + + + Human cytomegalovirus HCMV + human cytomegalovirus CMV + human herpesvirus type 5 + HHV-5 + Human cytomegalovirus + unknown + NCBITaxon:10359 + Human herpesvirus 5 + + + + + + + + Human cytomegalovirus (strain AD169) + Human herpesvirus 5 (strain AD169) + unknown + NCBITaxon:10360 + Human herpesvirus 5 strain AD169 + + + + + HHV6 + Herpesvirus type 6 + Human herpesvirus type 6 + herpes simplex virus type 6 + herpesvirus 6 HHV-6 + human herpesvirus 6 HHV-6 + human herpesvirus type 6 HHV-6 + HHV-6 + unknown + NCBITaxon:10368 + Human herpesvirus 6 + + + + + + + + Anabaena 7120 + Anabaena PCC7120 + Anabaena sp PCC 7120 + Anabaena sp. (ATCC 27893) + Anabaena sp. (PCC 7120) + Anabaena sp. (strain PCC 7120) + Anabaena sp. 7120 + Anabaena sp. DCC D0672 + Anabaena sp. IRRI 'Ab 47 XX' + Anabaena sp. PCC 7120 + Anabaena sp. PCC7120 + Anabaena sp. SAG 25.82 + Anabaena variabilis UTCC 387 + Nostoc (Anabaena) sp. PCC 7120 + Nostoc PCC7120 + Nostoc muscorum ISU + Nostoc sp. ATCC 27347 + Nostoc sp. ATCC 72893 + Nostoc sp. PCC7120 + Nostoc sp. strain PCC 7120 + unknown + NCBITaxon:103690 + Nostoc sp. PCC 7120 + + + + + unknown + Herpes simplex virus (type 6 / strain Uganda-1102) + NCBITaxon:10370 + Human herpesvirus 6 (strain Uganda-1102) + + + + + lymphoproliferative virus group + unknown + NCBITaxon:10374 + Gammaherpesvirinae + + + + + + + + + unknown + NCBITaxon:10375 + Lymphocryptovirus + + + + + + + + Epstein-Barr virus EBV + Epstein-Barr-virus EBV + Human herpesvirus type 4 + Epstein-Barr virus + unknown + NCBITaxon:10376 + Human herpesvirus 4 + + + + + + + + Epstein-Barr virus (strain B95-8) + unknown + NCBITaxon:10377 + Human herpesvirus 4 (strain B95-8) + + + + + unknown + NCBITaxon:10379 + Rhadinovirus + + + + + + + + + + + Herpesvirus saimiri 2 + Saimirine herpesvirus 2 + herpesvirus saimiri HVS + Herpesvirus saimiri + unknown + NCBITaxon:10381 + Saimiriine herpesvirus 2 + + + + + + + + unknown + Pseudaletia + NCBITaxon:103830 + Mythimna + + + + + + + + unknown + Herpesvirus saimiri (SUBGROUP C / STRAIN 488) + NCBITaxon:10384 + Herpesvirus saimiri (strain 488) + + + + + GaHV-1 + ILTV + Avian infectious laryngotracheitis virus + Gallid herpesvirus type 1 + Infectious laryngotracheitis virus + Laryngotracheitis virus + infectious laryngotracheitis virus ILTV + unknown + NCBITaxon:10386 + Gallid herpesvirus 1 + + + + + unknown + NCBITaxon:103868 + Uroctoninae + + + + + + + + unknown + NCBITaxon:103887 + Bionectriaceae + + + + + + + + unknown + Protobotrops + NCBITaxon:103943 + Protobothrops + + + + + + + + hepatitis B-type viruses + unknown + NCBITaxon:10404 + Hepadnaviridae + + + + + + + + mammalian hepatitis B-type viruses + unknown + NCBITaxon:10405 + Orthohepadnavirus + + + + + + + + Human hepatitis B virus + hepatitis B virus (HBV) + hepatitis B virus HBV + hepatitis B virus, HBV + human hepatitis B virus HBV + HBV + unknown + NCBITaxon:10407 + Hepatitis B virus + + + + + unknown + NCBITaxon:104355 + Gloeophyllum trabeum + + + + + unknown + NCBITaxon:104366 + Pleurotaceae + + + + + + + + unknown + NCBITaxon:10442 + Baculoviridae + + + + + + + + unknown + NCBITaxon:104430 + Apoditrysia + + + + + + + + unknown + NCBITaxon:104431 + Obtectomera + + + + + + + + + + + + NPV + unknown + Nuclear polyhedrosis viruses + NCBITaxon:10444 + Nucleopolyhedrovirus + + + + + + + + + unknown + NCBITaxon:10508 + Adenoviridae + + + + + + + + + unknown + NCBITaxon:10509 + Mastadenovirus + + + + + + + + + + + Adenovirus type 2 + Human adenovirus type 2 + Mastadenovirus 2 + Mastadenovirus h2 + adenovirus-2 + unknown + NCBITaxon:10515 + Human adenovirus 2 + + + + + Adenovirus type 41 + Mastadenovirus 41 + Mastadenovirus h41 + human adenovirus 41 + unknown + NCBITaxon:10524 + Human adenovirus type 41 + + + + + Adenovirus type 9 + Mastadenovirus 9 + Mastadenovirus h9 + unknown + NCBITaxon:10527 + Human adenovirus type 9 + + + + + Mastadenovirus mus + Mastadenovirus mus1 + Mouse adenovirus + Mouse adenovirus type 1 + Murine adenovirus + mouse adenovirus 1 + murine adenovirus type 1 + murine adenovirus type 1 Mav1 + MAV-1 + unknown + NCBITaxon:10530 + Murine adenovirus 1 + + + + + Aspergillus awamorii + Aspergillus niger var. awamori + Aspergillus niger var. awamorii + unknown + NCBITaxon:105351 + Aspergillus awamori + + + + + unknown + NCBITaxon:105387 + Scolecida + + + + + + + + unknown + NCBITaxon:105389 + Palpata + + + + + + + + + unknown + NCBITaxon:105390 + Aciculata + + + + + + + + unknown + NCBITaxon:105391 + Canalipalpata + + + + + + + + unknown + NCBITaxon:105399 + Anemonia majano + + + + + unknown + NCBITaxon:105400 + Discosoma striata + + + + + unknown + NCBITaxon:105401 + Zoanthus + + + + + + + + unknown + NCBITaxon:105402 + Zoanthus sp. + + + + + unknown + NCBITaxon:10552 + Aviadenovirus + + + + + + + + Adenovirus a1 + Aviadenovirus gal1 + Avian adenovirus gal1 + Avian adenovirus gal1 (STRAIN PHELPS) + Fowl adenovirus 1 (CELO, 112, Phelps) + Fowl adenovirus gal1 + avian adenovirus CELO + fowel adenovirus 1 + fowl adenovirus gal1 (STRAIN PHELPS) + CELO + unknown + NCBITaxon:10553 + Fowl adenovirus 1 + + + + + unknown + Montipora efforescens + NCBITaxon:105610 + Montipora efflorescens + + + + + unknown + human papillomavirus HPV + NCBITaxon:10566 + Human papillomavirus + + + + + unknown + NCBITaxon:10583 + Human papillomavirus type 1a + + + + + unknown + Human papillomavirus - 44 + NCBITaxon:10592 + Human papillomavirus type 44 + + + + + + + + unknown + NCBITaxon:106178 + canis group + + + + + + + + phagocytophila group + unknown + NCBITaxon:106179 + phagocytophilum group + + + + + + + + unknown + NCBITaxon:106220 + Mytiloidea + + + + + + + + unknown + NCBITaxon:106231 + Mactroidea + + + + + + + + unknown + Polyomaviruses + NCBITaxon:10624 + Polyomavirus + + + + + + + + + Polyomavirus maccacae + Polyomavirus maccacae 1 + Rhesus macaque polyomavirus + rhesus polyomavirus + SV40 + unknown + NCBITaxon:10633 + Simian virus 40 + + + + + Polyomavirus muris + mouse polyomavirus + unknown + NCBITaxon:10634 + Murine polyomavirus + + + + + + + + unknown + NCBITaxon:106348 + Myospalacinae + + + + + + + + unknown + Mouse polyomavirus (strain A2) + NCBITaxon:10636 + Murine polyomavirus strain A2 + + + + + Cupriavidus Makkar and Casida 1987 emend. Vandamme and Coenye 2004 + Wautersia + Wautersia Vaneechoutte et al. 2004 + Cupravidus + unknown + NCBITaxon:106589 + Cupriavidus + + + + + + + + Alcaligenes eutrophus + Alcaligenes eutrophus Davis 1969 (Approved Lists 1980) + Cupriavidus necator Makkar and Casida 1987 + Hydrogenomonas eutropha + Ralstonia eutropha + Ralstonia eutropha (Davis 1969) Yabuuchi et al. 1996 + Wautersia eutropha + Wautersia eutropha (Davis 1969) Vaneechoutte et al. 2004 + Cupravidus necator + unknown + NCBITaxon:106590 + Cupriavidus necator + + + + + + + + phages with contractile tails + unknown + NCBITaxon:10662 + Myoviridae + + + + + + + + + T4 phage group + T4-like phages + unknown + NCBITaxon:10663 + T4-like viruses + + + + + + + + unknown + NCBITaxon:106649 + Acinetobacter genomosp. 11 + + + + + Bacteriophage T4 + coliphage T4 + phage T4 + T4 + unknown + NCBITaxon:10665 + Enterobacteria phage T4 + + + + + Bacteriophage PBS2 + phage PBS2 + unknown + NCBITaxon:10684 + Bacillus phage PBS2 + + + + + phages with short tails + unknown + NCBITaxon:10744 + Podoviridae + + + + + + + + unknown + NCBITaxon:107460 + Amaurobiidae + + + + + + + + Bacteriophage T7 + phage T7 + unknown + NCBITaxon:10760 + Enterobacteria phage T7 + + + + + unknown + Rhodospirillum Molisch 1907 (Approved Lists 1980) emend. Imhoff et al. 1998 + NCBITaxon:1081 + Rhodospirillum + + + + + + + + Dicrospirillum rubrum + Rhodospirillum giganteum + Rhodospirillum gracile + Rhodospirillum longum + Rhodospirillum rubrum (Esmarch 1887) Molisch 1907 + Spirillum rubrum + unknown + NCBITaxon:1085 + Rhodospirillum rubrum + + + + + unknown + anamorphic Ascomycota + NCBITaxon:108599 + mitosporic Ascomycota + + + + + + + + unknown + NCBITaxon:10880 + Reoviridae + + + + + + + + 'Chlorobi' + Chlorobi + Green sulfur bacteria + green sulfur bacteria + unknown + NCBITaxon:1090 + Chlorobi + + + + + + + + unknown + Rotaviruses + NCBITaxon:10912 + Rotavirus + + + + + + + + unknown + Cullen Medik. + NCBITaxon:109218 + Cullen + + + + + + + + Simian 11 rotavirus + Simian 11 rotavirus (strain SA11) + Simian 11 rotavirus strain SA11 + Simian rotavirus SA11 + unknown + NCBITaxon:10923 + Simian rotavirus A/SA11 + + + + + + + + Chlorobaculum tepidum (Wahlund et al. 1996) Imhoff 2003 + Chlorobium tepidum + Chlorobium tepidum Wahlund et al. 1991 + Chlorobium tepidum Wahlund et al. 1996 + unknown + NCBITaxon:1097 + Chlorobaculum tepidum + + + + + unknown + NCBITaxon:110158 + Sordariales incertae sedis + + + + + + + + unknown + NCBITaxon:11018 + Togaviridae + + + + + + + + arboviruses group A + unknown + Alphaviridae + NCBITaxon:11019 + Alphavirus + + + + + + + + unknown + NCBITaxon:110217 + Proatheris + + + + + + + + unknown + NCBITaxon:110218 + Proatheris superciliaris + + + + + unknown + Middleburg virus + NCBITaxon:11023 + Middelburg virus + + + + + Oryza granulata Nees & Arn. ex G.Watt + Oryza meyeriana var. granulata + Oryza meyeriana var. granulata (Nees & Arn. ex G.Watt) Duist. + unknown + NCBITaxon:110450 + Oryza granulata + + + + + unknown + Oryza schlechteri Pilg. + NCBITaxon:110451 + Oryza schlechteri + + + + + Podovirus + T7 phage group + T7-like phages + unknown + NCBITaxon:110456 + T7-like viruses + + + + + + + + unknown + Flavivirus (arbovirus group B) + NCBITaxon:11050 + Flaviviridae + + + + + + + + + arboviruses group B + unknown + NCBITaxon:11051 + Flavivirus + + + + + + + + + unknown + Dengue viruses + NCBITaxon:11052 + Dengue virus group + + + + + + + + unknown + NCBITaxon:110551 + Myxininae + + + + + + + + unknown + NCBITaxon:110555 + Myxine + + + + + + + + unknown + NCBITaxon:110564 + Bionectria + + + + + + + + filamentous anoxygenic phototrophic bacteria + photosynthetic flexibacteria + 'Chloroflexaceae' + Chloroflexaceae + unknown + NCBITaxon:1106 + Chloroflexaceae + + + + + + + + dengue 2 virus DEN-2 + dengue-2 virus + dengue-2 virus DEN-2 + unknown + NCBITaxon:11060 + Dengue virus type 2 + + + + + + + + unknown + NCBITaxon:110618 + Nectriaceae + + + + + + + + + Dengue virus NGC + Dengue virus prototype strain New Guinea C (NGC) + Dengue virus type 2 (NGC-prototype) + Dengue virus type 2 (strain New Guinea C) + unknown + NCBITaxon:11065 + Dengue virus type 2 Thailand/NGS-C/1944 + + + + + unknown + Chloroflexus Pierson and Castenholz 1974 + NCBITaxon:1107 + Chloroflexus + + + + + + + + unknown + Japanese encephalitis viruses + NCBITaxon:11071 + Japanese encephalitis virus group + + + + + + + + unknown + NCBITaxon:11077 + Kunjin virus + + + + + unknown + Chloroflexus aurantiacus Pierson and Castenholz 1974 + NCBITaxon:1108 + Chloroflexus aurantiacus + + + + + WNV + unknown + NCBITaxon:11082 + West Nile virus + + + + + + + + Hepatitis C virus group + Hepatitis C viruses + Hepatitis C-like viruses + unknown + NCBITaxon:11102 + Hepacivirus + + + + + + + + Hepatitis C + hepatitis C virus HCV + human hepatitis C virus + human hepatitis C virus HCV + human hepatitis virus C HCV + human hepatitis virus HCV + post-transfusion hepatitis non A non B virus + HCV + unknown + NCBITaxon:11103 + Hepatitis C virus + + + + + + + + + HCV-H + unknown + Hepatitis C virus isolate H + NCBITaxon:11108 + Hepatitis C virus (isolate H) + + + + + unknown + NCBITaxon:11113 + Hepatitis C virus (isolate HC-J6) + + + + + unknown + NCBITaxon:111177 + Oxyuranus microlepidotus + + + + + unknown + NCBITaxon:11118 + Coronaviridae + + + + + + + + unknown + NCBITaxon:11119 + Coronavirus + + + + + + + + + BCV + BECV + Bovine enteritic coronavirus + Bovine enteritic coronavirus BECV + bovine coronavirus BCV + bovine enteric coronavirus + calf diarrheal coronavirus + neonatal calf diarrhea virus + unknown + NCBITaxon:11128 + Bovine coronavirus + + + + + + + + + + + + + + + + + unknown + Bovine coronavirus (STRAIN F15) + NCBITaxon:11129 + Bovine coronavirus strain F15 + + + + + unknown + Bovine coronavirus (STRAIN L9) + NCBITaxon:11130 + Bovine coronavirus strain L9 + + + + + unknown + Bovine coronavirus (STRAIN LY-138) + NCBITaxon:11131 + Bovine coronavirus LY-138 + + + + + Bovine coronavirus (STRAIN MEBUS) + Bovine coronavirus strain Mebus + unknown + NCBITaxon:11132 + Bovine coronavirus Mebus + + + + + unknown + Bovine coronavirus (STRAIN QUEBEC) + NCBITaxon:11133 + Bovine coronavirus strain Quebec + + + + + unknown + Bovine coronavirus (STRAIN VACCINE) + NCBITaxon:11134 + Bovine coronavirus strain vaccine + + + + + Human coronavirus (STRAIN 229E) + Human coronavirus serogroup 229E + Human coronavirus strain 229E + HCoV-229E + unknown + NCBITaxon:11137 + Human coronavirus 229E + + + + + unknown + NCBITaxon:111520 + Penaeoidea + + + + + + + + blue-green algae + blue-green bacteria + cyanophytes + Cyanophyceae + Cyanophycota + Cyanophyta + Oxygenic photosynthetic bacteria + Oxyphotobacteria + cyanobacteria + unknown + NCBITaxon:1117 + Cyanobacteria + + + + + + + + + + + + unknown + NCBITaxon:1118 + Chroococcales + + + + + + + + + + + unknown + NCBITaxon:112883 + Lycium chinense + + + + + unknown + Anacystis + NCBITaxon:1129 + Synechococcus + + + + + + + + + unknown + NCBITaxon:113631 + Melanocarpus + + + + + + + + Anacystis nidulans + Anacystis nidulans R2 + Anacystis nidulans R2-SPc' + Syncchococcus PCC7942 + Synechococcus 7942 + Synechococcus PCC 7942 + Synechococcus PCC7942 + Synechococcus sp. (PCC 7942) + Synechococcus sp. (strain PCC 7942) + Synechococcus sp. IAM M-200 + Synechococcus sp. PCC7942 + Synechocystis sp. PCC 7942 + Synechococcus sp. PCC 7942 + unknown + NCBITaxon:1140 + Synechococcus elongatus PCC 7942 + + + + + unknown + Synechococystis + NCBITaxon:1142 + Synechocystis + + + + + + + + unknown + NCBITaxon:114657 + Dicranidae + + + + + + + + Synechocystis 6803 + Synechocystis PCC6803 + Synechocystis sp. (PCC 6803) + Synechocystis sp. (strain PCC 6803) + Synechocystis sp. PCC6803 + Aphanocapsa sp. (strain N-1) + Aphanocapsa sp. N-1 + Synechocystis sp. (ATCC 27184) + Synechocystis sp. ATCC 27184 + Synechocystis sp.PCC6803 + unknown + NCBITaxon:1148 + Synechocystis sp. PCC 6803 + + + + + unknown + anamorphic Hypocreales + NCBITaxon:115136 + mitosporic Hypocreales + + + + + + + + unknown + NCBITaxon:115338 + Acanthoscurria + + + + + + + + unknown + NCBITaxon:115339 + Acanthoscurria gomesiana + + + + + unknown + NCBITaxon:115404 + Notostigmophora + + + + + + + + unknown + NCBITaxon:115580 + Palaemonoidea + + + + + + + + unknown + NCBITaxon:115583 + Pandaloidea + + + + + + + + unknown + NCBITaxon:11571 + Bunyaviridae + + + + + + + + Nephila inaurata subsp. madagascariensis + Nephila madagascariensis + unknown + NCBITaxon:115969 + Nephila inaurata madagascariensis + + + + + unknown + Hantaviurs + NCBITaxon:11598 + Hantavirus + + + + + + + + unknown + NCBITaxon:1161 + Nostocales + + + + + + + + unknown + NCBITaxon:1162 + Nostocaceae + + + + + + + + + unknown + NCBITaxon:1163 + Anabaena + + + + + + + + unknown + NCBITaxon:11632 + Retroviridae + + + + + + + + + unknown + Spumavirinae + NCBITaxon:11640 + Spumavirus + + + + + + + + unknown + NCBITaxon:11642 + Simian foamy virus + + + + + + + + unknown + Lentivirinae + NCBITaxon:11646 + Lentivirus + + + + + + + + + unknown + Primate immunodeficiency viruses + NCBITaxon:11652 + Primate lentivirus group + + + + + + + + + unknown + Equine lentiviruses + NCBITaxon:11654 + Equine lentivirus group + + + + + + + + unknown + NCBITaxon:116569 + Neocopepoda + + + + + + + + unknown + NCBITaxon:116571 + Podoplea + + + + + + + + EIAV + unknown + equine infectious anemia virus EIAV + NCBITaxon:11665 + Equine infectious anemia virus + + + + + + + + unknown + NCBITaxon:11670 + Equine infectious anemia virus (CLONE 1369) + + + + + unknown + NCBITaxon:116704 + Eubrachyura + + + + + + + + unknown + Brachyrhyncha + NCBITaxon:116706 + Heterotremata + + + + + + + + + unknown + NCBITaxon:116716 + Heterotremata/Thoracotremata group + + + + + + + + HIV + HIV-1 + HIV1 + LAV-1 + AIDS virus + Human immundeficiency virus type 1 + Human immunodeficiencey virus type 1 + Human immunodeficiency virus type 1 + human immunodeficiency virus 1 HIV-1 + human immunodeficiency virus HIV-1 + human immunodeficiency virus type 1 ,HIV-1 + human immunodeficiency virus type 1 HIV 1 + human immunodeficiency virus type 1 HIV-1 + human immunodeficiency virus type 1 HIV1 + human immunodeficiency virus type 1, HIV-1 + human immunodeficiency virus type I HIV-1 + human immunodeficiency virus type-1 HIV-1 + human immunodeficiency virus-1 HIV-1 + unknown + NCBITaxon:11676 + Human immunodeficiency virus 1 + + + + + + + + + + + + + unknown + NCBITaxon:11678 + Human immunodeficiency virus type 1 (BH10 ISOLATE) + + + + + unknown + NCBITaxon:11679 + Human immunodeficiency virus type 1 (CLONE 12) + + + + + Anabaena PCC7119 + Anabaena sp. (ATCC 29151) + Anabaena sp. (PCC 7119) + Anabaena sp. (strain PCC 7119) + Anabaena sp. PCC 7119 + Nostoc PCC7119 + Nostoc sp. PCC7119 + unknown + NCBITaxon:1168 + Nostoc sp. PCC 7119 + + + + + unknown + NCBITaxon:11685 + Human immunodeficiency virus type 1 (ARV2/SF2 ISOLATE) + + + + + unknown + NCBITaxon:11686 + Human immunodeficiency virus type 1 (BRU ISOLATE) + + + + + unknown + NCBITaxon:11698 + Human immunodeficiency virus type 1 (NEW YORK-5 ISOLATE) + + + + + HIV + HIV-2 + HIV2 + LAV-2 + AIDS virus + HIV type 2 + Human immunodeficiency virus type 2 + Human immunodeficiency virus-2 + human immunodeficiency virus type 2 HIV-2 + human immunodeficiency virus type 2, HIV-2 + unknown + NCBITaxon:11709 + Human immunodeficiency virus 2 + + + + + + + + Anabaena ATCC29413 + Anabaena PCC7937 + Anabaena flos-aquae (strain IUCC 1444) + Anabaena sp. (ATCC 29413) + Anabaena sp. (PCC 7937) + Anabaena sp. (strain ATCC 29413) + Anabaena sp. (strain PCC 7937) + Anabaena sp. A37 + Anabaena sp. PCC 7937 + Anabaena sp. UTEX1444 + Nostoc PCC7937 + unknown + NCBITaxon:1172 + Anabaena variabilis + + + + + unknown + NCBITaxon:11720 + Human immunodeficiency virus type 2 (ISOLATE ROD) + + + + + Agnatha + fishes + unknown + NCBITaxon:117565 + Hyperotreti + + + + + + + + unknown + NCBITaxon:117570 + Teleostomi + + + + + + + + bony vertebrates + unknown + NCBITaxon:117571 + Euteleostomi + + + + + + + + + unknown + Amorphonostoc + NCBITaxon:1177 + Nostoc + + + + + + + + + + Murine leukemia viruses + murine leukemia virus MLV + murine leukemia virus MuLV + unknown + NCBITaxon:11786 + Murine leukemia virus + + + + + + + + unknown + NCBITaxon:117888 + Torpediniformes + + + + + + + + unknown + NCBITaxon:117893 + Batoidea + + + + + + + + unknown + NCBITaxon:117895 + Pristiorajea + + + + + + + + unknown + NCBITaxon:117896 + Hypnosqualea + + + + + + + + + unknown + NCBITaxon:117992 + Conus ventricosus + + + + + unknown + Squaliformes + NCBITaxon:117996 + Squaloidei + + + + + + + + Moloney murine leukemia virus M-MuLV + rat Moloney murine leukemia virus MoMuLV + unknown + NCBITaxon:11801 + Moloney murine leukemia virus + + + + + unknown + NCBITaxon:118040 + Squalea + + + + + + + + unknown + NCBITaxon:118077 + Ceratodontimorpha + + + + + + + + unknown + NCBITaxon:118078 + Ceratodontiformes + + + + + + + + unknown + anamorphic Saccharomycetales + NCBITaxon:118267 + mitosporic Saccharomycetales + + + + + + + + Avian musculoaponeurotic fibrosarcoma virus + Avian retrovirus AS42 + unknown + NCBITaxon:11873 + Avian musculoaponeurotic fibrosarcoma virus AS42 + + + + + unknown + Sulfolobaceae Stetter 1989 + NCBITaxon:118883 + Sulfolobaceae + + + + + + + + unknown + NCBITaxon:1189 + Stigonematales + + + + + + + + radio-resistant micrococci + unknown + Deinococcales Rainey et al. 1997 + NCBITaxon:118964 + Deinococcales + + + + + + + + Coxiella group + Coxiellaceae Garrity et al. 2005 + unknown + NCBITaxon:118968 + Coxiellaceae + + + + + + + + Legionellaceae group + Legionellales Garrity et al. 2005 + unknown + NCBITaxon:118969 + Legionellales + + + + + + + + + 'Burkholderiaceae' + Burkholderia group + unknown + NCBITaxon:119060 + Burkholderiaceae + + + + + + + + + + HTLV-1 + HTLV-I + Human T cell leukemia virus type 1 + Human T-cell leukemia virus type 1 + Human T-cell leukemia virus type I + Human T-cell leukemia virus type I HTLV-I + Human T-cell lymphotrophic virus type 1 + Human T-cell lymphotropic virus 1 + Human T-cell lymphotropic virus type 1 + Human T-cell lymphotropic virus type I + Human T-lymphotropic virus type 1 + Human adult T-cell leukemia virus + Human lymphotropic virus type I + human T cell leukemia virus type 1 HTLV-1 + human T cell leukemia virus type I HTLV-I + human T cell lymphotropic virus type I HTLV-I + human T-cell leukemia virus I + human T-cell leukemia virus type 1 HTLV-1 + human T-cell leukemia virus-1 HTLV-1 + human T-cell leukemia/lymphoma virus type I HTLV-I + human T-cell leukemia/lymphotropic virus type I HTLV-I + human T-cell lymphoma/leukemia virus type I HTLV-I + human T-cell lymphotropic virus type 1, HTLV-1 + human T-lymphotropic virus type 1 HTLV-1 + human T-lymphotropic virus type I HTLV-I + unknown + NCBITaxon:11908 + Human T-lymphotropic virus 1 + + + + + unknown + Adenophorea + NCBITaxon:119089 + Chromadorea + + + + + + + + + + unknown + NCBITaxon:119163 + Luteoviridae + + + + + + + + Betaluteovirus + Potleavirus + luteovirus subgroup II + unknown + NCBITaxon:119164 + Polerovirus + + + + + + + + unknown + NCBITaxon:119195 + Galeoidea + + + + + + + + + unknown + NCBITaxon:119197 + Galeomorphii + + + + + + + + unknown + NCBITaxon:119203 + Neoselachii + + + + + + + + + unknown + NCBITaxon:119258 + Bombyciformes + + + + + + + + Streptococcus dysgalactiae subsp. equisimilis Vandamme et al. 1996 emend. Vieira et al. 1998 + Streptococcus equisimilis + unknown + NCBITaxon:119602 + Streptococcus dysgalactiae subsp. equisimilis + + + + + unknown + NCBITaxon:119603 + Streptococcus dysgalactiae group + + + + + + + + unknown + foamy virus + NCBITaxon:11963 + Human spumaretrovirus + + + + + unknown + NCBITaxon:119743 + Rhabdosargus + + + + + + + + unknown + NCBITaxon:119829 + Astragalus membranaceus var. mongholicus + + + + + unknown + NCBITaxon:120569 + Mactra + + + + + + + + unknown + NCBITaxon:121164 + Pelophylax + + + + + + + + + Pseudoamolops + Rana Dubois 1992 + unknown + NCBITaxon:121175 + Rana [NCBITaxon:121175] + + + + + + + + + unknown + NCBITaxon:121178 + Pantherana + + + + + + + + + Prochlorales + Prochlorales (ex Lewin 1977) Florenzano et al. 1986 emend. Burger-Wiersma et al. 1989 + prochlorophytes + unknown + NCBITaxon:1212 + Prochlorales + + + + + + + + unknown + NCBITaxon:121236 + Aquarana + + + + + + + + + unknown + NCBITaxon:121406 + Anguilloidei + + + + + + + + unknown + 'Prochlorococcaceae' + NCBITaxon:1217 + Prochlorococcaceae + + + + + + + + unknown + Prochlorococcus Chisholm et al. 2001 + NCBITaxon:1218 + Prochlorococcus + + + + + + + + Prochlorococcus marinus Chisholm et al. 2001 + Prochlorococcus maritima + unknown + NCBITaxon:1219 + Prochlorococcus marinus + + + + + + + + + unknown + NCBITaxon:122377 + Litopenaeus + + + + + + + + + purple bacteria + purple bacteria and relatives + purple non-sulfur bacteria + purple photosynthetic bacteria + purple photosynthetic bacteria and relatives + Proteobacteria (as class) Stackebrandt et al. 1988 + Proteobacteria Garrity et al. 2005 + not Proteobacteria Cavalier-Smith 2002 + proteobacteria + unknown + NCBITaxon:1224 + Proteobacteria + + + + + + + + + + + + silvered leaf monkey + unknown + NCBITaxon:122765 + Trachypithecus cristatus + + + + + Bacteriophage c-st + Clostridium botulinum C bacteriophage + Clostridium botulinum C phage + Clostridium botulinum phage + Clostridium botulinum phage C strain Stockholm + Clostridium botulinum phage C-St + unknown + NCBITaxon:12336 + Clostridium phage c-st + + + + + + + + unknown + NCBITaxon:123365 + Neoteleostei + + + + + + + + unknown + NCBITaxon:123366 + Eurypterygii + + + + + + + + unknown + NCBITaxon:123367 + Ctenosquamata + + + + + + + + unknown + NCBITaxon:123368 + Acanthomorpha + + + + + + + + unknown + NCBITaxon:123369 + Euacanthomorpha + + + + + + + + unknown + NCBITaxon:123370 + Holacanthopterygii + + + + + + + + + Gammaproteobacteria Garrity et al. 2005 + Proteobacteria gamma subdivision + Purple bacteria, gamma subdivision + g-proteobacteria + gamma proteobacteria + gamma subdivision + gamma subgroup + unknown + NCBITaxon:1236 + Gammaproteobacteria + + + + + + + + + + + + + unknown + NCBITaxon:123677 + Fendlerella + + + + + + + + unknown + NCBITaxon:123678 + Fendlerella utahensis + + + + + unknown + NCBITaxon:123757 + Astrocoeniina + + + + + + + + unknown + NCBITaxon:123758 + Fungiina + + + + + + + + Buller's chipmunk + unknown + NCBITaxon:123784 + Tamias bulleri + + + + + Neotamias cincericolli + Tamias cinericollis + gray-collared chipmunk + unknown + NCBITaxon:123785 + Tamias cinereicollis + + + + + Merriam's chipmunk + unknown + Neotamias merriami + NCBITaxon:123787 + Tamias merriami + + + + + Palmer's chipmunk + unknown + NCBITaxon:123789 + Tamias palmeri + + + + + long-eared chipmunk + unknown + Neotamias quadrimaculatus + NCBITaxon:123791 + Tamias quadrimaculatus + + + + + Hopi chipmunk + unknown + Neotamias rufus + NCBITaxon:123793 + Tamias rufus + + + + + Sonoma chipmunk + unknown + Neotamias sonomae + NCBITaxon:123795 + Tamias sonomae + + + + + Townsend's chipmunk + unknown + Neotamias townsendii + NCBITaxon:123796 + Tamias townsendii + + + + + Gram-positive bacteria + low G+C Gram-positive bacteria + low GC Gram+ + Bacillus/Clostridium group + Clostridium group firmicutes + Firmacutes + Firmicutes corrig. Gibbons and Murray 1978 + Low G+C firmicutes + clostridial firmicutes + unknown + NCBITaxon:1239 + Firmicutes + + + + + + + + + unknown + NCBITaxon:124690 + Hybomitra + + + + + + + + common amaranth + redroot amaranth + rough pigweed + unknown + Amaranthus retroflexus L. + NCBITaxon:124763 + Amaranthus retroflexus + + + + + unknown + NCBITaxon:126287 + Didelphinae + + + + + + + + unknown + Ruminococcus Sijpesteijn 1948 + NCBITaxon:1263 + Ruminococcus + + + + + + + + + unknown + NCBITaxon:12637 + Dengue virus + + + + + + + + Equine herpesvirus 2 + not_Equid_herpesvirus_2 + Equine herpesvirus 2 strain 86/67 + equine cytomegalovirus + EHV-2 + unknown + NCBITaxon:12657 + Equid herpesvirus 2 + + + + + unknown + NCBITaxon:126766 + Philibertia + + + + + + + + unknown + NCBITaxon:126767 + Philibertia gilliesii + + + + + Micrococcaceae Pribham (sic) 1929 (Approved Lists 1980) emend. Stackebrandt et al. 1997 + Micrococcaceae Pribram 1929 (Approved Lists 1980) emend. Stackebrandt et al. 1997 + unknown + NCBITaxon:1268 + Micrococcaceae + + + + + + + + Micrococcus Cohn 1872 (Approved Lists 1980) emend. Wieser et al. 2002 + Micrococcus Cohn 1872 emend. Stackebrandt et al. 1995 + unknown + NCBITaxon:1269 + Micrococcus + + + + + + + + unknown + NCBITaxon:1271 + Micrococcus sp. + + + + + Aurococcus + Staphylococcus Rosenbach 1884 + unknown + NCBITaxon:1279 + Staphylococcus + + + + + + + + + + + Vibrio cholerae 01 + Vibrio cholerae serogroup O1 + unknown + NCBITaxon:127906 + Vibrio cholerae O1 + + + + + + + + Micrococcus aureus + Micrococcus pyogenes + Staphilococcus aureus + Staphlococcus pyogenes citreus + Staphylococcus aureus Rosenbach 1884 + Staphylococcus pyogenes aureus + Staphylococus aureus + Streptococcus aureus + unknown + NCBITaxon:1280 + Staphylococcus aureus + + + + + + + + unknown + NCBITaxon:128126 + Aequoreidae + + + + + + + + Albococcus epidermidis + Micrococcus epidermidis + Staphylococcus epidermidis (Winslow and Winslow 1908) Evans 1916 + Staphylococcus epidermidis albus + unknown + NCBITaxon:1282 + Staphylococcus epidermidis + + + + + + + + unknown + Staphylococcus haemolyticus Schleifer and Kloos 1975 + NCBITaxon:1283 + Staphylococcus haemolyticus + + + + + Micrococcus hyicus + Staphylococcus hyicus (Sompolinsky 1953) Devriese et al. 1978 + Staphylococcus hyicus hyicus + Staphylococcus hyicus subsp. hyicus + Staphylococcus hyicus subsp. hyicus (Sompolinski (sic) 1953) Devriese et al. 1978 + Staphylococcus hyicus subsp. hyicus (Sompolinsky 1953) Devriese et al. 1978 + unknown + NCBITaxon:1284 + Staphylococcus hyicus + + + + + unclassified + unclassified. + unknown + NCBITaxon:12908 + unclassified sequences + + + + + + + + unknown + Geobacillus Nazina et al. 2001 + NCBITaxon:129337 + Geobacillus + + + + + + + + 'Deinococcus-Thermus' + Thermus/Deinococcus group + unknown + NCBITaxon:1297 + Deinococcus-Thermus + + + + + + + + unknown + Deinococcus Brooks and Murray 1981 emend. Rainey et al. 1997 + NCBITaxon:1298 + Deinococcus + + + + + + + + Deinococcus radiodurans (ex Raj et al. 1960) Brooks and Murray 1981 + Micrococcus radiodurans + Deinococcus radiidurans + unknown + NCBITaxon:1299 + Deinococcus radiodurans + + + + + unknown + NCBITaxon:129947 + Euacanthopterygii + + + + + + + + unknown + NCBITaxon:129949 + Smegmamorpha + + + + + + + + HAdV-C + unknown + NCBITaxon:129951 + Human adenovirus C + + + + + + + + + unknown + NCBITaxon:129956 + Murine adenovirus A + + + + + + + + unknown + Carboxydothermus Svetlichny et al. 1991 + NCBITaxon:129957 + Carboxydothermus + + + + + + + + Carboxydothermus hydrogeniformans + Carboxydothermus hydrogenoformans Svetlichny et al. 1991 + unknown + NCBITaxon:129958 + Carboxydothermus hydrogenoformans + + + + + + + + unknown + Streptococcaceae Deibel and Seeley 1974 + NCBITaxon:1300 + Streptococcaceae + + + + + + + + + unknown + Streptococcus Rosenbach 1884 + NCBITaxon:1301 + Streptococcus + + + + + + + + + + + HAdV-F + unknown + NCBITaxon:130309 + Human adenovirus F + + + + + + + + HAdV-D + unknown + NCBITaxon:130310 + Human adenovirus D + + + + + + + + Dactylococcopsis Hansgirg 1888 + Myxobaktron Schmidle 1904 + Rhabdogloea Schroder 1917 + unknown + NCBITaxon:13034 + Dactylococcopsis + + + + + + + + Dactylococcopsis PCC 8305 + Dactylococcopsis PCC8305 + Dactylococcopsis sp. PCC8305 + Myxobactron salinum PCC 8305 + Dactylococcopsis sp. PCC 8305 + unknown + NCBITaxon:13035 + Dactylococcopsis salina PCC 8305 + + + + + Staphylococcus mutans + Streptococcus mutans Clarke 1924 + unknown + NCBITaxon:1309 + Streptococcus mutans + + + + + Charophyta/Embryophyta group + charophyte/embryophyte group + unknown + NCBITaxon:131221 + Streptophytina + + + + + + + + Micrococcus scarlatinae + Streptococcus erysipelatos + Streptococcus hemolyticus + Streptococcus pyogenes Rosenbach 1884 + Streptococcus pyrogenes + Streptococcus scarlatinae + unknown + NCBITaxon:1314 + Streptococcus pyogenes + + + + + unknown + NCBITaxon:13145 + Melopsittacus + + + + + + + + budgerigar + unknown + Melopsittacus unduratus + NCBITaxon:13146 + Melopsittacus undulatus + + + + + unknown + NCBITaxon:13149 + Microcebus + + + + + + + + + unknown + biota + NCBITaxon:131567 + cellular organisms + + + + + + + + + + unknown + NCBITaxon:13171 + Neobellieria + + + + + + + + Streptococcus group G + Streptococcus sp. (group G) + Streptococcus sp. group G + group G streptococcus + unknown + NCBITaxon:1320 + Streptococcus sp. 'group G' + + + + + unknown + NCBITaxon:13203 + Phlebotomus + + + + + + + + + Ruminococcus hansenii (Holdeman and Moore 1974) Ezaki et al. 1994 + Streptococcus hansenii + Streptococcus hansenii Holdeman and Moore 1974 (Approved Lists 1980) + unknown + NCBITaxon:1322 + Ruminococcus hansenii + + + + + unknown + NCBITaxon:132200 + Arctiinae + + + + + + + + unknown + NCBITaxon:133076 + Aphidinae + + + + + + + + Annona L. + Anonna + unknown + NCBITaxon:13336 + Annona + + + + + + + + Group II + Streptococcus dysgalactiae + Streptococcus dysgalactiae (ex Diernhofer 1932) Garvie et al. 1983 + Streptococcus pseudogalactiae + unknown + NCBITaxon:1334 + Streptococcus dysgalactiae + + + + + + + + unknown + NCBITaxon:13340 + Aralia + + + + + + + + unknown + NCBITaxon:13346 + Armadillidium + + + + + + + + common pillbug + unknown + NCBITaxon:13347 + Armadillidium vulgare + + + + + unknown + NCBITaxon:133551 + Eleutherozoa + + + + + + + + + unknown + NCBITaxon:133894 + Penaeus + + + + + + + + unknown + NCBITaxon:133898 + Fenneropenaeus + + + + + + + + unknown + NCBITaxon:134415 + Cicada + + + + + + + + unknown + NCBITaxon:134510 + Spalax judaei + + + + + unknown + NCBITaxon:13548 + Glomerella + + + + + + + + Methylococcaceae group + Methylococcales Bowman 2005 + unknown + NCBITaxon:135618 + Methylococcales + + + + + + + + unknown + Pseudomonadaceae Winslow et al. 1917 + NCBITaxon:135621 + Pseudomonadaceae + + + + + + + + + Alteromonadaceae group + Alteromonadales Bowman and McMeekin 2005 + unknown + NCBITaxon:135622 + Alteromonadales + + + + + + + + 'Vibrionales' + Vibrionaceae group + unknown + NCBITaxon:135623 + Vibrionales + + + + + + + + lactic streptococci + unknown + Lactococcus Schleifer et al. 1986 + NCBITaxon:1357 + Lactococcus + + + + + + + + Bacterium lacti + Bacterium lactis + Lactococcus lactis (Lister 1873) Schleifer et al. 1986 + Lactococcus lactis (Lohnis) Schleifer et al. 1986 + Streptococcus lactis + Streptococcus lactis (Lister 1873) Lohnis 1909 (Approved Lists 1980) + unknown + NCBITaxon:1358 + Lactococcus lactis + + + + + + + + + Lactococcus lactis (SUBSP. CREMORIS) + Lactococcus lactis cremoris + Lactobacillus cremoris + Lactococcus cremoris + Lactococcus lactis subsp. cremoris (Orla-Jensen 1919) Schleifer et al. 1986 + Streptococcus cremoris + Streptococcus cremoris Orla-Jensen 1919 (Approved Lists 1980) + Streptococcus hollandicus + Streptococcus lactis B + Streptococcus lactis subsp. cremoris + Streptococcus lactis subsp. cremoris (Orla-Jensen 1919) Garvie and Farrow 1982 + unknown + NCBITaxon:1359 + Lactococcus lactis subsp. cremoris + + + + + + + + Lactobacillus xylosus + Lactobacillus xylosus Kitahara 1938 (Approved Lists 1980) + Lactococcus lactis (SUBSP. LACTIS) + Lactococcus lactis subsp. diacitilactis (sic) + Lactococcus lactis subsp. lactis (Lister 1873) Schleifer et al. 1986 + Streptococcus diacetilactis + Streptococcus lactis subsp. diacetilactis + Streptococcus lactis subsp. diacetilactis (ex Matuszewski et al. 1936) Garvie and Farrow 1982 + Streptococcus lactis subsp. lactis + Streptococcus lactis subsp. lactis (Lister 1873) Lohnis 1909 + Lactococcus lactis lactis + unknown + NCBITaxon:1360 + Lactococcus lactis subsp. lactis + + + + + marlins + unknown + NCBITaxon:13602 + Makaira + + + + + + + + unknown + NCBITaxon:13604 + Makaira nigricans + + + + + short-tailed opossums + unknown + NCBITaxon:13615 + Monodelphis + + + + + + + + gray short-tailed opossum + unknown + Monodelphis domesticus + NCBITaxon:13616 + Monodelphis domestica + + + + + unknown + NCBITaxon:13675 + Scomber + + + + + + + + Atlantic mackerel + unknown + NCBITaxon:13677 + Scomber scombrus + + + + + Leptosphaeria nodorum + Septoria nodorum + Stagonospora nodorum + unknown + NCBITaxon:13684 + Phaeosphaeria nodorum + + + + + + + + unknown + NCBITaxon:136841 + Pseudomonas aeruginosa group + + + + + + + + fluorescent pseudomonads + unknown + NCBITaxon:136843 + Pseudomonas fluorescens group + + + + + + + + unknown + NCBITaxon:136845 + Pseudomonas putida group + + + + + + + + unknown + NCBITaxon:136849 + Pseudomonas syringae group + + + + + + + + unknown + NCBITaxon:13712 + Tamias + + + + + + + + + + + + + + + + + + Torionyx sinensis + Trionyx sinensis + Chinese softshell turtle + unknown + NCBITaxon:13735 + Pelodiscus sinensis + + + + + unknown + Viola L. + NCBITaxon:13757 + Viola + + + + + + + + + Bacillales Prevot 1953 + Bacillus/Staphylococcus group + unknown + NCBITaxon:1385 + Bacillales + + + + + + + + + + Bacillus Cohn 1872 + Bacillus rRNA group 1 + unknown + NCBITaxon:1386 + Bacillus + + + + + + + + + + + + + Vigna sesquipedalis + Vigna unguiculata subsp. sesquipedalis (L.) Verdc. + yard-long-bean + unknown + NCBITaxon:138955 + Vigna unguiculata subsp. sesquipedalis + + + + + Bacillus amyloliquefaciens (ex Fukumoto 1943) Priest et al. 1987 + Bacillus amyloliquifaciens + unknown + NCBITaxon:1390 + Bacillus amyloliquefaciens + + + + + anthrax + anthrax bacterium + Bacillus anthracis Cohn 1872 + Bacillus cereus var. anthracis + Bacteridium anthracis + unknown + NCBITaxon:1392 + Bacillus anthracis + + + + + + + + diploxylon pines + hard pines + unknown + NCBITaxon:139271 + Pinus [NCBITaxon:139271] + + + + + + + + Bacillus cereus Frankland and Frankland 1887 + Bacillus endorhythmos + Bacillus medusa + unknown + NCBITaxon:1396 + Bacillus cereus + + + + + + + + Platanus acerifolia + Platanus hispanica + Platanus hispanica Muenchh. + Platanus x acerifolia (Aiton) Willd. + Platanus x hispanica + Platanus x hybrida + London plane tree + unknown + NCBITaxon:140101 + Platanus x acerifolia + + + + + Bacillus licheniformis (Weigmann 1898) Chester 1901 + Bacillus sp. W10.6 + Clostridium licheniforme + Denitrobacillus licheniformis + unknown + NCBITaxon:1402 + Bacillus licheniformis + + + + + unknown + NCBITaxon:140968 + Hypericum androsaemum + + + + + Bacillus sphaericus + Bacillus sphaericus Meyer and Neide 1904 (Approved Lists 1980) + Lysinibacillus sphaericus (Meyer and Neide 1904) Ahmed et al. 2007 + unknown + NCBITaxon:1421 + Lysinibacillus sphaericus + + + + + Bacillus stearothermophilus + Bacillus stearothermophilus Donk 1920 (Approved Lists 1980) + Bacillus strearothermophilus + Geobacillus stearothermophilus (Donk 1920) Nazina et al. 2001 + unknown + NCBITaxon:1422 + Geobacillus stearothermophilus + + + + + Bacillus globigii + Bacillus natto + Bacillus subtilis (Ehrenberg 1835) Cohn 1872 + Bacillus subtilis8 + Bacillus uniflagellatus + Vibrio subtilis + unknown + NCBITaxon:1423 + Bacillus subtilis + + + + + Prochlorococcus marinus subsp. pastoris Rippka et al. 2000 + Prochlorococcus marinus subsp. pastoris Rippka et al. 2001 + unknown + NCBITaxon:142479 + Prochlorococcus marinus subsp. pastoris + + + + + + + + unknown + NCBITaxon:142679 + Puccinia recondita f. sp. triseti + + + + + unknown + mycetozoans + NCBITaxon:142796 + Mycetozoa + + + + + + + + Bacillus cereus var. thuringiensis + Bacillus thuringiensi + Bacillus thuringiensis Berliner 1915 + unknown + NCBITaxon:1428 + Bacillus thuringiensis + + + + + + + + + red seabream + red tail + unknown + Chrysophrys major + NCBITaxon:143350 + Pagrus major + + + + + unknown + NCBITaxon:143351 + Microcebus tavaratra + + + + + unknown + NCBITaxon:143961 + Aphidomorpha + + + + + + + + unknown + NCBITaxon:144012 + Myrmicini + + + + + + + + Methanobacter + Methanothermobacter Wasserfallen et al. 2000 + unknown + NCBITaxon:145260 + Methanothermobacter + + + + + + + + unknown + Methanothermobacter marburgensis Wasserfallen et al. 2000 + NCBITaxon:145263 + Methanothermobacter marburgensis + + + + + + + + Aquarana clamitans + Lithobates clamitans + green frog + unknown + NCBITaxon:145282 + Rana clamitans + + + + + unknown + NCBITaxon:145353 + Cicadinae + + + + + + + + unknown + NCBITaxon:145354 + Cicadini + + + + + + + + unknown + Malva parviflora L. + NCBITaxon:145753 + Malva parviflora + + + + + unknown + NCBITaxon:146131 + Eospalax + + + + + + + + unknown + Myospalax baileyi + NCBITaxon:146132 + Eospalax baileyi + + + + + unknown + NCBITaxon:146911 + Gekko japonicus + + + + + unknown + NCBITaxon:147367 + Ehrhartoideae + + + + + + + + unknown + NCBITaxon:147368 + Pooideae + + + + + + + + + unknown + NCBITaxon:147369 + Panicoideae + + + + + + + + unknown + NCBITaxon:147370 + PACCAD clade + + + + + + + + unknown + NCBITaxon:147380 + Oryzeae + + + + + + + + unknown + NCBITaxon:147389 + Triticeae + + + + + + + + + + + unknown + NCBITaxon:147429 + Andropogoneae + + + + + + + + unknown + NCBITaxon:147537 + Saccharomycotina + + + + + + + + unknown + Euascomycota + NCBITaxon:147538 + Pezizomycotina + + + + + + + + + + + Loculoascomycetes + bitunicate ascomycetes + unknown + NCBITaxon:147541 + Dothideomycetes + + + + + + + + unknown + Plectomycetes + NCBITaxon:147545 + Eurotiomycetes + + + + + + + + + unknown + Pyrenomycetes + NCBITaxon:147550 + Sordariomycetes + + + + + + + + + + unknown + NCBITaxon:147551 + Sordariomycetes incertae sedis + + + + + + + + Archiascomycota + Taphrinomycotina + unknown + NCBITaxon:147553 + Pneumocystidomycetes + + + + + + + + Archiascomycota + Taphrinomycotina + unknown + NCBITaxon:147554 + Schizosaccharomycetes + + + + + + + + unknown + Clostridium Prazmowski 1880 + NCBITaxon:1485 + Clostridium + + + + + + + + + unknown + NCBITaxon:149627 + Amburana + + + + + + + + + unknown + Torresea cearensis + NCBITaxon:149628 + Amburana cearensis + + + + + unknown + Clostridium sticklandii Stadtman and McClung 1957 + NCBITaxon:1511 + Clostridium sticklandii + + + + + Papillomavirus + unknown + NCBITaxon:151340 + Papillomaviridae + + + + + + + + + + unknown + NCBITaxon:151341 + Polyomaviridae + + + + + + + + unknown + Clostridium thermocellum Viljoen et al. 1926 + NCBITaxon:1515 + Clostridium thermocellum + + + + + + + + unknown + NCBITaxon:151659 + environmental samples [NCBITaxon:151659] + + + + + + + + unknown + NCBITaxon:152601 + Pierini + + + + + + + + ALV-related viruses + Avian type C oncoviruses + Avian type C retrovirus group + Avian type C retroviruses + unknown + NCBITaxon:153057 + Alpharetrovirus + + + + + + + + MLV-related viruses + Mammalian type C retrovirus group + Mammalian type C retroviruses + mammalian type C oncoviruses + type C oncoviruses + unknown + NCBITaxon:153135 + Gammaretrovirus + + + + + + + + unknown + NCBITaxon:153136 + Deltaretrovirus + + + + + + + + unknown + NCBITaxon:153783 + Chrysomela knabi + + + + + unknown + NCBITaxon:154013 + Gastrophysa + + + + + + + + unknown + NCBITaxon:155616 + Tremellomycetidae + + + + + + + + unknown + Agaricomycetidae sensu Kirk et al. 2001 + NCBITaxon:155619 + Homobasidiomycetes + + + + + + + + + + Caulobacter crescens + Caulobacter crescentus + Caulobacter crescentus Poindexter 1964 + Caulobacter vibrioides Henrici and Johnson 1935 + Caulobacter vibroides + unknown + NCBITaxon:155892 + Caulobacter vibrioides + + + + + Antirrhinaceae + Scrophulariaceae + Veronicaceae + speedwell family + unknown + NCBITaxon:156152 + Plantaginaceae + + + + + + + + unknown + Group 1 species + NCBITaxon:156438 + Coronavirus group 1 + + + + + + + + unknown + Group 2 species + NCBITaxon:156439 + Coronavirus Group 2 + + + + + + + + + unknown + NCBITaxon:157295 + Bothrops leucurus + + + + + unknown + Clavibacter Davis et al. 1984 + NCBITaxon:1573 + Clavibacter + + + + + + + + unknown + Vigna radiata (L.) R.Wilczek + NCBITaxon:157791 + Vigna radiata + + + + + + + + unknown + Lactobacillus Beijerinck 1901 + NCBITaxon:1578 + Lactobacillus + + + + + + + + unknown + Staphylococcus aureus (strain Mu50 / ATCC 700699) + NCBITaxon:158878 + Staphylococcus aureus subsp. aureus Mu50 + + + + + unknown + Staphylococcus aureus (strain N315) + NCBITaxon:158879 + Staphylococcus aureus subsp. aureus N315 + + + + + Methylophilus Jenkins et al. 1987 + Methylotrophus + Methyliphilus + unknown + NCBITaxon:16 + Methylophilus + + + + + + + + unknown + NCBITaxon:160964 + Rhacophorinae + + + + + + + + Chinese red belly toad + large-webbed bell toad + unknown + NCBITaxon:161274 + Bombina maxima + + + + + beet + unknown + Beta vulgaris L. + NCBITaxon:161934 + Beta vulgaris + + + + + Aspergillus nidulans + Aspergillus nidulellus + Aspergilus nidulans + unknown + NCBITaxon:162425 + Emericella nidulans + + + + + unknown + Microbotryomycetidae + NCBITaxon:162481 + Microbotryomycetes + + + + + + + + unknown + Urediniomycetidae + NCBITaxon:162484 + Pucciniomycetes + + + + + + + + unknown + NCBITaxon:163090 + Caesalpinieae + + + + + + + + + unknown + NCBITaxon:163092 + Cercideae + + + + + + + + unknown + NCBITaxon:163488 + Parkieae + + + + + + + + Listerella + Listeria Pirie 1940 + unknown + NCBITaxon:1637 + Listeria + + + + + + + + + unknown + NCBITaxon:163715 + Abreae + + + + + + + + unknown + NCBITaxon:163728 + Galegeae + + + + + + + + unknown + NCBITaxon:163735 + Phaseoleae + + + + + + + + + + + + + unknown + NCBITaxon:163737 + Psoraleeae + + + + + + + + unknown + NCBITaxon:163739 + Sophoreae + + + + + + + + + unknown + NCBITaxon:163743 + Vicieae + + + + + + + + + + Bacterium monocytogenes + Bacterium monocytogenes hominis + Corynebacterium infantisepticum + Corynebacterium parvulum + Erysipelothrix monocytogenes + Listerella hepatolytica + Listeria monocytogenes (Murray et al. 1926) Pirie 1940 + Lysteria monocytogenes + unknown + NCBITaxon:1639 + Listeria monocytogenes + + + + + + + + unknown + NCBITaxon:164110 + Nicotiana langsdorffii x Nicotiana sanderae + + + + + Listeria innocua + Listeria innocua (ex Seeliger and Schoofs 1979) Seeliger 1983 + Listeria innocua Seeliger 1983 + unknown + NCBITaxon:1642 + Listeria innocua + + + + + unknown + NCBITaxon:164650 + Trachypithecus geei + + + + + unknown + NCBITaxon:164651 + Trachypithecus pileatus + + + + + unknown + NCBITaxon:164860 + Dacinae + + + + + + + + unknown + Ceratitini + NCBITaxon:164862 + Ceratitidini + + + + + + + + unknown + NCBITaxon:165804 + Heterobasidiomycetes + + + + + + + + unknown + NCBITaxon:167484 + Asclepiadoideae + + + + + + + + unknown + NCBITaxon:167487 + Rauvolfioideae + + + + + + + + unknown + NCBITaxon:167488 + Asclepiadeae + + + + + + + + unknown + NCBITaxon:167497 + Tabermontantaneae + + + + + + + + unknown + NCBITaxon:167618 + Dioclea virgata + + + + + unknown + Odorrana grahami + NCBITaxon:167935 + Rana grahami + + + + + unknown + Escherichia coli 0127:H6 + NCBITaxon:168807 + Escherichia coli O127:H6 + + + + + unknown + NCBITaxon:169418 + Mustelinae + + + + + + + + unknown + NCBITaxon:169617 + Rubioideae + + + + + + + + unknown + NCBITaxon:169659 + Psychotrieae + + + + + + + + + unknown + NCBITaxon:169758 + Gastrophysa atrocyanea + + + + + unknown + NCBITaxon:169863 + Colubrinae + + + + + + + + Methyliphilus methylitrophus + Methyliphilus methylotrophus + Methylophilus methylitrophus + Methylophilus methylotrophus Jenkins et al. 1987 + Methylotrophus methylophilus + unknown + NCBITaxon:17 + Methylophilus methylotrophus + + + + + unknown + NCBITaxon:170850 + Cucurbita hybrid cultivar + + + + + + + + burrowing thick-tailed scorpions + unknown + NCBITaxon:170971 + Parabuthus + + + + + + + + + large-tooth flounders + unknown + NCBITaxon:171414 + Paralichthyidae + + + + + + + + unknown + 'Bacteroidales' + NCBITaxon:171549 + Bacteroidales + + + + + + + + + + unknown + 'Porphyromonadaceae' + NCBITaxon:171551 + Porphyromonadaceae + + + + + + + + unknown + 'Prevotellaceae' + NCBITaxon:171552 + Prevotellaceae + + + + + + + + unknown + NCBITaxon:171636 + Amygdaloideae + + + + + + + + unknown + NCBITaxon:171637 + Maloideae + + + + + + + + + unknown + NCBITaxon:172268 + Argyrosomus + + + + + + + + Argyrosomus regius (Asso, 1801) + Perca regia + Sciaena regius + meagre + unknown + NCBITaxon:172269 + Argyrosomus regius + + + + + unknown + NCBITaxon:173087 + Human papillomavirus types + + + + + + + + unknown + NCBITaxon:173668 + Onchocerca dukei + + + + + Propionicibacterium + unknown + Propionibacterium Orla-Jensen 1909 (Approved Lists 1980) emend. Charfreitag et al. 1988 + NCBITaxon:1743 + Propionibacterium + + + + + + + + Bacterium acidi propionici a + Bacterium acidi propionici d + Propionibacterium freudenreichii van Niel 1928 + Propionicibacterium freudenreichii + unknown + NCBITaxon:1744 + Propionibacterium freudenreichii + + + + + + + + unknown + NCBITaxon:175121 + Passeroidea + + + + + + + + leathery sea anemone + unknown + Radianthus macrodactylus + NCBITaxon:175771 + Heteractis crispa + + + + + unknown + NCBITaxon:175772 + Condylactis passiflora + + + + + Actinobacteria Stackebrandt et al. 1997 + Actinomycetes + Actinomycetes Krasil'nikov 1949 + High GC gram-positive bacteria + high GC Gram+ + high G+C Gram-positive bacteria + unknown + NCBITaxon:1760 + Actinobacteria (class) + + + + + + + + unknown + NCBITaxon:176280 + Staphylococcus epidermidis ATCC 12228 + + + + + unknown + NCBITaxon:176299 + Agrobacterium tumefaciens str. C58 + + + + + unknown + NCBITaxon:180229 + Euamoebida + + + + + + + + Infectious laryngo-tracheitis-like viruses + Infectious laryngotracheitis-like viruses + unknown + NCBITaxon:180255 + Iltovirus + + + + + + + + unknown + Anopheles gambiae PEST + NCBITaxon:180454 + Anopheles gambiae str. PEST + + + + + unknown + Bacillus thuringiensis subsp. konkukian + NCBITaxon:180856 + Bacillus thuringiensis serovar konkukian + + + + + goldlined seabream + unknown + Sparus sarba + NCBITaxon:182642 + Rhabdosargus sarba + + + + + unknown + Rhodococcus Zopf 1891 + NCBITaxon:1827 + Rhodococcus + + + + + + + + Arthrobacter hydrocarboglutamicus + Arthrobacter oxamicetus + Arthrobacter oxamicetus subsp. propiophenicolus + Arthrobacter paraffineus + Arthrobacter picolinophilus + Arthrobacter picolinophilus Tate and Ensign 1974 (Approved Lists 1980) + Brevibacterium healii + Brevibacterium ketoglutamicum + Brevibacterium paraffinoliticum + Corynebacterium alkanum + Corynebacterium aurantiacum + Corynebacterium humiferum + Mycobacterium erythropolis + Nocardia calcarea + Nocardia calcarea Metcalf and Brown 1957 (Approved Lists 1980) + Rhodococcus erythropolis (Gray and Thornton 1928) Goodfellow and Alderson 1979 + unknown + NCBITaxon:1833 + Rhodococcus erythropolis + + + + + unknown + Deinococcaceae Brooks and Murray 1981 emend. Rainey et al. 1997 + NCBITaxon:183710 + Deinococcaceae + + + + + + + + unknown + NCBITaxon:183720 + Oxyuranus scutellatus canni + + + + + unknown + NCBITaxon:183770 + Enterogona + + + + + + + + Crenarchaeota (class) + Crenarchaeota Cavalier-Smith 2002 + Thermoprotei Reysenbach 2002 + unknown + NCBITaxon:183924 + Thermoprotei + + + + + + + + Archaeobacteria + Archaeobacteria Murray 1988 + Methanobacteria Boone 2002 + unknown + NCBITaxon:183925 + Methanobacteria + + + + + + + + Halobacteria Grant et al. 2002 + Halomebacteria + Halomebacteria Cavalier-Smith 2002 + unknown + NCBITaxon:183963 + Halobacteria + + + + + + + + Protoarchaea + Protoarchaea Cavalier-Smith 2002 + Thermococci Zillig and Reysenbach 2002 + unknown + NCBITaxon:183968 + Thermococci + + + + + + + + Archaeoglobea + Archaeoglobea Cavalier-Smith 2002 + Archaeoglobi Garrity and Holt 2002 + unknown + NCBITaxon:183980 + Archaeoglobi + + + + + + + + unknown + NCBITaxon:184062 + Euplotes nobilii + + + + + unknown + NCBITaxon:184208 + Psathyrellaceae + + + + + + + + unknown + NCBITaxon:184226 + Tityus cambridgei + + + + + unknown + NCBITaxon:184428 + Asaphis dichotoma + + + + + unknown + NCBITaxon:184431 + Coprinopsis + + + + + + + + Pseudonocardia Henssen 1957 (Approved Lists 1980) emend. Huang et al. 2002 + Pseudonocardia Henssen 1957 (Approved Lists 1980) emend. Reichert et al. 1998 + Pseudonocardia Henssen 1957 (Approved Lists 1980) emend. Warwick et al. 1994 + unknown + NCBITaxon:1847 + Pseudonocardia + + + + + + + + unknown + NCBITaxon:184771 + Oxyopes kitabensis + + + + + unknown + Pseudonocardia thermophila Henssen 1957 + NCBITaxon:1848 + Pseudonocardia thermophila + + + + + Pseudobutyrivibrio xylanovorans + unknown + Pseudobutyrivibrio xylanivorans Kopecny et al. 2003 + NCBITaxon:185007 + Pseudobutyrivibrio xylanivorans + + + + + unknown + NCBITaxon:185216 + Paracoelotes + + + + + + + + unknown + NCBITaxon:185217 + Paracoelotes luctuosus + + + + + unknown + Trypanosoma brucei strain TREU927 + NCBITaxon:185431 + Trypanosoma brucei TREU927 + + + + + unknown + NCBITaxon:185447 + Parkia platycephala + + + + + unknown + NCBITaxon:186285 + Drosophiliti + + + + + + + + + unknown + NCBITaxon:186623 + Actinopteri + + + + + + + + unknown + NCBITaxon:186624 + Elopocephala + + + + + + + + + unknown + NCBITaxon:186625 + Clupeocephala + + + + + + + + + unknown + NCBITaxon:186626 + Otophysi + + + + + + + + + unknown + NCBITaxon:186627 + Cypriniphysi + + + + + + + + unknown + NCBITaxon:186629 + Siluriphysi + + + + + + + + + unknown + NCBITaxon:186634 + Otocephala + + + + + + + + unknown + NCBITaxon:186745 + Scombrinae + + + + + + + + unknown + NCBITaxon:186746 + Scombrini + + + + + + + + unknown + NCBITaxon:186763 + Plasmodium falciparum (isolate FcB1 / Columbia) + + + + + unknown + 'Clostridia' + NCBITaxon:186801 + Clostridia + + + + + + + + unknown + Clostridiales Prevot 1953 + NCBITaxon:186802 + Clostridiales + + + + + + + + + + unknown + 'Lachnospiraceae' + NCBITaxon:186803 + Lachnospiraceae + + + + + + + + + unknown + Peptococcaceae Rogosa 1971 + NCBITaxon:186807 + Peptococcaceae + + + + + + + + + unknown + Bacillaceae Fischer 1895 + NCBITaxon:186817 + Bacillaceae + + + + + + + + + + unknown + 'Listeriaceae' + NCBITaxon:186820 + Listeriaceae + + + + + + + + unknown + 'Lactobacillales' + NCBITaxon:186826 + Lactobacillales + + + + + + + + + + unknown + 'Carnobacteriaceae' + NCBITaxon:186828 + Carnobacteriaceae + + + + + + + + unknown + NCBITaxon:186839 + Neognathi + + + + + + + + unknown + NCBITaxon:186841 + Salmonoidei + + + + + + + + unknown + Cicada flammata Dist. + NCBITaxon:186872 + Cicada flammata + + + + + unknown + Torresea acreana + NCBITaxon:187148 + Amburana acreana + + + + + unknown + Aquificae Reysenbach 2002 + NCBITaxon:187857 + Aquificae (class) + + + + + + + + Chainia + Chainia Thirumalachar 1955 + Streptomyces Waksman and Henrici 1943 (Approved Lists 1980) emend. Wellington et al. 1992 + Streptomyces Waksman and Henrici 1943 (Approved Lists 1980) emend. Witt and Stackebrandt 1991 + unknown + NCBITaxon:1883 + Streptomyces + + + + + + + + + + + + + + + Thermotogae Reysenbach 2002 + Togobacteria + Togobacteria Cavalier-Smith 2002 + unknown + NCBITaxon:188708 + Thermotogae (class) + + + + + + + + unknown + Thermotogaceae Reysenbach 2002 + NCBITaxon:188709 + Thermotogaceae + + + + + + + + unknown + Thermaceae da Costa and Rainey 2002 + NCBITaxon:188786 + Thermaceae + + + + + + + + Deinococci Garrity and Holt 2002 + Hadobacteria + Hadobacteria Cavalier-Smith 2002 + unknown + NCBITaxon:188787 + Deinococci + + + + + + + + + Actinomyces antibioticus + Streptomyces antibioticus (Waksman and Woodruff 1941) Waksman and Henrici 1948 + unknown + NCBITaxon:1890 + Streptomyces antibioticus + + + + + fluted swallowtails + unknown + NCBITaxon:189315 + Papilionini + + + + + + + + Kitasatospora aureofaciens + Streptomyces aureifaciens + unknown + Streptomyces aureofaciens Duggar 1948 emend. Groth et al. 2003 + NCBITaxon:1894 + Streptomyces aureofaciens + + + + + unknown + NCBITaxon:189478 + Orbiliomycetes + + + + + + + + unknown + NCBITaxon:189479 + Orbiliales + + + + + + + + unknown + NCBITaxon:190061 + Fowl adenovirus A + + + + + + + + Actinomyces coelicolor + Cladothrix coelicolor + Corynebacterium coelicolor + Nocardia coelicolor + Streptococcus coelicolor + Streptomyces calicolor + Streptomyces coelicolor (Muller 1908) Waksman and Henrici 1948 + Streptomyces coelicolor subspecies coelicolor + Streptothrix coelicolor + unknown + NCBITaxon:1902 + Streptomyces coelicolor + + + + + unknown + NCBITaxon:190386 + Agrobacterium tumefaciens (strain 15955) + + + + + Actinomyces exfoliatus + Streptomyces exfoliatus (Waksman and Curtis 1916) Waksman and Henrici 1948 + Streptomyces hydrogenans + unknown + NCBITaxon:1905 + Streptomyces exfoliatus + + + + + luo han guo + unknown + Momordica grosvenorii + NCBITaxon:190515 + Siraitia grosvenorii + + + + + unknown + NCBITaxon:190522 + Siraitia + + + + + + + + unknown + Actinomyces griseus + NCBITaxon:1911 + Streptomyces griseus + + + + + 'Chlorobia' + Chlorobea + Chlorobea Cavalier-Smith 2002 + Chlorobia + unknown + NCBITaxon:191410 + Chlorobia + + + + + + + + unknown + Chlorobiales Gibbons and Murray 1978 + NCBITaxon:191411 + Chlorobiales + + + + + + + + Chlorobiacea + Chlorobiaceae Copeland 1956 + unknown + NCBITaxon:191412 + Chlorobiaceae + + + + + + + + unknown + NCBITaxon:191426 + Archaeoprepona + + + + + + + + unknown + Prepona demophon + NCBITaxon:191427 + Archaeoprepona demophon + + + + + unknown + NCBITaxon:191503 + Aveneae + + + + + + + + unknown + NCBITaxon:191545 + Moraxella sp. TAE123 + + + + + unknown + NCBITaxon:192414 + Canavalia bonariensis + + + + + unknown + NCBITaxon:192415 + Dioclea violacea + + + + + unknown + NCBITaxon:192416 + Dioclea rostrata + + + + + unknown + NCBITaxon:192732 + Phyllomedusinae + + + + + + + + + + unknown + NCBITaxon:192733 + Pelodryadinae + + + + + + + + unknown + NCBITaxon:192734 + Hylinae + + + + + + + + + unknown + NCBITaxon:192919 + Conus spurius + + + + + unknown + NCBITaxon:1931 + Streptomyces sp. + + + + + unknown + NCBITaxon:193545 + Annelida/Echiura/Pogonophora group + + + + + + + + + + Actinomyces violaceus + Actinomyces violatus + Cladothrix violacea + Discomyces violaceus + Nocardia violacea + Oospora violacea + Streptomyces violaceus (Rossi Doria 1891) Waksman 1953 (AL 1980) emend. Lanoot et al. 2002 + Streptomyces violatus + Streptomyces violatus (Artamonova and Krasil'nikov 1960) Pridham 1970 + Streptotrix violacea + unknown + NCBITaxon:1936 + Streptomyces violaceus + + + + + Ampylobacter + Campylobacter Sebald and Veron 1963 (Approved Lists 1980) emend. Tanner et al. 1981 + Campylobacter Sebald and Veron 1963 (Approved Lists 1980) emend. Vandamme et al. 1991 + unknown + NCBITaxon:194 + Campylobacter + + + + + + + + unknown + NCBITaxon:194440 + Primate T-lymphotropic virus 1 + + + + + + + + unknown + 'Desulfovibrionaceae' + NCBITaxon:194924 + Desulfovibrionaceae + + + + + + + + Campylobacter jejuni str. RM1221 + Campylobacter jejuni strain RM1221 + unknown + NCBITaxon:195099 + Campylobacter jejuni RM1221 + + + + + unknown + Hoplocephalus stephensi + NCBITaxon:196418 + Hoplocephalus stephensii + + + + + Staphylococcus aureus (strain MW2) + Staphylococcus aureus subsp. aureus str. MW2 + unknown + NCBITaxon:196620 + Staphylococcus aureus subsp. aureus MW2 + + + + + unknown + NCBITaxon:196896 + unclassified Myoviridae + + + + + + + + Ampylobacter jejuni + Campylobacter fetus subsp. jejuni + Campylobacter jejuni (Jones et al. 1931) Veron and Chatelain 1973 + Vibrio hepaticus + Vibrio jejuni + unknown + NCBITaxon:197 + Campylobacter jejuni + + + + + + + + unknown + NCBITaxon:197562 + Pancrustacea + + + + + + + + + mandibulates + unknown + NCBITaxon:197563 + Mandibulata + + + + + + + + + Bacillus anthracis Ames + unknown + Bacillus anthracis (strain Ames) + NCBITaxon:198094 + Bacillus anthracis str. Ames + + + + + unknown + NCBITaxon:198431 + uncultured prokaryote + + + + + unknown + NCBITaxon:199476 + Talitroidea + + + + + + + + Monera + Procaryotae + Prokaryota + Prokaryotae + eubacteria + not Bacteria Haeckel 1894 + unknown + NCBITaxon:2 + Bacteria + + + + + + + + + + + + + + + + + unknown + Aegilops tauschii subsp. strangulata (Eig) Tzvelev + NCBITaxon:200361 + Aegilops tauschii subsp. strangulata + + + + + unknown + NCBITaxon:200643 + Bacteroidetes (class) + + + + + + + + unknown + Aquificae Reysenbach 2002 + NCBITaxon:200783 + Aquificae + + + + + + + + green non-sulfur bacteria + green nonsulfur bacteria + Chloroflexi Garrity and Holt 2001 emend. Hugenholtz and Stackebrandt 2004 + GNS bacteria + unknown + NCBITaxon:200795 + Chloroflexi + + + + + + + + + unknown + Thermotogae Reysenbach 2002 + NCBITaxon:200918 + Thermotogae + + + + + + + + 'Actinobacteria' + actinobacteria + not Actinobacteria Cavalier-Smith 2002 + unknown + NCBITaxon:201174 + Actinobacteria + + + + + + + + unknown + NCBITaxon:203119 + Clostridium thermocellum ATCC 27405 + + + + + unknown + NCBITaxon:203490 + Fusobacteria (class) + + + + + + + + unknown + 'Fusobacterales' + NCBITaxon:203491 + Fusobacterales + + + + + + + + unknown + 'Fusobacteriaceae' + NCBITaxon:203492 + Fusobacteriaceae + + + + + + + + unknown + Actinomycetales Buchanan 1917 (Approved Lists 1980) emend Stackebrandt et al. 1997 + NCBITaxon:2037 + Actinomycetales + + + + + + + + + + + + unknown + NCBITaxon:203991 + Pseudananas + + + + + + + + unknown + Pseudananas macrodontes + NCBITaxon:203992 + Pseudananas sagenarius + + + + + unknown + NCBITaxon:20400 + Astragalus + + + + + + + + unknown + Hyptis Jacq. + NCBITaxon:204122 + Hyptis + + + + + + + + unknown + Hyptis suaveolens (L.) Poit. + NCBITaxon:204129 + Hyptis suaveolens + + + + + unknown + NCBITaxon:204285 + Melanocarpus albomyces + + + + + unknown + Rhodospirillales Pfennig and Truper 1971 + NCBITaxon:204441 + Rhodospirillales + + + + + + + + unknown + 'Rhodobacterales' + NCBITaxon:204455 + Rhodobacterales + + + + + + + + Caulobacter group + Caulobacterales Henrici and Johnson 1935 + unknown + NCBITaxon:204458 + Caulobacterales + + + + + + + + unknown + NCBITaxon:20455 + Bowringia + + + + + + + + unknown + NCBITaxon:204969 + Pelodiscus + + + + + + + + unknown + Ehrlichia chaffeensis Arkansas + NCBITaxon:205920 + Ehrlichia chaffeensis str. Arkansas + + + + + Actinoplanaceae + Actinoplanaceae Couch 1955 + Streptomycetaceae Waksman and Henrici 1943 (Approved Lists 1980) emend. Kim et al. 2003 + Streptomycetaceae Waksman and Henrici 1943 (Approved Lists 1980) emend. Rainey et al. 1997 + unknown + NCBITaxon:2062 + Streptomycetaceae + + + + + + + + unknown + 'Methylophilales' + NCBITaxon:206350 + Methylophilales + + + + + + + + Pseudonocardiaceae (Warwick et al. 1994) (sic) emend. Stackebrandt et al. 1997 + Pseudonocardiaceae Embley et al. 1989 emend. Stackebrandt et al. 1997 + unknown + NCBITaxon:2070 + Pseudonocardiaceae + + + + + + + + unknown + NCBITaxon:207598 + Homo/Pan/Gorilla group + + + + + + + + + + Pseudomonas aeruginosa PA01 + Pseudomonas aeruginosa str. PA01 + Pseudomonas aeruginosa str. PAO1 + unknown + NCBITaxon:208964 + Pseudomonas aeruginosa PAO1 + + + + + unknown + Helicobacter Goodwin et al. 1989 emend. Vandamme et al. 1991 + NCBITaxon:209 + Helicobacter + + + + + + + + unknown + NCBITaxon:209661 + Ceratophryinae + + + + + + + + unknown + NCBITaxon:209662 + Leptodactylinae + + + + + + + + Ornithoctonus hainana (Liang et al.) Liang et al. + Selenocosmia hainana + Selenocosmia hainana Liang et al. 1999 + unknown + NCBITaxon:209901 + Ornithoctonus hainana + + + + + Campylobacter pylori + Campylobacter pylori Marshall et al. 1985 corrig. Marshall and Goodwin 1987 + Campylobacter pylori corrig. Marshall et al. 1985 emend. Fox et al. 1988 + Campylobacter pylori corrig. Marshall et al. 1985 emend. Fox et al. 1989 + Campylobacter pylori subsp. pylori + Campylobacter pylori subsp. pylori Marshall et al. 1985 + Campylobacter pyloridis + Campylobacter pyloridis Marshall et al.1985 + Helicobacter nemestrinae + Helicobacter nemestrinae Bronsdon et al. 1991 + Helicobacter pylori (Marshall et al. 1985) Goodwin et al. 1989 + unknown + NCBITaxon:210 + Helicobacter pylori + + + + + unknown + Castanea Mill. + NCBITaxon:21019 + Castanea + + + + + + + + European chestnut + unknown + Castanea sativa Mill. + NCBITaxon:21020 + Castanea sativa + + + + + Japanese gliding frog + shureger frog + unknown + NCBITaxon:210202 + Rhacophorus schlegelii + + + + + Shewanella oneidensis str. MR-1 + Shewanella oneidensis strain MR-1 + Shewanella oneidensis ATCC 700550 + Shewanella sp. MR-1 + unknown + NCBITaxon:211586 + Shewanella oneidensis MR-1 + + + + + Anaplasma phagocytophila HZ + Anaplasma phagocytophila str. HZ + Anaplasma phagocytophilum str. HZ + unknown + NCBITaxon:212042 + Anaplasma phagocytophilum HZ + + + + + unknown + Aspidoscelis Fitzinger, 1843 + NCBITaxon:212526 + Aspidoscelis + + + + + + + + unknown + 'Desulfovibrionales' + NCBITaxon:213115 + Desulfovibrionales + + + + + + + + Geobacteraceae + Geobacteraceae Holmes et al. 2004 + unknown + NCBITaxon:213422 + Geobacteraceae + + + + + + + + unknown + 'Campylobacterales' + NCBITaxon:213849 + Campylobacterales + + + + + + + + + unknown + NCBITaxon:214503 + Mortierellales + + + + + + + + unknown + NCBITaxon:214907 + Malvoideae + + + + + + + + unknown + NCBITaxon:215449 + Neocoleoidea + + + + + + + + + unknown + NCBITaxon:215450 + Decapodiformes + + + + + + + + + + unknown + NCBITaxon:215451 + Octopodiformes + + + + + + + + Archaea + Archaebacteria + Mendosicutes + Metabacteria + Monera + Procaryotae + Prokaryota + Prokaryotae + archaea + unknown + NCBITaxon:2157 + Archaea + + + + + + + + + unknown + NCBITaxon:215750 + Preponini + + + + + + + + unknown + Methanobacteriales Balch and Wolfe 1981 + NCBITaxon:2158 + Methanobacteriales + + + + + + + + + unknown + Methanobacteriaceae Barker 1956 + NCBITaxon:2159 + Methanobacteriaceae + + + + + + + + unknown + NCBITaxon:216267 + Orthogastropoda + + + + + + + + unknown + NCBITaxon:216289 + Apogastropoda + + + + + + + + + unknown + NCBITaxon:216291 + Sorbeoconcha + + + + + + + + unknown + NCBITaxon:216293 + Hypsogastropoda + + + + + + + + unknown + NCBITaxon:216305 + Heterobranchia + + + + + + + + unknown + NCBITaxon:216307 + Euthyneura [NCBITaxon:216307] + + + + + + + + unknown + NCBITaxon:216318 + Aplysioidea + + + + + + + + unknown + Nepetoideae Kostel. + NCBITaxon:216706 + Nepetoideae + + + + + + + + unknown + NCBITaxon:216719 + Ocimeae + + + + + + + + unknown + NCBITaxon:216780 + Antirrhineae + + + + + + + + unknown + Methanothermaceae Stetter et al. 1982 + NCBITaxon:2178 + Methanothermaceae + + + + + + + + unknown + Methanothermus Stetter et al. 1982 + NCBITaxon:2179 + Methanothermus + + + + + + + + Methanobacterium fervidus + Methanothermus fervidus Stetter et al. 1982 + unknown + NCBITaxon:2180 + Methanothermus fervidus + + + + + unknown + NCBITaxon:218469 + Limnodynastinae + + + + + + + + tufted duck + unknown + NCBITaxon:219594 + Aythya fuligula + + + + + unknown + Shewanella MacDonell and Colwell 1986 + NCBITaxon:22 + Shewanella + + + + + + + + + unknown + Methanosarcinaceae Balch and Wolfe 1981 emend. Sowers et al. 1984 + NCBITaxon:2206 + Methanosarcinaceae + + + + + + + + unknown + Methanosarcina Kluyver and van Niel 1936 emend. Barker 1956 (AL 1980) emend. Ni et al. 1994 + NCBITaxon:2207 + Methanosarcina + + + + + + + + Methanobacterium barkeri + Methanosarcina barkeri Schnellen 1947 (Approved Lists 1980) emend. Bryant and Boone 1987 + Methanosarcina barkeri Schnellen 1947 (Approved Lists 1980) emend. Maestrojun et al. 1992 + Methanosarcina barkerii + Sarcina barkeri + unknown + NCBITaxon:2208 + Methanosarcina barkeri + + + + + + + + unknown + NCBITaxon:221161 + Scopolia + + + + + + + + unknown + NCBITaxon:221162 + Scopolia japonica + + + + + custard-apple family + unknown + NCBITaxon:22140 + Annonaceae + + + + + + + + gua jin deng + hozuki + Physalis alkekengi var. francheti + Physalis alkekengi var. franchetii (Mast.) Makino + unknown + NCBITaxon:221454 + Physalis alkekengi var. franchetii + + + + + golden orb-web spider + unknown + NCBITaxon:222470 + Nephila inaurata + + + + + + + + unknown + NCBITaxon:222543 + Hypocreomycetidae + + + + + + + + unknown + NCBITaxon:222544 + Sordariomycetidae + + + + + + + + Neorickettsia sennetsu Miyayama + unknown + NCBITaxon:222891 + Neorickettsia sennetsu str. Miyayama + + + + + Archaeoglobales + Archaeoglobales Huber and Stetter 2002 + unknown + NCBITaxon:2231 + Archaeoglobales + + + + + + + + Archaeoglobaceae + Archaeoglobaceae Huber and Stetter 2002 + unknown + NCBITaxon:2232 + Archaeoglobaceae + + + + + + + + Pseudomonas syringae DC3000 + Pseudomonas syringae pv. tomato DC3000 + unknown + NCBITaxon:223283 + Pseudomonas syringae pv. tomato str. DC3000 + + + + + unknown + Archaeoglobus Stetter 1988 + NCBITaxon:2233 + Archaeoglobus + + + + + + + + unknown + Archaeoglobus fulgidus Stetter 1988 + NCBITaxon:2234 + Archaeoglobus fulgidus + + + + + unknown + Halobacteriales Grant and Larsen 1989 + NCBITaxon:2235 + Halobacteriales + + + + + + + + unknown + Halobacteriaceae Gibbons 1974 + NCBITaxon:2236 + Halobacteriaceae + + + + + + + + + + unknown + Haloarcula Torreblanca et al. 1986 + NCBITaxon:2237 + Haloarcula + + + + + + + + Flavobacterium (subgen. Halobacterium) + Halobacter + Halobacterium + Halobacterium Elazari-Volcani 1957 + unknown + NCBITaxon:2239 + Halobacterium + + + + + + + + + Bacillus halobius ruber + Bacterium halobium + Flavobacterium (subgen. Halobacterium) halobium + Flavobacterium (subgen. Halobacterium) salinarium + Halobacter salinaria + Halobacterium cutirubrum + Halobacterium cutirubrum (Lochhead 1934) Elazari-Volcani 1957 (AL 1980) + Halobacterium halobium + Halobacterium halobium (Petter 1931) Elazari-Volcani 1957 (AL 1980) + Halobacterium salinarium + Pseudomonas salinaria + Serratia cutirubrum + Serratia salinaria + unknown + NCBITaxon:2242 + Halobacterium salinarum + + + + + unknown + 'Methanomicrobia' + NCBITaxon:224756 + Methanomicrobia + + + + + + + + Halobacterium pharaonis + Halobacterium pharaonis Soliman and Truper 1983 + Natronobacterium pharaonis + Natronobacterium pharaonis (Soliman and Truper 1983) Tindall et al. 1984 + Natronomonas pharaonis (Soliman and Truper 1983) Kamekura et al. 1997 + unknown + NCBITaxon:2257 + Natronomonas pharaonis + + + + + unknown + Thermococcales Zillig et al. 1988 + NCBITaxon:2258 + Thermococcales + + + + + + + + unknown + Thermococcaceae Zillig et al. 1988 + NCBITaxon:2259 + Thermococcaceae + + + + + + + + + unknown + Pyrococcus Fiala and Stetter 1986 + NCBITaxon:2260 + Pyrococcus + + + + + + + + unknown + Thermococcus Zillig 1983 + NCBITaxon:2263 + Thermococcus + + + + + + + + Thermococcus litoralis Neuner et al. 2001 + Thermococus litoralis + unknown + NCBITaxon:2265 + Thermococcus litoralis + + + + + unknown + Hybomitra bimaculata (Macquart, 1826) + NCBITaxon:226809 + Hybomitra bimaculata + + + + + unknown + Bacillus cereus (strain ATCC 14579 / DSM 31) + NCBITaxon:226900 + Bacillus cereus ATCC 14579 + + + + + unknown + NCBITaxon:227290 + Rhizobium/Agrobacterium group + + + + + + + + unknown + Coxiella burnetii str. RSA 493 + NCBITaxon:227377 + Coxiella burnetii RSA 493 + + + + + Indian nightshade + ma uek + mao qie + Solanum indicum L. + Solanum lasiocarpum Dunal + unknown + NCBITaxon:227722 + Solanum lasiocarpum + + + + + Human coronavirus (strain SARS) + SARS virus + Severe acute respiratory syndrome coronavirus + HCoV-SARS + unknown + NCBITaxon:227859 + SARS coronavirus + + + + + unknown + Sulfolobales Stetter 1989 + NCBITaxon:2281 + Sulfolobales + + + + + + + + unknown + Sulfolobus Brock et al. 1972 + NCBITaxon:2284 + Sulfolobus + + + + + + + + + unknown + Sulfolobus acidocaldarius Brock et al. 1972 + NCBITaxon:2285 + Sulfolobus acidocaldarius + + + + + Sulfolobus fataricus + Sulfolobus solfataricus Zillig et al. 1980 + unknown + NCBITaxon:2287 + Sulfolobus solfataricus + + + + + unknown + Solanum lyratum Thunb. + NCBITaxon:230192 + Solanum lyratum + + + + + unknown + NCBITaxon:230228 + Actinopodidae + + + + + + + + unknown + NCBITaxon:230233 + Missulena + + + + + + + + eastern mouse spider + unknown + NCBITaxon:230234 + Missulena bradleyi + + + + + hydrangea family + unknown + NCBITaxon:23097 + Hydrangeaceae + + + + + + + + Sporidiaceae + Sporidiales + unknown + NCBITaxon:231213 + Sporidiobolales + + + + + + + + + unknown + Bovine coronavirus (strain LSU) + NCBITaxon:231419 + Bovine coronavirus LSU + + + + + + + + unknown + Bovine coronavirus (strain OK) + NCBITaxon:231421 + Bovine coronavirus strain OK + + + + + + + + unknown + NCBITaxon:231432 + Bovine coronavirus (strain OK-0514-3) + + + + + unknown + NCBITaxon:232347 + magnoliids + + + + + + + + unknown + NCBITaxon:232378 + Proteales + + + + + + + + + unknown + NCBITaxon:233261 + Bovine coronavirus (strain LSU-94LSS-051) + + + + + unknown + NCBITaxon:233262 + Bovine enteric coronavirus (strain 98TXSF-110-ENT) + + + + + unknown + NCBITaxon:233264 + Bovine respiratory coronavirus (strain 98TXSF-110-LUN) + + + + + unknown + Thermotoga Huber et al. 1986 + NCBITaxon:2335 + Thermotoga + + + + + + + + unknown + Thermotoga maritima Huber et al. 1986 + NCBITaxon:2336 + Thermotoga maritima + + + + + Anaplasma marginale 'St. Maries' + Anaplasma marginale strain St. Maries + unknown + NCBITaxon:234826 + Anaplasma marginale str. St. Maries + + + + + unknown + NCBITaxon:235629 + Acalyphoideae + + + + + + + + unknown + NCBITaxon:235631 + Crotonoideae + + + + + + + + unknown + NCBITaxon:235880 + Acalypheae + + + + + + + + unknown + NCBITaxon:235882 + Micrandreae + + + + + + + + unknown + NCBITaxon:237895 + Cryptosporidium hominis + + + + + unknown + Phyllomedusa oreades Brandao, 2002 + NCBITaxon:239355 + Phyllomedusa oreades + + + + + unknown + Acanthophis antarcticus rugosus + NCBITaxon:239748 + Acanthophis rugosus + + + + + unknown + NCBITaxon:241778 + Apioideae + + + + + + + + + unknown + NCBITaxon:241780 + apioid superclade + + + + + + + + unknown + NCBITaxon:241789 + Scandiceae + + + + + + + + unknown + NCBITaxon:241793 + Apium clade + + + + + + + + unknown + NCBITaxon:241799 + Daucinae + + + + + + + + unknown + NCBITaxon:241806 + Moniliformopses + + + + + + + + Thermotogales + Thermotogales (Huber and Stetter 1992) Reysenbach 2002 + thermotogales + unknown + NCBITaxon:2419 + Thermotogales + + + + + + + + Agkistrodon blomhoffi + Agkistrodon blomhoffii + Agkistrodon halys blomhoffi + Agkistrodon halys blomhoffii + Gloydius blomhoffii + Gloydius halys blomhoffi + mamushi + unknown + NCBITaxon:242054 + Gloydius blomhoffi + + + + + + + + unknown + NCBITaxon:242110 + Parabuthus granulatus + + + + + Dehalococcoides ethenogenes str. 195 + Dehalococcoides ethenogenes strain 195 + unknown + NCBITaxon:243164 + Dehalococcoides ethenogenes 195 + + + + + Geobacter sulfurreducens str. PCA + Geobacter sulfurreducens strain PCA + unknown + NCBITaxon:243231 + Geobacter sulfurreducens PCA + + + + + Methylococcus capsulatus ATCC 33009 + Methylococcus capsulatus MC + Methylococcus capsulatus NCIB 11132 + Methylococcus capsulatus Bath + unknown + NCBITaxon:243233 + Methylococcus capsulatus str. Bath + + + + + unknown + NCBITaxon:245739 + Halobacterium sp. AS7092 + + + + + Carboxydothermus hydrogenoformans str. Z-2901 + unknown + NCBITaxon:246194 + Carboxydothermus hydrogenoformans Z-2901 + + + + + Silicibacter pomeroyi str. DSS-3 + Silicibacter pomeroyi strain DSS-3 + unknown + NCBITaxon:246200 + Silicibacter pomeroyi DSS-3 + + + + + unknown + NCBITaxon:246265 + Cyphononyx + + + + + + + + unknown + NCBITaxon:246266 + Cyphononyx dorsalis + + + + + unknown + NCBITaxon:246410 + Coccidioides immitis RS + + + + + Chinese tree shrew + unknown + Tupaia belangeri chinensis + NCBITaxon:246437 + Tupaia chinensis + + + + + unknown + Lycium L. + NCBITaxon:24646 + Lycium + + + + + + + + unknown + NCBITaxon:24663 + Physalis + + + + + + + + unknown + NCBITaxon:246981 + Anuroctonus + + + + + + + + unknown + NCBITaxon:246982 + Anuroctonus phaiodactylus + + + + + violet family + unknown + NCBITaxon:24921 + Violaceae + + + + + + + + + madder family + unknown + NCBITaxon:24966 + Rubiaceae + + + + + + + + unknown + NCBITaxon:251701 + Pseudomonas syringae group genomosp. 3 + + + + + + + + unknown + NCBITaxon:252530 + Cratylia mollis + + + + + unknown + NCBITaxon:252607 + Lutzomyia [NCBITaxon:252607] + + + + + + + + unknown + NCBITaxon:252780 + Parabuthus villosus + + + + + unknown + NCBITaxon:254849 + Halocynthia aurantium + + + + + unknown + Chlorobaculum Imhoff 2003 + NCBITaxon:256319 + Chlorobaculum + + + + + + + + unknown + NCBITaxon:257327 + Conus gladiator + + + + + unknown + NCBITaxon:257335 + Conus mus + + + + + Agkistrodon blomhoffii brevicaudus + Agkistrodon halys brevicaudus + Gloydius brevicaudus + Gloydius brevicauodus + Gloydius halys brevicaudus + unknown + NCBITaxon:259325 + Gloydius blomhoffi brevicaudus + + + + + unknown + NCBITaxon:259437 + Buthida + + + + + + + + unknown + NCBITaxon:259439 + Iurida + + + + + + + + unknown + NCBITaxon:259591 + Odontobuthus + + + + + + + + unknown + NCBITaxon:262014 + Xenopus [NCBITaxon:262014] + + + + + + + + + Orgya pseudotsugata MNPV + Orgya pseudotsugata nucleopolyhedrovirus + Orgyia pseudotsugata multicapsid nuclear polyhedrosis virus + Orgyia pseudotsugata multicapsid nuclear polyhedrosis virus OpMNPV + Orgyia pseudotsugata multicapsid nucleopolyhedrovirus + Orgyia pseudotsugata multicapsid polyhedrosis virus + Orgyia pseudotsugata multinucleocapsid nuclear polyhedrosis virus + Orgyia pseudotsugata multiple nucleopolyhedrovirus + OpMNPV + unknown + NCBITaxon:262177 + Orgyia pseudotsugata MNPV + + + + + Thermus thermophilus str. HB27 + Thermus thermophilus strain HB27 + unknown + NCBITaxon:262724 + Thermus thermophilus HB27 + + + + + Ralstonia eutropha JMP-134 + Ralstonia eutropha str. JMP134 + Ralstonia eutropha strain JMP134 + Cupriavidus necator JMP134 + Wautersia eutropha JMP134 + unknown + NCBITaxon:264198 + Ralstonia eutropha JMP134 + + + + + unknown + NCBITaxon:265240 + Lychnis + + + + + + + + Listeria monocytogenes '4b F2365' + Listeria monocytogenes 4b F2365 + Listeria monocytogenes strain 4b F2365 + unknown + NCBITaxon:265669 + Listeria monocytogenes str. 4b F2365 + + + + + unknown + NCBITaxon:267213 + Ipomoeeae + + + + + + + + unknown + Shewanellaceae Ivanova et al. 2004 + NCBITaxon:267890 + Shewanellaceae + + + + + + + + steppe bison + unknown + NCBITaxon:268291 + Bison priscus + + + + + unknown + NCBITaxon:269634 + Paraphysa + + + + + + + + unknown + Phrixotrichus auratus + NCBITaxon:269635 + Paraphysa scrofa + + + + + Methanosarcina barkeri 'Fusaro' + Methanosarcina barkeri strain Fusaro + Methanosarcina barkeri DSM 804 + Methanosarcina barkeri Fusaro + unknown + NCBITaxon:269797 + Methanosarcina barkeri str. Fusaro + + + + + unknown + Thermus Brock and Freeze 1969 (Approved Lists 1980) emend. Nobre et al. 1996 + NCBITaxon:270 + Thermus + + + + + + + + + Thermus aguaticus + Thermus aquaticus Brock and Freeze 1969 + Thermus thermophilus/T.aquaticus/T.flavus + unknown + NCBITaxon:271 + Thermus aquaticus + + + + + Oriental armyworm + ear-cutting caterpillar + northern armyworm + rice ear-cutting caterpillar + Leucania separata + Pseudaletia separata + unknown + NCBITaxon:271217 + Mythimna separata + + + + + unknown + Aquifex Huber et al. 1992 + NCBITaxon:2713 + Aquifex + + + + + + + + unknown + NCBITaxon:272131 + Nostoc punctiforme + + + + + unknown + NCBITaxon:272141 + Palicourea condensata + + + + + Amoeba proteus symbiotic bacterium + Candidatus Legionella jeonii + Legionella jeonii + X bacterium + X-Bacteria + X-bacterium + unknown + NCBITaxon:2728 + Candidatus Legionella jeonii + + + + + unknown + NCBITaxon:27348 + Puccinia recondita + + + + + + + + unknown + NCBITaxon:27394 + Tetragnathidae + + + + + + + + Flavobacterium thermophilum + Thermua flavus + Thermus aquaticus (SUBSP. FLAVUS) + Thermus aquaticus (SUBSP. THERMOPHILUS) + Thermus aquaticus flavus + Thermus aquaticus subsp. thermophilus + Thermus aquaticus thermophilus + Thermus flavus + Thermus themophilus + Thermus thermophilus + Thermus thermophilus (ex Oshima and Imahori 1974) Manaia et al. 1995 + unknown + NCBITaxon:274 + Thermus thermophilus + + + + + + + + + leaf beetles + unknown + NCBITaxon:27439 + Chrysomelidae + + + + + + + + unknown + NCBITaxon:27446 + Luciola mingrelica + + + + + Carnibacterium + unknown + Carnobacterium Collins et al. 1987 + NCBITaxon:2747 + Carnobacterium + + + + + + + + assassin bugs + unknown + NCBITaxon:27479 + Reduviidae + + + + + + + + Carnobacterium divergens (Holzapfel and Gerber 1984) Collins et al. 1987 + Lactobacillus divergens + Lactobacillus divergens Holzapfel and Gerber 1984 + Carnibacterium divergens + unknown + NCBITaxon:2748 + Carnobacterium divergens + + + + + aphids + unknown + NCBITaxon:27482 + Aphididae + + + + + + + + unknown + NCBITaxon:27492 + Myrmica + + + + + + + + spider wasps + unknown + NCBITaxon:27515 + Pompilidae + + + + + + + + band-winged grasshoppers + unknown + Locustinae + NCBITaxon:27549 + Oedipodinae + + + + + + + + Old World tree frogs + unknown + NCBITaxon:27577 + Rhacophoridae + + + + + + + + flying frogs + unknown + NCBITaxon:27578 + Rhacophorus + + + + + + + + eucaryotes + eukaryotes + Eucarya + Eucaryotae + Eukarya + Eukaryotae + unknown + NCBITaxon:2759 + Eukaryota + + + + + + + + + + + + + + + + + + unknown + NCBITaxon:27592 + Bovinae + + + + + + + + + + + Rhodophyceae + Rhodophycota + algae + red algae + rhodophytes + unknown + NCBITaxon:2763 + Rhodophyta + + + + + + + + + unknown + NCBITaxon:27768 + Istiophorinae + + + + + + + + unknown + NCBITaxon:2784 + Porphyra + + + + + + + + unknown + NCBITaxon:27841 + Echinostomata + + + + + + + + unknown + NCBITaxon:27843 + Fasciolidae + + + + + + + + unknown + NCBITaxon:2788 + Porphyra yezoensis + + + + + pogonophores + unknown + NCBITaxon:27906 + Pogonophora + + + + + + + + unknown + Bangiophycideae + NCBITaxon:2797 + Bangiophyceae + + + + + + + + unknown + NCBITaxon:28017 + Gigartinales + + + + + + + + unknown + NCBITaxon:2802 + Ceramiales + + + + + + + + unknown + Bacterium curvatum + NCBITaxon:28038 + Lactobacillus curvatus + + + + + unknown + Florideophycideae + NCBITaxon:2806 + Florideophyceae + + + + + + + + + Bacteroides intermedius + Bacteroides intermedius (Holdeman and Moore 1970) Johnson and Holdeman 1983 + Bacteroides melaninogenicus subsp. intermedius + Bacteroides melaninogenicus subsp. intermedius Holdeman and Moore 1970 (Approved Lists 1980) + Prevotella intermedia (Holdeman and Moore 1970) Shah and Collins 1990 + Prevotella intermedius + unknown + NCBITaxon:28131 + Prevotella intermedia + + + + + Alphabacteria + Alphabacteria Cavalier-Smith 2002 + Alphaproteobacteria + Proteobacteria alpha subdivision + Purple bacteria, alpha subdivision + a-proteobacteria + alpha proteobacteria + alpha subdivision + alpha subgroup + unknown + NCBITaxon:28211 + Alphaproteobacteria + + + + + + + + + + + + 'Betaproteobacteria' + Proteobacteria beta subdivision + Purple bacteria, beta subdivision + b-proteobacteria + beta proteobacteria + beta subdivision + beta subgroup + unknown + NCBITaxon:28216 + Betaproteobacteria + + + + + + + + + 'Deltaproteobacteria' + Deltabacteria + Deltabacteria Cavalier-Smith 2002 + Proteobacteria delta subdivision + Purple bacteria, delta subdivision + d-proteobacteria + delta proteobacteria + delta subdivision + delta subgroup + unknown + NCBITaxon:28221 + Deltaproteobacteria + + + + + + + + + + unknown + Geobacter Lovley et al. 1995 + NCBITaxon:28231 + Geobacter + + + + + + + + unknown + NCBITaxon:282414 + Squaliformes + + + + + + + + Staphylococcus aureus subsp. aureus str. MRSA252 + Staphylococcus aureus subsp. aureus strain MRSA252 + unknown + NCBITaxon:282458 + Staphylococcus aureus subsp. aureus MRSA252 + + + + + Staphylococcus aureus subsp. aureus str. MSSA476 + Staphylococcus aureus subsp. aureus strain MSSA476 + unknown + NCBITaxon:282459 + Staphylococcus aureus subsp. aureus MSSA476 + + + + + Adenovirus type 5 + Human adenovirus type 5 + Mastadenovirus 5 + Mastadenovirus h5 + adenovirus Ad5 + adenovirus type 5 AD5 + unknown + NCBITaxon:28285 + Human adenovirus 5 + + + + + Comamonas + Comamonas (ex Davis and Park 1962) De Vos et al. 1985 emend. Tamaoka et al. 1987 + Comamonas (ex Davis and Park 1962) De Vos et al. 1985 emend. Willems et al. 1991 + Comomonas + Comimonas + unknown + NCBITaxon:283 + Comamonas + + + + + + + + + coccolithophorids + prymnesiophytes + Chromophyta + Haptophyta + Prymnesiophyceae + Prymnesiophyta + algae + haptophytes + unknown + NCBITaxon:2830 + Haptophyceae + + + + + + + + unknown + NCBITaxon:283164 + Loxosceles boneti + + + + + Aplanobacter michiganense + Bacterium michiganense + Clavibacter michiganense + Clavibacter michiganensis corrig. (Smith 1910) Davis et al. 1984 + Corynebacterium michiganense + Corynebacterium michiganense (Smith 1910) Jensen 1934 (Approved Lists 1980) + Mycobacterium flavum subsp. michiganense + Phytomonas michiganensis + Pseudomonas michiganensis + unknown + NCBITaxon:28447 + Clavibacter michiganensis + + + + + + + + unknown + Pyrenophoraceae + NCBITaxon:28556 + Pleosporaceae + + + + + + + + unknown + Eurotiaceae + NCBITaxon:28568 + Trichocomaceae + + + + + + + + + unknown + NCBITaxon:28572 + Penicillium funiculosum + + + + + Chlorobacterium" Guillebeau 1890, nom. rejic. Opin. 6 (not "Chlorobacterium + Liquidomonas + Loefflerella + Peudomonas + Pseudomonas Migula 1894 + RNA similarity group I + unknown + NCBITaxon:286 + Pseudomonas + + + + + + + + + + + + Bacillus aeruginosus + Bacillus pyocyaneus + Bacterium aeruginosum + Bacterium pyocyaneum + Micrococcus pyocyaneus + Peudomonas aeruginosa + Pseudomonas aeruginosa (Schroeter 1872) Migula 1900 + Pseudomonas polycolor + Pseudomonas pyocyanea + unknown + NCBITaxon:287 + Pseudomonas aeruginosa + + + + + + + + unknown + NCBITaxon:28738 + Cyprinodontiformes + + + + + + + + topminnows + unknown + NCBITaxon:28756 + Fundulidae + + + + + + + + unknown + NCBITaxon:28781 + Adrianichthyoidei + + + + + + + + Group A rotaviruses + Rotavirus group A + group A rotavirus + unknown + NCBITaxon:28875 + Rotavirus A + + + + + + + + unknown + Tailed phages + NCBITaxon:28883 + Caudovirales + + + + + + + + + + Crenarchaeota + Crenarchaeota Garrity and Holt 2002 + Eocyta + crenarchaeotes + not Crenarchaeota Cavalier-Smith 2002 + eocytes + unknown + NCBITaxon:28889 + Crenarchaeota + + + + + + + + Euryarchaeota + Euryarchaeota Garrity and Holt 2002 + euryarchaeotes + not Euryarchaeota Cavalier-Smith 2002 + unknown + NCBITaxon:28890 + Euryarchaeota + + + + + + + + + + + + 'Salmonella enterica' + Salmonella enterica + unknown + NCBITaxon:28901 + Salmonella enterica + + + + + + + + Bowringia milbraedii + Bowringia mildibraedii + unknown + NCBITaxon:28956 + Bowringia mildbraedii + + + + + unknown + NCBITaxon:28957 + Canavalia lineata + + + + + unknown + NCBITaxon:28958 + Canavalia virosa + + + + + Candida sphaerica + Kluyveromyces drosophilarum + Kluyveromyces lactis var. drosophilarum + Kluyveromyces lactis var. lactis + Kluyveromyces marxianus lactis + Kluyveromyces marxianus var. drosophilarum + Kluyveromyces marxianus var. lactis + unknown + NCBITaxon:28985 + Kluyveromyces lactis + + + + + Myxobacteria + Myxococcales Tchan et al. 1948 + The Myxobacteria + fruiting gliding bacteria + unknown + NCBITaxon:29 + Myxococcales + + + + + + + + unknown + Urediniomycetes + NCBITaxon:29000 + Pucciniomycotina + + + + + + + + + unknown + Neocallimasticales + NCBITaxon:29006 + Neocallimastigales + + + + + + + + unknown + Neocallimasticaceae + NCBITaxon:29007 + Neocallimastigaceae + + + + + + + + unknown + NCBITaxon:29016 + Ornithoctonus + + + + + + + + unknown + NCBITaxon:2902 + Emiliania + + + + + + + + unknown + NCBITaxon:29020 + Scutigeridae + + + + + + + + unknown + NCBITaxon:29021 + Scutigera + + + + + + + + house centipede + twenty-eight-legger + unknown + NCBITaxon:29022 + Scutigera coleoptrata + + + + + unknown + Emiliania huxleyii + NCBITaxon:2903 + Emiliania huxleyi + + + + + unknown + NCBITaxon:29030 + Drosophila takahashii + + + + + Phlebotomus (Phlebotomus) papatasi + Phlebotomus papatasii + unknown + NCBITaxon:29031 + Phlebotomus papatasi + + + + + unknown + Colletotrichum lindemuthianum + NCBITaxon:290576 + Glomerella lindemuthiana + + + + + Cursor grass mouse + unknown + NCBITaxon:29096 + Akodon cursor + + + + + unknown + Polybia paulista Ihering, 1896 + NCBITaxon:291283 + Polybia paulista + + + + + Mediterranean mussel + unknown + NCBITaxon:29158 + Mytilus galloprovincialis + + + + + unknown + NCBITaxon:29169 + Ancylostoma + + + + + + + + dog hookworm + unknown + NCBITaxon:29170 + Ancylostoma caninum + + + + + unknown + NCBITaxon:29216 + Bangiales + + + + + + + + Dactylococcopsis salina Walsby et al. 1983 + Myxobactron salinum + unknown + NCBITaxon:292566 + Dactylococcopsis salina + + + + + + + + unknown + Haloarcula japonica Takashina et al. 1991 + NCBITaxon:29282 + Haloarcula japonica + + + + + Bacillus thuringiensis (subsp. finitimus) + Bacillus thuringiensis finitimus + Bacillus thuringiensis subsp. finitimus + Bacillus thuringiensis var. finitimus + unknown + NCBITaxon:29337 + Bacillus thuringiensis serovar finitimus + + + + + Bacteriophage C3 + Clostridium botulinum D bacteriophage + Clostridium botulinum type D bacteriophage + unknown + NCBITaxon:29342 + Clostridium botulinum D phage + + + + + Bacillus fluorescens + Bacillus fluorescens liquefaciens + Bacterium fluorescen + Bacterium fluorescens + Liquidomonas fluorescens + Pseudomonas fluorescens Migula 1895 + unknown + NCBITaxon:294 + Pseudomonas fluorescens + + + + + unknown + NCBITaxon:29417 + Mastigocladus + + + + + + + + unknown + NCBITaxon:294381 + Entamoeba histolytica HM-1:IMSS + + + + + 'Epsilonproteobacteria' + Proteobacteria epsilon subdivision + Purple bacteria, epsilon subdivision + e-proteobacteria + epsilon proteobacteria + epsilon subdivision + epsilon subgroup + not Epsilobacteria + not Epsilobacteria Cavalier-Smith 2002 + unknown + NCBITaxon:29547 + Epsilonproteobacteria + + + + + + + + unknown + NCBITaxon:29607 + Dryopteridaceae + + + + + + + + unknown + Oryza eichingeri Peter + NCBITaxon:29689 + Oryza eichingeri + + + + + unknown + Oryza grandiglumis (Doll) Prodoehl + NCBITaxon:29690 + Oryza grandiglumis + + + + + unknown + NCBITaxon:297308 + Ixodoidea + + + + + + + + wine grape + unknown + Vitis vinifera L. + NCBITaxon:29760 + Vitis vinifera + + + + + unknown + NCBITaxon:29811 + Ginkgoopsida + + + + + + + + pickerel frog + unknown + NCBITaxon:298395 + Rana palustris + + + + + Bionectria aureofulva + Clonostachys rosea + Gliocladium roseum + Nectria aureofulva + Nectria gliocladioides + Nectria ochroleuca + unknown + NCBITaxon:29856 + Bionectria ochroleuca + + + + + Chromocrea + Creopus + unknown + NCBITaxon:29859 + Hypocrea + + + + + + + + + unknown + NCBITaxon:298895 + Desmodillus + + + + + + + + Cape short-eared gerbil + unknown + NCBITaxon:298896 + Desmodillus auricularis + + + + + unknown + NCBITaxon:29922 + Mucor mucedo + + + + + unknown + Eurypelma sp. + NCBITaxon:29932 + Aphonopelma sp. + + + + + unknown + NCBITaxon:29941 + Centruroides limpidus limpidus + + + + + unknown + NCBITaxon:29961 + Parastacoidea + + + + + + + + unknown + NCBITaxon:29964 + Cancroidea + + + + + + + + dusky gopher frog + unknown + NCBITaxon:299683 + Rana sevosa + + + + + Dahl's olive treefrog + northern waterfrog + unknown + Litoria dahlii (Boulenger, 1896) + NCBITaxon:299727 + Litoria dahlii + + + + + unknown + NCBITaxon:299749 + Novirana + + + + + + + + + unknown + NCBITaxon:299750 + Aquarana/sylvatica group + + + + + + + + + unknown + NCBITaxon:299751 + Sierrana + + + + + + + + unknown + NCBITaxon:299753 + Pantherana/Torrentirana group + + + + + + + + unknown + NCBITaxon:299759 + Stertirana + + + + + + + + unknown + NCBITaxon:299760 + Nenirana/Scurrilirana group + + + + + + + + unknown + NCBITaxon:299762 + Nenirana + + + + + + + + + unknown + NCBITaxon:299776 + Laurasiarana + + + + + + + + isopods + pill bugs, wood lice and sea slaters + unknown + NCBITaxon:29979 + Isopoda + + + + + + + + + Shigella sonnei str. Ss046 + Shigella sonnei strain Ss046 + unknown + NCBITaxon:300269 + Shigella sonnei Ss046 + + + + + bedbugs + unknown + Cimididae + NCBITaxon:30078 + Cimicidae + + + + + + + + unknown + NCBITaxon:30079 + Cimex + + + + + + + + unknown + NCBITaxon:300852 + Thermus thermophilus HB8 + + + + + unknown + Dehalococcoidetes + NCBITaxon:301297 + Dehalococcoidetes + + + + + + + + unknown + Brugmansia Pers. + NCBITaxon:301914 + Brugmansia + + + + + + + + unknown + NCBITaxon:301959 + Mytilinae + + + + + + + + tiger moths + unknown + NCBITaxon:30225 + Arctiidae + + + + + + + + Arthrobacter siderocapsulatus + Arthrobacter siderocapsulatus Dubinin (sic) and Zhdanov 1975 + Arthrobacter siderocapsulatus Dubinina and Zhdanov 1975 (Approved Lists 1980) + Bacillus fluorescens putidus + Bacillus putidus + Pseudomanas putida + Pseudomonas arvilla + Pseudomonas convexa + Pseudomonas eisenbergii + Pseudomonas incognita + Pseudomonas ovalis + Pseudomonas putida (Trevisan 1889) Migula 1895 + Pseudomonas rugosa + Pseudomonas striata + unknown + NCBITaxon:303 + Pseudomonas putida + + + + + appendicularians + unknown + Larvacea + NCBITaxon:30302 + Appendicularia + + + + + + + + unknown + NCBITaxon:30311 + Ascaphidae + + + + + + + + unknown + NCBITaxon:30312 + Bombinatoridae + + + + + + + + unknown + NCBITaxon:30314 + Mesobatrachia + + + + + + + + unknown + NCBITaxon:30319 + Pipoidea + + + + + + + + euglenids + euglenophytes + Euglenophyceae + Euglenophyta + algae + euglenoids + unknown + NCBITaxon:3035 + Euglenida + + + + + + + + unknown + NCBITaxon:30352 + Ranoidea + + + + + + + + + unknown + Ambystomatoidea + NCBITaxon:30367 + Salamandroidea + + + + + + + + + Astasia longa + Euglena longa (Pringsheim) Marin et Melkonian + unknown + NCBITaxon:3037 + Euglena longa + + + + + unknown + NCBITaxon:3038 + Euglena + + + + + + + + + unknown + NCBITaxon:30384 + Aythya + + + + + + + + unknown + Euglena gracilis bacillaris + NCBITaxon:3039 + Euglena gracilis + + + + + Chlorophycota + Chlorophyta sensu Bremer 1985 + algae + green algae + unknown + NCBITaxon:3041 + Chlorophyta + + + + + + + + + + Volvocales + Volvocida + unknown + NCBITaxon:3042 + Chlamydomonadales + + + + + + + + electric rays + unknown + NCBITaxon:30480 + Torpedinidae + + + + + + + + ground sharks + unknown + NCBITaxon:30483 + Carcharhiniformes + + + + + + + + + + Triakis scylla + Triakis scyllia + unknown + NCBITaxon:30494 + Triakis scyllium + + + + + unknown + NCBITaxon:30496 + Lamniformes + + + + + + + + unknown + NCBITaxon:3051 + Chlamydomonadaceae + + + + + + + + dogfish sharks + unknown + NCBITaxon:30511 + Squalidae + + + + + + + + unknown + NCBITaxon:3052 + Chlamydomonas + + + + + + + + domestic yak + yak + Bos mutus grunniens + Poephagus grunniens + unknown + NCBITaxon:30521 + Bos grunniens + + + + + unknown + Chlamydomonas reihhardtii + NCBITaxon:3055 + Chlamydomonas reinhardtii + + + + + unknown + NCBITaxon:30560 + Microchiroptera + + + + + + + + Azara's night monkey + unknown + Aotus azarae + NCBITaxon:30591 + Aotus azarai + + + + + gray mouse lemur + unknown + NCBITaxon:30608 + Microcebus murinus + + + + + dwarf and mouse lemurs + unknown + NCBITaxon:30615 + Cheirogaleidae + + + + + + + + multimammate rats + unknown + NCBITaxon:30639 + Mastomys + + + + + + + + eastern gray squirrel + gray squirrel + unknown + Sciurus carolinensus + NCBITaxon:30640 + Sciurus carolinensis + + + + + unknown + Catostomoidea + NCBITaxon:30725 + Cobitoidea + + + + + + + + unknown + Cyprinoidei + NCBITaxon:30727 + Cyprinoidea + + + + + + + + unknown + Gloeobacterales Cavalier-Smith 2002 + NCBITaxon:307595 + Gloeobacterales + + + + + + + + unknown + Gloeobacteria Cavalier-Smith 2002 + NCBITaxon:307596 + Gloeobacteria + + + + + + + + ghost knifefishes + unknown + Sternopygoidei + NCBITaxon:30766 + Apteronotidae + + + + + + + + crocodile icefishes + unknown + NCBITaxon:30806 + Channichthyidae + + + + + + + + goatfishes + unknown + NCBITaxon:30854 + Mullidae + + + + + + + + drums + unknown + NCBITaxon:30870 + Sciaenidae + + + + + + + + unknown + NCBITaxon:30942 + Pleuronectoidei + + + + + + + + + unknown + NCBITaxon:31022 + Tetraodontiformes + + + + + + + + unknown + NCBITaxon:31028 + Tetraodontoidei + + + + + + + + puffer fishes + puffers + unknown + NCBITaxon:31031 + Tetraodontidae + + + + + + + + + unknown + Fugu + NCBITaxon:31032 + Takifugu + + + + + + + + + torafugu + unknown + Fugu rubripes + NCBITaxon:31033 + Takifugu rubripes + + + + + unknown + NCBITaxon:3110 + Prototheca + + + + + + + + unknown + NCBITaxon:311092 + Junoniini + + + + + + + + unknown + NCBITaxon:3111 + Prototheca wickerhamii + + + + + unknown + NCBITaxon:3113 + Ulvales + + + + + + + + unknown + NCBITaxon:3114 + Ulvaceae + + + + + + + + unknown + NCBITaxon:31163 + Bunodosoma + + + + + + + + unknown + NCBITaxon:31165 + Bunodosoma caissarum + + + + + sea lettuces + unknown + Enteromorpha + NCBITaxon:3118 + Ulva + + + + + + + + unknown + NCBITaxon:31181 + Strongylocentrotidae + + + + + + + + unknown + NCBITaxon:31184 + Temnopleuroida + + + + + + + + unknown + NCBITaxon:31185 + Toxopneustidae + + + + + + + + unknown + NCBITaxon:3120 + Ulva pertusa + + + + + Caenorhabditis vulgarensis + Caenorhabditis vulgariensis + unknown + NCBITaxon:31233 + Caenorhabditis vulgaris + + + + + unknown + NCBITaxon:31234 + Caenorhabditis remanei + + + + + unknown + NCBITaxon:31244 + Schistosomatoidea + + + + + + + + blood flukes + unknown + NCBITaxon:31245 + Schistosomatidae + + + + + + + + unknown + Trypanosoma (Trypanozoon) brucei rhodesiense + NCBITaxon:31286 + Trypanosoma brucei rhodesiense + + + + + unknown + NCBITaxon:31345 + Bangiaceae + + + + + + + + unknown + NCBITaxon:31377 + Ceramiaceae + + + + + + + + unknown + NCBITaxon:314126 + Drechslerella + + + + + + + + unknown + NCBITaxon:314145 + Laurasiatheria + + + + + + + + + + + unknown + NCBITaxon:314146 + Euarchontoglires + + + + + + + + + + Rodents and rabbits + unknown + NCBITaxon:314147 + Glires + + + + + + + + + unknown + NCBITaxon:31427 + Hypneaceae + + + + + + + + unknown + NCBITaxon:31428 + Hypnea + + + + + + + + unknown + Anthropoidea + NCBITaxon:314293 + Simiiformes + + + + + + + + + unknown + NCBITaxon:314294 + Cercopithecoidea + + + + + + + + apes + unknown + NCBITaxon:314295 + Hominoidea + + + + + + + + + unknown + NCBITaxon:316286 + Ceratogyrus + + + + + + + + unknown + Ceratogyrus cornuatus De Wet & Dippenaar-Schoeman, 1991 + NCBITaxon:316287 + Ceratogyrus cornuatus + + + + + Human coronavirus (strain OC43) + Human coronavirus strain OC43 + HCoV-OC43 + unknown + NCBITaxon:31631 + Human coronavirus OC43 + + + + + unknown + NCBITaxon:31645 + Hepatitis C virus (isolate Taiwan) + + + + + unknown + Hepatitis C virus type 1a + NCBITaxon:31646 + Hepatitis C virus subtype 1a + + + + + + + + Hepatitis C virus type 1b + hepatitis C virus type 1b HCV-1b + unknown + NCBITaxon:31647 + Hepatitis C virus subtype 1b + + + + + + + + + unknown + Hepatitis C virus type 2a + NCBITaxon:31649 + Hepatitis C virus subtype 2a + + + + + + + + unknown + NCBITaxon:3166 + Chlorophyceae + + + + + + + + Hyla hypochondrialis + Phyllomedusa hypochondria + Phyllomedusa hypochondrialis (Daudin, 1800) + Phyllomedusa hypocondrialis + Pithecopus hypochondrialis + orange-legged leaf frog + unknown + NCBITaxon:317381 + Phyllomedusa hypochondrialis + + + + + Brazilian treefrog + Usina treefrog + Hyla biobeba + Hyla lundii + Hypsiboas lundii (Burmeister, 1856) + unknown + NCBITaxon:318326 + Hypsiboas lundii + + + + + unknown + NCBITaxon:318546 + Pseudocrenilabrinae + + + + + + + + + unknown + NCBITaxon:319058 + Haplochromini + + + + + + + + unknown + NCBITaxon:319060 + Tilapiini + + + + + + + + unknown + NCBITaxon:319095 + African cichlids + + + + + + + + higher plants + land plants + plants + unknown + NCBITaxon:3193 + Embryophyta + + + + + + + + + Propionibacteriaceae Delwiche 1957 (Approved Lists 1980) emend. Rainey et al. 1997 + Propionibacterium group + Propionicibacteriaceae + unknown + NCBITaxon:31957 + Propionibacteriaceae + + + + + + + + unknown + Clostridiaceae Pribram 1933 + NCBITaxon:31979 + Clostridiaceae + + + + + + + + 'Rhodobacteraceae' + Rhodobacter group + Roseobacter group + alpha-3 proteobacteria + unknown + NCBITaxon:31989 + Rhodobacteraceae + + + + + + + + Burkholderia Yabuuchi et al. 1993 emend. Gillis et al. 1995 + Pseudomonas RNA homology group II + unknown + NCBITaxon:32008 + Burkholderia + + + + + + + + 'Methylophilaceae' + Methylophilus group + beta subdivision methylotrophs + beta-subdivision methylotrophs + unknown + NCBITaxon:32011 + Methylophilaceae + + + + + + + + 'Lophomonas alcaligenes' + 'Vibrio percolans' + Comamonas terrigena + Comamonas terrigena (ex Hugh 1962) De Vos et al. 1985 emend. Wauters et al. 2003 + Comamonas terrigena (ex Hugh 1962) De Vos et al. 1985 emend. Willems et al. 1991 + Lophomonas alcaligenes + Vibrio percolans + unknown + NCBITaxon:32013 + Comamonas terrigena + + + + + Desulfovibrio vulgaris vulgaris + unknown + Desulfovibrio vulgaris subsp. vulgaris Postgate and Campbell 1966 + NCBITaxon:32017 + Desulfovibrio vulgaris subsp. vulgaris + + + + + + + + unknown + NCBITaxon:32045 + unclassified Proteobacteria + + + + + + + + unknown + NCBITaxon:32046 + Synechococcus elongatus + + + + + + + + Anaplasma marginale 'Florida' + Anaplasma marginale strain Florida + unknown + NCBITaxon:320483 + Anaplasma marginale str. Florida + + + + + Chlorobacteria + Chloroflecales + Chloroflexaceae/Deinococcaceae group + Chloroflexi + Chloroflexus/Deinococcaceae group + Chloroflexus/Deinococcus group + not Chlorobacteria Cavalier-Smith 2002 + unknown + NCBITaxon:32061 + Chloroflexi (class) + + + + + + + + 'Chloroflexales' + Chloroflexaceae group + Chloroflexus group + unknown + NCBITaxon:32064 + Chloroflexales + + + + + + + + 'Fusobacteria' + fusobacteria + unknown + NCBITaxon:32066 + Fusobacteria + + + + + + + + Aquifecales + Aquificales Reysenbach 2002 + Hydrogenic oxygen reducing bacteria + Obligately chemolithotrophic hydrogen bacteria + Oligately chemolithotrophic hydrogen bacteria + Oxygen reducing bacteria + Oxygen-reducing bacteria + aquificales + unknown + NCBITaxon:32069 + Aquificales + + + + + + + + Bryopsida + Musci + bryophytes + mosses + unknown + NCBITaxon:3208 + Bryophyta + + + + + + + + unknown + NCBITaxon:3214 + Bryopsida + + + + + + + + unknown + NCBITaxon:321614 + Phaeosphaeria nodorum SN15 + + + + + aphid P-endosymbionts + unknown + Buchnera Munson et al. 1991 + NCBITaxon:32199 + Buchnera + + + + + + + + unknown + NCBITaxon:322570 + Apollonia + + + + + + + + unknown + NCBITaxon:32281 + Drosophila [NCBITaxon:32281] + + + + + + + + + + unknown + NCBITaxon:32297 + funebris group + + + + + + + + Pseudomonas syringae (PV. TOMATO) + Pseudomonas syringae tomato + unknown + NCBITaxon:323 + Pseudomonas syringae pv. tomato + + + + + + + + unknown + NCBITaxon:32321 + repleta group + + + + + + + + unknown + NCBITaxon:32335 + virilis group + + + + + + + + + unknown + NCBITaxon:32341 + Sophophora + + + + + + + + + + unknown + NCBITaxon:32346 + melanogaster group + + + + + + + + + + + unknown + NCBITaxon:32347 + ananassae subgroup + + + + + + + + unknown + NCBITaxon:32351 + melanogaster subgroup + + + + + + + + + + + + + + + unknown + NCBITaxon:32352 + montium subgroup + + + + + + + + unknown + NCBITaxon:32354 + takahashii subgroup + + + + + + + + unknown + NCBITaxon:32355 + obscura group + + + + + + + + + unknown + NCBITaxon:32357 + obscura subgroup + + + + + + + + unknown + NCBITaxon:32358 + pseudoobscura subgroup + + + + + + + + + + unknown + NCBITaxon:32365 + willistoni group + + + + + + + + unknown + NCBITaxon:32367 + willistoni subgroup + + + + + + + + + + + unknown + NCBITaxon:32386 + victoria group + + + + + + + + teleost fishes + unknown + NCBITaxon:32443 + Teleostei + + + + + + + + unknown + NCBITaxon:32447 + Euteleostei + + + + + + + + + unknown + NCBITaxon:32455 + Acanthopterygii + + + + + + + + unknown + NCBITaxon:32456 + Atherinomorpha + + + + + + + + + unknown + NCBITaxon:32485 + Percomorpha + + + + + + + + + + + unknown + NCBITaxon:325165 + Nomascus + + + + + + + + unknown + NCBITaxon:325166 + Symphalangus + + + + + + + + unknown + NCBITaxon:32517 + Tetradontoidea + + + + + + + + unknown + NCBITaxon:32518 + Paracanthopterygii + + + + + + + + unknown + NCBITaxon:32519 + Ostariophysi + + + + + + + + unknown + NCBITaxon:32521 + Elopomorpha + + + + + + + + tetrapods + unknown + NCBITaxon:32523 + Tetrapoda + + + + + + + + + amniotes + unknown + NCBITaxon:32524 + Amniota + + + + + + + + + unknown + NCBITaxon:32525 + Theria + + + + + + + + + Ethiopian wolf + simian jackal + unknown + NCBITaxon:32534 + Canis simensis + + + + + unknown + NCBITaxon:325553 + Rana incertae sedis + + + + + + + + diapsids + unknown + Diapsida + NCBITaxon:32561 + Sauria + + + + + + + + + unknown + NCBITaxon:32603 + Human herpesvirus 6A + + + + + + + + unknown + ferns + NCBITaxon:3263 + Filicophyta + + + + + + + + unknown + NCBITaxon:3268 + Filicales + + + + + + + + unknown + NCBITaxon:327045 + Orthoretrovirinae + + + + + + + + + + + unknown + NCBITaxon:327046 + Spumaretrovirinae + + + + + + + + unknown + NCBITaxon:328432 + unclassified Nucleopolyhedrovirus + + + + + + + + unknown + Dryopteris Adans. + NCBITaxon:3287 + Dryopteris + + + + + + + + Burkholderia pickettii + Burkholderia pickettii (Ralston et al. 1973) Yabuuchi et al. 1993 + Pseudomonas pickettii + Pseudomonas pickettii Ralston et al. 1973 (Approved Lists 1980) + Ralstonia pickettii (Ralston et al. 1973) Yabuuchi et al. 1996 + unknown + NCBITaxon:329 + Ralstonia pickettii + + + + + unknown + NCBITaxon:3290 + Filicopsida + + + + + + + + Clavibacter michiganense michiganense + Clavibacter michiganensis michiganensis + Clavibacter michiganensis subsp. michiganensis corrig. (Smith 1910) Davis et al. 1984 + Corynebacterium michiganense subsp. michiganense + unknown + NCBITaxon:33013 + Clavibacter michiganensis subsp. michiganensis + + + + + Ruminococcus gnavus Moore et al. 1976 + Ruminococcus gravus + unknown + NCBITaxon:33038 + Ruminococcus gnavus + + + + + unknown + NCBITaxon:33071 + Gloeobacter + + + + + + + + unknown + NCBITaxon:33072 + Gloeobacter violaceus + + + + + unknown + NCBITaxon:3308 + Ginkgoales + + + + + + + + Dictyostelia + Dictyosteliales + Dictyostelida + dictyostelid cellular slime molds + unknown + NCBITaxon:33083 + Dictyosteliida + + + + + + + + unknown + Entamoebida + NCBITaxon:33084 + Entamoebidae + + + + + + + + unknown + NCBITaxon:3309 + Ginkgoaceae + + + + + + + + Chlorobionta + Chlorobionta Bremer 1985 + Chlorophyta/Embryophyta group + Viridiplantae Cavalier-Smith 1981 + chlorophyte/embryophyte group + green plants + unknown + NCBITaxon:33090 + Viridiplantae + + + + + + + + + unknown + NCBITaxon:3310 + Ginkgo + + + + + + + + unknown + NCBITaxon:33103 + Ulvophyceae + + + + + + + + ginkgo + maidenhair tree + unknown + NCBITaxon:3311 + Ginkgo biloba + + + + + unknown + conifers + NCBITaxon:3312 + Coniferophyta + + + + + + + + Chinese-lantern + Japanese lantern + winter-cherry + unknown + Physalis alkekengi L. + NCBITaxon:33120 + Physalis alkekengi + + + + + + + + unknown + NCBITaxon:3313 + Coniferales + + + + + + + + unknown + NCBITaxon:33154 + Fungi/Metazoa group + + + + + + + + + Ashbya gossipii + Ashbya gossypii + Eremothecium gossypii (Ashby et Nowell) Kurtzman + Nematospora gossypii + unknown + NCBITaxon:33169 + Eremothecium gossypii + + + + + Ashbya + Holleya + unknown + NCBITaxon:33170 + Eremothecium + + + + + + + + unknown + NCBITaxon:33178 + Aspergillus terreus + + + + + pine family + unknown + NCBITaxon:3318 + Pinaceae + + + + + + + + + unknown + Gymnoascales + NCBITaxon:33183 + Onygenales + + + + + + + + metazoans + multicellular animals + Animalia + animals + unknown + NCBITaxon:33208 + Metazoa + + + + + + + + + unknown + NCBITaxon:33213 + Bilateria + + + + + + + + + + unknown + NCBITaxon:33214 + Acoelomata + + + + + + + + unknown + NCBITaxon:33217 + Pseudocoelomata + + + + + + + + unknown + NCBITaxon:33256 + Ascaridoidea + + + + + + + + hookworms + unknown + NCBITaxon:33277 + Ancylostomatoidea + + + + + + + + unknown + NCBITaxon:33278 + Ancylostomatidae + + + + + + + + unknown + NCBITaxon:3328 + Picea + + + + + + + + Picea abies (L.) H.Karst. + Picea abies L., Karst + Picea excelsa + Norway spruce + unknown + NCBITaxon:3329 + Picea abies + + + + + unknown + NCBITaxon:33316 + Coelomata + + + + + + + + + unknown + NCBITaxon:33317 + Protostomia + + + + + + + + + + unknown + NCBITaxon:333284 + Hepatitis C virus (isolate Con1) + + + + + unknown + NCBITaxon:33340 + Neoptera + + + + + + + + + + unknown + NCBITaxon:33341 + Orthopteroidea + + + + + + + + + Hemipteroidea + hemipteroid assemblage + unknown + NCBITaxon:33342 + Paraneoptera + + + + + + + + bugs + unknown + Heteropterodea + NCBITaxon:33343 + Prosorrhyncha + + + + + + + + true bugs + unknown + NCBITaxon:33345 + Heteroptera + + + + + + + + unknown + NCBITaxon:33347 + Euheteroptera + + + + + + + + unknown + NCBITaxon:33349 + Neoheteroptera + + + + + + + + unknown + NCBITaxon:33351 + Panheteroptera + + + + + + + + unknown + NCBITaxon:33354 + Cimicomorpha + + + + + + + + + unknown + NCBITaxon:33355 + Cimicoidea + + + + + + + + unknown + NCBITaxon:33356 + Reduvioidea + + + + + + + + unknown + Cicadomorpha + NCBITaxon:33365 + Clypeorrhyncha + + + + + + + + unknown + NCBITaxon:33367 + Cicadoidea + + + + + + + + unknown + NCBITaxon:3337 + Pinus + + + + + + + + unknown + NCBITaxon:33373 + Sternorrhyncha + + + + + + + + unknown + NCBITaxon:333750 + Alphapapillomavirus + + + + + + + + + + unknown + NCBITaxon:333754 + Human papillomavirus - 6 + + + + + + + + Human papillomavirus 16 + human papillomavirus type 16 HPV 16 + human papillomavirus type 16 HPV16 + HPV16 + unknown + NCBITaxon:333760 + Human papillomavirus type 16 + + + + + unknown + NCBITaxon:333761 + Human papillomavirus type 18 + + + + + unknown + NCBITaxon:333774 + unclassified Papillomaviridae + + + + + + + + unknown + NCBITaxon:33380 + Aphidiformes + + + + + + + + unknown + NCBITaxon:33385 + Aphidoidea + + + + + + + + unknown + NCBITaxon:33386 + Macrosiphini + + + + + + + + unknown + Holometabola + NCBITaxon:33392 + Endopterygota + + + + + + + + + + + brush-footed butterflies + brushfoots + unknown + NCBITaxon:33415 + Nymphalidae + + + + + + + + + unknown + NCBITaxon:334202 + Mupapillomavirus + + + + + + + + unknown + NCBITaxon:334203 + Human papillomavirus - 1 + + + + + + + + unknown + NCBITaxon:33511 + Deuterostomia + + + + + + + + + loblolly pine + unknown + NCBITaxon:3352 + Pinus taeda + + + + + eastern black-and -white colobus + guereza + unknown + NCBITaxon:33548 + Colobus guereza + + + + + unknown + Hystricomorpha + NCBITaxon:33550 + Hystricognathi + + + + + + + + + unknown + NCBITaxon:33553 + Sciurognathi + + + + + + + + + carnivores + unknown + NCBITaxon:33554 + Carnivora + + + + + + + + + alveolates + unknown + NCBITaxon:33630 + Alveolata + + + + + + + + + heterokonts + unknown + Chromophyta + NCBITaxon:33634 + stramenopiles + + + + + + + + unknown + Euglenozoans + NCBITaxon:33682 + Euglenozoa + + + + + + + + + Burkholderia glumae (Kurita and Tabei 1967) Urakami et al. 1994 + Pseudomonas glumae + Pseudomonas glumae Kurita and Tabei 1967 (Approved Lists 1980) + unknown + NCBITaxon:337 + Burkholderia glumae + + + + + unknown + NCBITaxon:337041 + Human papillomavirus - 16 + + + + + + + + unknown + NCBITaxon:337042 + Human papillomavirus - 18 + + + + + + + + mouse herpesvirus strain 68 + murine herpesvirus type 68 + MuHV-4 + Murine herpesvirus 68 + unknown + NCBITaxon:33708 + Murid herpesvirus 4 + + + + + unknown + NCBITaxon:337664 + Spalacidae + + + + + + + + + unknown + NCBITaxon:337677 + Cricetidae + + + + + + + + + + + unknown + NCBITaxon:337687 + Muroidea + + + + + + + + + + unknown + NCBITaxon:337726 + Xerinae + + + + + + + + unknown + NCBITaxon:337730 + Marmotini + + + + + + + + + + unknown + NCBITaxon:337752 + Sciurini + + + + + + + + unknown + NCBITaxon:337963 + Neotominae + + + + + + + + unknown + NCBITaxon:338152 + Felinae + + + + + + + + Spirotricha + Spirotrichia + Spirotrichs + unknown + NCBITaxon:33829 + Spirotrichea + + + + + + + + unknown + NCBITaxon:33831 + Euplotida + + + + + + + + unknown + NCBITaxon:338817 + Trimorphodon + + + + + + + + unknown + NCBITaxon:338818 + Trimorphodon biscutatus + + + + + + + + unknown + NCBITaxon:339422 + Ixodes sinensis + + + + + unknown + Lactobacillaceae Winslow et al. 1917 + NCBITaxon:33958 + Lactobacillaceae + + + + + + + + unknown + NCBITaxon:339787 + Mactra chinensis + + + + + Angiospermae + flowering plants + angiosperms + unknown + NCBITaxon:3398 + Magnoliophyta + + + + + + + + + + unknown + Neorickettsia Philip et al. 1953 (Approved Lists 1980) emend. Dumler et al. 2001 + NCBITaxon:33993 + Neorickettsia + + + + + + + + unknown + Magnolianae + NCBITaxon:3400 + Magnoliales + + + + + + + + unknown + Leonia cymosa Mart. + NCBITaxon:341676 + Leonia cymosa + + + + + unknown + NCBITaxon:342590 + Odontobuthus doriae + + + + + unknown + NCBITaxon:34346 + Schizosaccharomycetales + + + + + + + + unknown + NCBITaxon:34353 + Dipodascaceae + + + + + + + + unknown + anamorphic Trichocomaceae + NCBITaxon:34380 + mitosporic Trichocomaceae + + + + + + + + + unknown + anamorphic Onygenales + NCBITaxon:34383 + mitosporic Onygenales + + + + + + + + unknown + NCBITaxon:34397 + Clavicipitaceae + + + + + + + + unknown + NCBITaxon:34413 + Humicola insolens + + + + + unknown + NCBITaxon:34489 + Mucoraceae + + + + + + + + unknown + NCBITaxon:34542 + Oegopsida + + + + + + + + unknown + NCBITaxon:34590 + Chaetopterus variopedatus + + + + + castor bean tick + unknown + NCBITaxon:34613 + Ixodes ricinus + + + + + unknown + Anocentor + NCBITaxon:34619 + Dermacentor + + + + + + + + unknown + NCBITaxon:34621 + Dermacentor variabilis + + + + + unknown + NCBITaxon:34630 + Rhipicephalus + + + + + + + + + Ixodes sanguineus + Rhiphicephalus sanguineus + Rhipicephalus saguineus + Rhipicephalus sanguineus (Latreille, 1806) + Rhipicephalus sanquineus + brown dog tick + unknown + NCBITaxon:34632 + Rhipicephalus sanguineus + + + + + unknown + NCBITaxon:34646 + Mesobuthus + + + + + + + + + Indian red scorpion + eastern Indian scorpion + Buthus tamalus + Buthus tamulus + Mesobuthus tamalus + Mesobuthus tamulus (Fabricius, 1798) + unknown + NCBITaxon:34647 + Mesobuthus tamulus + + + + + Chinese scorpion + Manchurian scorpion + Buthus martensi + Buthus martensi Karsch + Buthus martensii + Buthus martensii Karsch + Mesobuthus martensi + Mesobuthus martensii (Karsch, 1879) + Mesobuthus martensis + unknown + NCBITaxon:34649 + Mesobuthus martensii + + + + + unknown + NCBITaxon:34695 + Myrmicinae + + + + + + + + unknown + NCBITaxon:34708 + Myrmica ruginodis + + + + + unknown + NCBITaxon:34725 + Vespoidea + + + + + + + + + + + unknown + NCBITaxon:34730 + Polistes gallicus + + + + + unknown + bees + NCBITaxon:34735 + Apoidea + + + + + + + + unknown + NCBITaxon:34763 + Oikopleura + + + + + + + + unknown + Oikopleura dioika + NCBITaxon:34765 + Oikopleura dioica + + + + + longnose gar + unknown + Lepisosteous osseus + NCBITaxon:34771 + Lepisosteus osseus + + + + + unknown + Chiondraco + NCBITaxon:34788 + Chionodraco + + + + + + + + unknown + Roccus + NCBITaxon:34815 + Morone + + + + + + + + striped bass + striped sea-bass + unknown + NCBITaxon:34816 + Morone saxatilis + + + + + Chinchilla laniger + Chinchilla velligera + Chinchilla velligera Prell, 1934 + Chinchilla villidera + Mus laniger Molina, 1782. + unknown + NCBITaxon:34839 + Chinchilla lanigera + + + + + unknown + NCBITaxon:348604 + Enterobacteria phage T4 sensu lato + + + + + + + + mulberry family + unknown + Moraceae Link + NCBITaxon:3487 + Moraceae + + + + + + + + unknown + NCBITaxon:34877 + Muntiacinae + + + + + + + + unknown + NCBITaxon:34878 + Cervinae + + + + + + + + unknown + Artocarpus J.R.Forst. & G.Forst. + NCBITaxon:3488 + Artocarpus + + + + + + + + + campedak + chempedak + Artocarpus champeden + Artocarpus integer (Thunb.) Merr. + Artocarpus integer (Thunb.)rr. + Artocarpus integrifolius L.f. + non Artocarpus integer auct. + unknown + NCBITaxon:3490 + Artocarpus integer + + + + + unknown + NCBITaxon:34902 + Trachemys + + + + + + + + dime-store turtle + red-eared slider turtle + slider turtle + Pseudemys scripta + Pseudomys scripta + unknown + NCBITaxon:34903 + Trachemys scripta + + + + + unknown + NCBITaxon:34905 + Trionychoidea + + + + + + + + soft-shelled turtles + unknown + NCBITaxon:34907 + Trionychidae + + + + + + + + alligators + unknown + Alligatoridae + NCBITaxon:34915 + Alligatorinae + + + + + + + + unknown + Artocarpus tonkinensis A.Chev. ex Gagnep. + NCBITaxon:3492 + Artocarpus tonkinensis + + + + + unknown + NCBITaxon:34971 + Scleroglossa + + + + + + + + + + unknown + Xenophidia + NCBITaxon:34989 + Colubroidea + + + + + + + + + + unknown + NCBITaxon:3502 + Fagales + + + + + + + + beech family + unknown + NCBITaxon:3503 + Fagaceae + + + + + + + + scincomorph lizards + unknown + Lacertilia + NCBITaxon:35033 + Scincomorpha + + + + + + + + unknown + NCBITaxon:35036 + Teiioidea + + + + + + + + unknown + NCBITaxon:35076 + Patiria + + + + + + + + Cryptosporidae + Cryptosporiidae + unknown + NCBITaxon:35082 + Cryptosporidiidae + + + + + + + + Azotobacteraceae + Azotobacteraceae Pribram 1933 + unknown + NCBITaxon:351 + Azotobacter group + + + + + + + + unknown + NCBITaxon:35158 + Griffithsia + + + + + + + + unknown + NCBITaxon:351660 + Conus monile + + + + + Azotobacter Beijerinck 1901 + Azotomonas + Parachromatium + unknown + NCBITaxon:352 + Azotobacter + + + + + + + + unknown + NCBITaxon:35218 + Amoebidae + + + + + + + + unknown + NCBITaxon:35237 + dsDNA viruses, no RNA stage + + + + + + + + + + + + + + unknown + Centrospermae + NCBITaxon:3524 + Caryophyllales + + + + + + + + + + + + pokeweed family + unknown + NCBITaxon:3525 + Phytolaccaceae + + + + + + + + unknown + NCBITaxon:3526 + Phytolacca + + + + + + + + unknown + Retroid viruses + NCBITaxon:35268 + Retro-transcribing viruses + + + + + + + + + American pokeweed + Virginia poke + common pokeberry + common pokeweed + red stem pokeweed + unknown + Phytolacca americana L. + NCBITaxon:3527 + Phytolacca americana + + + + + unknown + NCBITaxon:35278 + ssRNA positive-strand viruses, no DNA stage + + + + + + + + + + + unknown + NCBITaxon:35301 + ssRNA negative-strand viruses + + + + + + + + unknown + NCBITaxon:353210 + Replication competent viruses + + + + + + + + unknown + NCBITaxon:353212 + Mammalian virus group + + + + + + + + unknown + dsRNA nonenveloped viruses + NCBITaxon:35325 + dsRNA viruses + + + + + + + + unknown + NCBITaxon:353825 + unclassified Alpharetrovirus + + + + + + + + Azotobacter miscellum + Azotobacter vinelandii Lipman 1903 + unknown + NCBITaxon:354 + Azotobacter vinelandii + + + + + unknown + NCBITaxon:35460 + Chlorellales + + + + + + + + unknown + NCBITaxon:35461 + Chlorellaceae + + + + + + + + unknown + Streptophyta Bremer 1985 + NCBITaxon:35493 + Streptophyta + + + + + + + + Artiodactyla + Suiformes + unknown + NCBITaxon:35497 + Suina + + + + + + + + unknown + NCBITaxon:35500 + Pecora + + + + + + + + + unknown + NCBITaxon:35508 + Equus subg. Asinus + + + + + + + + unknown + NCBITaxon:35510 + Equus subg. Equus + + + + + + + + southwestern Asian house mouse + unknown + Mus bactrianus + NCBITaxon:35531 + Mus musculus bactrianus + + + + + unknown + Beta L. 1753 + NCBITaxon:3554 + Beta + + + + + + + + unknown + Geobacter sulfurreducens Caccavo et al. 1995 + NCBITaxon:35554 + Geobacter sulfurreducens + + + + + + + + unknown + NCBITaxon:35567 + Euhemiptera + + + + + + + + + unknown + NCBITaxon:35568 + Neohemiptera + + + + + + + + unknown + NCBITaxon:35569 + Stomoxys + + + + + + + + biting house fly + stable fly + unknown + Stomoxis calcitrans + NCBITaxon:35570 + Stomoxys calcitrans + + + + + 'Rhizobiales' + Rhizobiaceae group + alpha-2 proteobacteria + rhizobacteria + unknown + NCBITaxon:356 + Rhizobiales + + + + + + + + unknown + Spinacea + NCBITaxon:3561 + Spinacia + + + + + + + + Spinacea oleracea + Spinacia oleracea L + Spinacia oleracea L. + Spinacia oleracea0 + spinach oleracea + spinach + unknown + NCBITaxon:3562 + Spinacia oleracea + + + + + Datura alba + Datura alba Nees + Datura fastuosa + Datura fastuosa L. + Datura metel 'Alba' + Datura metel L. + Hindu datura + unknown + NCBITaxon:35625 + Datura metel + + + + + amaranth family + goosefoot family + unknown + NCBITaxon:3563 + Amaranthaceae + + + + + + + + + + unknown + NCBITaxon:356303 + Hypsiboas + + + + + + + + humus earthworm + unknown + NCBITaxon:35632 + Lumbricus rubellus + + + + + unknown + NCBITaxon:356346 + Trimorphodon biscutatus lambda + + + + + unknown + Amaranthus L. + NCBITaxon:3564 + Amaranthus + + + + + + + + pink family + unknown + NCBITaxon:3568 + Caryophyllaceae + + + + + + + + Agrobacterium Conn 1942 (Approved Lists 1980) + Agrobacterium Conn 1942 (Approved Lists 1980) emend. Sawada et al. 1993 + Polymonas + unknown + NCBITaxon:357 + Agrobacterium + + + + + + + + unknown + NCBITaxon:35718 + Chaetomiaceae + + + + + + + + Achromobacter radiobacter + Agrobacterium radiobacter + Agrobacterium tumefacien + Agrobacterium tumefaciens (Smith and Townsend 1907) Conn 1942 (Approved Lists 1980) + Alcaligenes radiobacter + Bacillus radiobacter + Bacterium radiobacter + Bacterium tumefaciens + Phytomonas tumefaciens + Polymonas tumefaciens + Pseudomonas radiobacter + Pseudomonas tumefaciens + Rhizobium radiobacter + Rhizobium radiobacter (Beijerinck and van Delden 1902) Young et al. 2001 + unknown + NCBITaxon:358 + Agrobacterium tumefaciens + + + + + + + + + unknown + NCBITaxon:3587 + Basellaceae + + + + + + + + unknown + NCBITaxon:3588 + Basella + + + + + + + + Japanese morning glory + qian niu + Ipomoea nil (L.) Roth + Pharbitis nil + unknown + NCBITaxon:35883 + Ipomoea nil + + + + + Ceylon-spinach + unknown + Basella rubra + NCBITaxon:3589 + Basella alba + + + + + unknown + NCBITaxon:359160 + BEP clade + + + + + + + + + grape family + unknown + Vitidaceae + NCBITaxon:3602 + Vitaceae + + + + + + + + unknown + Vitis L. + NCBITaxon:3603 + Vitis + + + + + + + + buckwheat family + unknown + NCBITaxon:3615 + Polygonaceae + + + + + + + + + unknown + NCBITaxon:3618 + Rumex + + + + + + + + unknown + NCBITaxon:36188 + Chionodraco hamatus + + + + + bitter dock + unknown + NCBITaxon:3619 + Rumex obtusifolius + + + + + unknown + NCBITaxon:36201 + Gobionotothen + + + + + + + + unknown + NCBITaxon:36202 + Gobionotothen gibberifrons + + + + + unknown + Bovichtidae + NCBITaxon:36203 + Bovichthyidae + + + + + + + + unknown + NCBITaxon:36230 + Miopithecus + + + + + + + + talapoin + unknown + Cercopithecus talapoin + NCBITaxon:36231 + Miopithecus talapoin + + + + + mallow family + unknown + NCBITaxon:3629 + Malvaceae + + + + + + + + unknown + Agkistrodon acutus + NCBITaxon:36307 + Deinagkistrodon acutus + + + + + PLASMODIUM FALCIPARUM (ISOLATE 3D7). + Plasmodium falciparum (isolate 3D7) + unknown + NCBITaxon:36329 + Plasmodium falciparum 3D7 + + + + + Oryza sativa f. spontanea IRRI 81916 + unknown + NCBITaxon:364099 + Oryza sp. IRGC 81916 + + + + + Oryza sativa f. spontanea IRRI 105360 + unknown + NCBITaxon:364100 + Oryza sp. IRGC 105360 + + + + + unknown + Apiineae Plunkett & Lowry, 2004 + NCBITaxon:364270 + Apiineae + + + + + + + + + Violales + Violanae + unknown + NCBITaxon:3646 + Malpighiales + + + + + + + + + + + cucumber family + unknown + NCBITaxon:3650 + Cucurbitaceae + + + + + + + + + + + + unknown + Cucumis L. + NCBITaxon:3655 + Cucumis + + + + + + + + + Oriental melon + muskmelon + Cucumis melo L. + Cucumis melo var. markuwa Markino + unknown + NCBITaxon:3656 + Cucumis melo + + + + + cucumber + cucumbers + Cucumis sativu + Cucumis sativus L. + unknown + NCBITaxon:3659 + Cucumis sativus + + + + + marrows + pumpkins + squashes + unknown + Cucurbita L. + NCBITaxon:3660 + Cucurbita + + + + + + + + + Boston marrow + great pumpkin + winter squash + unknown + Cucurbita maxima Duchesne + NCBITaxon:3661 + Cucurbita maxima + + + + + unknown + Cucurbita sp. cv. Kurokawa Amakuri + NCBITaxon:3666 + Cucurbita cv. Kurokawa Amakuri + + + + + ants + unknown + Formicoidea + NCBITaxon:36668 + Formicidae + + + + + + + + unknown + NCBITaxon:36672 + Apteronotus + + + + + + + + unknown + NCBITaxon:36674 + Apteronotus leptorhynchus + + + + + unknown + Luffa Mill. + NCBITaxon:3669 + Luffa + + + + + + + + dishcloth gourd + loofa + smooth loofah + sponge gourd + vegetable sponge + Luffa aegyptiaca Mill. + Luffa cylindrica + Luffa cylindrica M.Roem. + unknown + NCBITaxon:3670 + Luffa aegyptiaca + + + + + passionflower famly + unknown + NCBITaxon:3683 + Passifloraceae + + + + + + + + passionflowers + unknown + NCBITaxon:3684 + Passiflora + + + + + + + + unknown + Desulfitobacterium Utkin et al. 1994 + NCBITaxon:36853 + Desulfitobacterium + + + + + + + + unknown + Capparales + NCBITaxon:3699 + Brassicales + + + + + + + + mustard family + unknown + Cruciferae + NCBITaxon:3700 + Brassicaceae + + + + + + + + + unknown + NCBITaxon:37006 + Mullus + + + + + + + + Arabidopsis Heynh. + Cardaminopsis + Cardaminopsis Hayek + unknown + NCBITaxon:3701 + Arabidopsis + + + + + + + + mouse-ear cress + thale cress + thale-cress + Arabidopsis thaliana (L.) Heynh. + Arbisopsis thaliana + unknown + NCBITaxon:3702 + Arabidopsis thaliana + + + + + unknown + NCBITaxon:370292 + Thelephora ganbajun + + + + + unknown + Brassica L. + NCBITaxon:3705 + Brassica + + + + + + + + + oilseed rape + rape + rapeseeds + unknown + Brassica napus L. + NCBITaxon:3708 + Brassica napus + + + + + unknown + NCBITaxon:37114 + Human papillomavirus type 55 + + + + + unknown + Brassica oleracea L. + NCBITaxon:3712 + Brassica oleracea + + + + + + + + unknown + Simian 11 rotavirus (strain SA11-both) + NCBITaxon:37137 + Simian rotavirus A/SA11-both + + + + + Brassica alboglabra + Brassica alboglabra L.H.Bailey + Brassica oleracea var. alboglabra (L.H.Bailey) Musil + Chinese kale + unknown + NCBITaxon:3714 + Brassica oleracea var. alboglabra + + + + + unknown + NCBITaxon:37170 + Alcelaphinae + + + + + + + + blesbok + unknown + Damaliscus dorcas phillipsi + NCBITaxon:37172 + Damaliscus pygargus phillipsi + + + + + unknown + Cnemidophorus uniparens + NCBITaxon:37197 + Aspidoscelis uniparens + + + + + Pernambuco wood + brazilwood + pau-Brasil + unknown + Caesalpinia echinata Lam. + NCBITaxon:372551 + Caesalpinia echinata + + + + + Ma's night monkey + unknown + Aotus nancymai + NCBITaxon:37293 + Aotus nancymaae + + + + + HHV8 + KSHV + Kaposi's sarcoma-associated herpes-like virus + Kaposi's sarcoma-associated herpesvirus - Human herpesvirus 8 + Kaposi's sarcoma-associated herpesvirus KSHV + Kaposi's sarcoma-associated human herpes virus + Karposi's sarcoma-associated herpes-like virus + Kaposi's sarcoma-associated herpesvirus + unknown + NCBITaxon:37296 + Human herpesvirus 8 + + + + + unknown + NCBITaxon:373036 + Griffithsia sp. Q66D336 + + + + + common tree shrew + northern tree shrew + unknown + Tupaia glis belangeri + NCBITaxon:37347 + Tupaia belangeri + + + + + unknown + Cophomantini Hoffmann, 1878 + NCBITaxon:374050 + Cophomantini + + + + + + + + unknown + Dendropsophini Fitzinger, 1843 + NCBITaxon:374051 + Dendropsophini + + + + + + + + unknown + NCBITaxon:3744 + Rosales + + + + + + + + + rose family + unknown + NCBITaxon:3745 + Rosaceae + + + + + + + + + unknown + NCBITaxon:3749 + Malus + + + + + + + + apple + apple tree + cultivated apple + Malus domestica + Malus domestica Borkh. + Malus pumila auct. + Malus pumila var. domestica + Malus pumila var. domestica (Borkh.) C. K.Schneid. + Malus sylvestris var. domestica + Malus sylvestris var. domestica (Borkh.) Mansf. + unknown + NCBITaxon:3750 + Malus x domestica + + + + + unknown + NCBITaxon:375013 + Aedes/Ochlerotatus group + + + + + + + + unknown + NCBITaxon:37516 + Hydroida + + + + + + + + + unknown + Ulmariidae + NCBITaxon:37526 + Ulmaridae + + + + + + + + Amygdalus + Prunus L. + unknown + NCBITaxon:3754 + Prunus + + + + + + + + Bominican white-lipped frog + mountain chicken + mountain chicken frog + Leptodactylus dominicensis + Leptodactylus dominicensis Muller, 1923 + Leptodactylus fallax Muller, 1926 + unknown + NCBITaxon:375434 + Leptodactylus fallax + + + + + southern armyworm + unknown + NCBITaxon:37547 + Spodoptera eridania + + + + + unknown + NCBITaxon:375577 + Amblyomma testindinarium + + + + + unknown + NCBITaxon:37567 + Ditrysia + + + + + + + + + + unknown + NCBITaxon:37568 + Tortricoidea + + + + + + + + unknown + NCBITaxon:37569 + Bombycoidea + + + + + + + + unknown + NCBITaxon:37570 + Noctuoidea + + + + + + + + + unknown + butterflies + NCBITaxon:37572 + Papilionoidea + + + + + + + + + + unknown + NCBITaxon:37573 + Pyraloidea + + + + + + + + hawk-moths + unknown + NCBITaxon:37574 + Sphingoidea + + + + + + + + unknown + Hyponomeutoidea + NCBITaxon:37582 + Yponomeutoidea + + + + + + + + Amygdalus persica + Prunus persica (L.) Batsch + peach + unknown + NCBITaxon:3760 + Prunus persica + + + + + unknown + NCBITaxon:37611 + Estrildidae + + + + + + + + pears + unknown + Pyrus L. + NCBITaxon:3766 + Pyrus + + + + + + + + Pyrus pyrifolia (Burm.f.) Nakai + Pyrus serotina + Pyrus serotina Rehder + sha li + unknown + NCBITaxon:3767 + Pyrus pyrifolia + + + + + Aegilops squarrosa + Aegilops squarrosa auct. + Aegilops squarrosa subsp. squarrosa + Aegilops tauschii Coss. + Aegilops tauschii Cosson + Patropyrum tauschii + Patropyrum tauschii subsp. tauschii + Triticum tauschii + unknown + NCBITaxon:37682 + Aegilops tauschii + + + + + + + + prosimians + unknown + Strepsirhini + NCBITaxon:376911 + Strepsirrhini + + + + + + + + unknown + NCBITaxon:376912 + Tarsiiformes + + + + + + + + unknown + NCBITaxon:376913 + Haplorrhini + + + + + + + + + unknown + NCBITaxon:376915 + Lemuriformes + + + + + + + + unknown + NCBITaxon:376918 + Aotidae + + + + + + + + unknown + NCBITaxon:37727 + Penicillium marneffei + + + + + unknown + NCBITaxon:37738 + Phlebotomus duboscqi + + + + + unknown + NCBITaxon:37797 + Conoidea + + + + + + + + unknown + NCBITaxon:37810 + Armadillidiidae + + + + + + + + unknown + NCBITaxon:37811 + Blattellinae + + + + + + + + unknown + NCBITaxon:37849 + Nephropoidea + + + + + + + + unknown + NCBITaxon:37850 + Parastacidae + + + + + + + + unknown + NCBITaxon:378850 + Saimiriinae + + + + + + + + unknown + NCBITaxon:378855 + Atelidae + + + + + + + + unknown + NCBITaxon:379583 + Feliformia + + + + + + + + unknown + NCBITaxon:379584 + Caniformia + + + + + + + + + + + unknown + NCBITaxon:37987 + Pneumocystidales + + + + + + + + pea family + unknown + Leguminosae + NCBITaxon:3803 + Fabaceae + + + + + + + + + + unknown + NCBITaxon:3804 + Caesalpinioideae + + + + + + + + + unknown + Bauhinia L. + NCBITaxon:3805 + Bauhinia + + + + + + + + unknown + NCBITaxon:38068 + Atelinae + + + + + + + + unknown + NCBITaxon:3807 + Mimosoideae + + + + + + + + unknown + NCBITaxon:38070 + Cebinae + + + + + + + + unknown + Faboideae + NCBITaxon:3814 + Papilionoideae + + + + + + + + + + + + + unknown + NCBITaxon:3815 + Abrus + + + + + + + + Indian licorice + crab's eye + crab's-eye + rosary pea + unknown + Abrus cyaneus + NCBITaxon:3816 + Abrus precatorius + + + + + unknown + NCBITaxon:3822 + Canavalia + + + + + + + + + + + + horse bean + jack bean + unknown + NCBITaxon:3823 + Canavalia ensiformis + + + + + Japanese jack bean + sword bean + unknown + NCBITaxon:3824 + Canavalia gladiata + + + + + jdeegan + 2008-07-21T01:31:24Z + unknown + NCBITaxon:38254 + Glaucocystophyceae + + + + + unknown + NCBITaxon:38280 + Heteractis + + + + + + + + unknown + NCBITaxon:3836 + Dioclea + + + + + + + + + + + + mucana + unknown + NCBITaxon:3837 + Dioclea grandiflora + + + + + unknown + NCBITaxon:3846 + Glycine + + + + + + + + soybean + soybeans + unknown + NCBITaxon:3847 + Glycine max + + + + + unknown + NCBITaxon:385256 + Gekkoninae + + + + + + + + unknown + NCBITaxon:38568 + Leishmania [NCBITaxon:38568] + + + + + + + + + + + + unknown + NCBITaxon:38573 + Leishmania infantum species complex + + + + + + + + unknown + NCBITaxon:38574 + Leishmania donovani species complex + + + + + + + + unknown + NCBITaxon:38581 + Leishmania major species complex + + + + + + + + unknown + NCBITaxon:38582 + Leishmania mexicana species complex + + + + + + + + unknown + NCBITaxon:38584 + Leishmania tropica species complex + + + + + + + + unknown + NCBITaxon:38605 + Didelphimorphia + + + + + + + + unknown + NCBITaxon:38609 + Diprotodontia + + + + + + + + + unknown + Lens Mill. + NCBITaxon:3863 + Lens + + + + + + + + Lens culinaris Medik. + Lens esculenta + Lens esculenta Moench + lentil + unknown + NCBITaxon:3864 + Lens culinaris + + + + + unknown + NCBITaxon:387623 + Hypnea cervicornis + + + + + unknown + NCBITaxon:38805 + Pleurotus tuberregium + + + + + unknown + NCBITaxon:38820 + Poales + + + + + + + + + unknown + NCBITaxon:3883 + Phaseolus + + + + + + + + + French bean + kidney bean + unknown + Phaseolus vulgaris L. + NCBITaxon:3885 + Phaseolus vulgaris + + + + + scarlet runner bean + unknown + Phaseolus coccineus L. + NCBITaxon:3886 + Phaseolus coccineus + + + + + unknown + NCBITaxon:3887 + Pisum + + + + + + + + garden pea + pea + peas + unknown + Pisum sativum L. + NCBITaxon:3888 + Pisum sativum + + + + + unknown + HIV-2 clade A + NCBITaxon:388908 + HIV-2 subtype A + + + + + + + + unknown + NCBITaxon:38944 + Flammulina + + + + + + + + unknown + Collybia velutipes + NCBITaxon:38945 + Flammulina velutipes + + + + + unknown + NCBITaxon:3904 + Vicia + + + + + + + + broad bean + faba bean + fava bean + unknown + Vicia faba L. + NCBITaxon:3906 + Vicia faba + + + + + unknown + Bauhinia rufa (Bong.) Steud. + NCBITaxon:390785 + Bauhinia rufa + + + + + mole voles + unknown + NCBITaxon:39083 + Ellobius + + + + + + + + Transcaucasian mole vole + unknown + NCBITaxon:39086 + Ellobius lutescens + + + + + unknown + Microtinae + NCBITaxon:39087 + Arvicolinae + + + + + + + + + unknown + NCBITaxon:39107 + Murinae + + + + + + + + + + unknown + Vigna Savi + NCBITaxon:3913 + Vigna + + + + + + + + + golden gram + green gram + mung bean + Phaseolus aureus + Phaseolus radiatus + Phaseolus trilobatus + Phaseolus trinervatus + unknown + NCBITaxon:3916 + Vigna radiata var. radiata + + + + + cowpea + unknown + Vigna unguiculata (L.) Walp. + NCBITaxon:3917 + Vigna unguiculata + + + + + + + + unknown + NCBITaxon:392815 + Chlorocebus + + + + + + + + eastern European house mouse + unknown + Mus musculus hortulanus + NCBITaxon:39442 + Mus musculus musculus + + + + + unknown + NCBITaxon:39465 + Hyphantria + + + + + + + + fall webworm moth + unknown + NCBITaxon:39466 + Hyphantria cunea + + + + + unknown + NCBITaxon:39560 + Cyprininae + + + + + + + + + + unknown + Danioninae + NCBITaxon:39562 + Rasborinae + + + + + + + + unknown + NCBITaxon:39700 + Trypanozoon + + + + + + + + buckeyes + commodores + pansies + unknown + NCBITaxon:39707 + Junonia + + + + + + + + buckeye + peacock butterfly + unknown + Precis coenia + NCBITaxon:39708 + Junonia coenia + + + + + spurge family + unknown + NCBITaxon:3977 + Euphorbiaceae + + + + + + + + + unknown + NCBITaxon:3980 + Hevea + + + + + + + + Para rubber tree + jebe + rubbertree + siringa + unknown + Hevea brasiliensis (Willd. ex A.Juss.) Muell. Arg. + NCBITaxon:3981 + Hevea brasiliensis + + + + + sandworms + unknown + Nereidae + NCBITaxon:39820 + Nereididae + + + + + + + + Jerusalem campion + Maltese cross + scarlet lychnis + Lychnis chalcedonica L. + Silene chalcedonica + Silene chalcedonica (L.) E.H.L.Krause + unknown + NCBITaxon:39855 + Lychnis chalcedonica + + + + + unknown + NCBITaxon:3987 + Ricinus + + + + + + + + Ricimus communis + Ricinis communis + Ricinus communis L. + Ricinus sanguineus + Ricinus sanguineus hort. ex Groenl. + castor bean + unknown + NCBITaxon:3988 + Ricinus communis + + + + + Oryza sativa (indica group) + Oryza sativa indica + Oryza sativa subsp. indica + Oryza sativa subsp. indica Kato + Indian rice + unknown + NCBITaxon:39946 + Oryza sativa (indica cultivar-group) + + + + + Oryza sativa (japonica culticar-group) + Oryza sativa (javanica cultivar-group) + Oryza sativa japonica + Oryza sativa subsp. japonica + Japanese rice + unknown + NCBITaxon:39947 + Oryza sativa (japonica cultivar-group) + + + + + tortoiseshells, admirals &c. + unknown + NCBITaxon:40040 + Nymphalinae + + + + + + + + unknown + Lysinibacillus Ahmed et al. 2007 + NCBITaxon:400634 + Lysinibacillus + + + + + + + + unknown + NCBITaxon:40082 + Galleriinae + + + + + + + + unknown + NCBITaxon:40083 + Phycitinae + + + + + + + + unknown + NCBITaxon:40103 + Agrius + + + + + + + + unknown + NCBITaxon:40141 + Sigmodontinae + + + + + + + + unknown + NCBITaxon:40144 + Tricholoma + + + + + + + + Oryza glumaepatula + Oryza glumipatula Steud. + unknown + NCBITaxon:40148 + Oryza glumipatula + + + + + unknown + Oryza meridionalis N.Q.Ng + NCBITaxon:40149 + Oryza meridionalis + + + + + unknown + NCBITaxon:40155 + Estrildinae + + + + + + + + Hepatitis C virus II + Hepatitis C virus type 2 + human hepatitis C virus II HCV-II + unknown + NCBITaxon:40271 + Hepatitis C virus genotype 2 + + + + + + + + unknown + NCBITaxon:40272 + Roseolovirus + + + + + + + + Methylococcaceae Whittenbury and Krieg 1984 emend. Bowman et al. 1993 + type I methanotrophs + unknown + NCBITaxon:403 + Methylococcaceae + + + + + + + + chilli pepper + pimento + red pepper + sweet pepper + Capsicum frutescens var. grossum + Capsicum frutescens var. grossum (L.) L.H.Bailey + unknown + NCBITaxon:40321 + Capsicum annuum var. annuum + + + + + unknown + Araliales + NCBITaxon:4036 + Apiales + + + + + + + + unknown + NCBITaxon:40364 + hydei subgroup + + + + + + + + unknown + NCBITaxon:403667 + Vitales + + + + + + + + carrot family + unknown + Umbelliferae + NCBITaxon:4037 + Apiaceae + + + + + + + + unknown + NCBITaxon:403778 + Anaplasma marginale str. Illinois + + + + + unknown + NCBITaxon:403779 + Anaplasma marginale str. Virginia + + + + + unknown + NCBITaxon:4038 + Daucus + + + + + + + + Aspergillus awamori (var. kawachi) + Aspergillus awamori var. kawachi + unknown + NCBITaxon:40384 + Aspergillus kawachii + + + + + Queen Anne's lace + carrot + carrots + unknown + NCBITaxon:4039 + Daucus carota + + + + + unknown + NCBITaxon:404260 + Moss Superclass V + + + + + + + + unknown + Apium L. + NCBITaxon:4044 + Apium + + + + + + + + unknown + Fascioloidea + NCBITaxon:404429 + Echinostomatoidea + + + + + + + + unknown + NCBITaxon:40443 + Gloeophyllum + + + + + + + + unknown + Apium graveolens L. + NCBITaxon:4045 + Apium graveolens + + + + + ginseng family + unknown + NCBITaxon:4050 + Araliaceae + + + + + + + + + unknown + NCBITaxon:4053 + Panax + + + + + + + + Chinese ginseng + Korean ginseng + ginseng + hong shen + insam + ninjin + ren seng + unknown + NCBITaxon:4054 + Panax ginseng + + + + + unknown + NCBITaxon:4055 + Gentianales + + + + + + + + + unknown + onion famly + NCBITaxon:40553 + Alliaceae + + + + + + + + dogbane family + unknown + NCBITaxon:4056 + Apocynaceae + + + + + + + + + unknown + NCBITaxon:40602 + Claviceps fusiformis + + + + + unknown + NCBITaxon:40659 + Torpedinoidei + + + + + + + + unknown + mammals + NCBITaxon:40674 + Mammalia + + + + + + + + + soft corals + unknown + NCBITaxon:40677 + Alcyonacea + + + + + + + + unknown + Solananae + NCBITaxon:4069 + Solanales + + + + + + + + + nightshade family + unknown + NCBITaxon:4070 + Solanaceae + + + + + + + + + + peppers + unknown + Capsicum L. + NCBITaxon:4071 + Capsicum + + + + + + + + unknown + Capsicum annuum L. + NCBITaxon:4072 + Capsicum annuum + + + + + + + + unknown + Datura L. + NCBITaxon:4074 + Datura + + + + + + + + + downy thornapple + sacred datura + Datura innoxia + Datura inoxia Mill. + unknown + NCBITaxon:4075 + Datura inoxia + + + + + Lycopersicon esculentum + Lycopersicon esculentum Mill. + Lycopersicon esculentum var. esculentum + Lycopersicon lycopersicum + Lycopersicum esculentum + Solanum esculentum + Solanum esculentum Dunal + Solanum lycopersicon + Solanum lycopersicum L. + tomato + unknown + NCBITaxon:4081 + Solanum lycopersicum + + + + + unknown + NCBITaxon:4085 + Nicotiana + + + + + + + + + + + curled-leaved tobacco + leadwort-leaved tobacco + unknown + NCBITaxon:4092 + Nicotiana plumbaginifolia + + + + + wood tobacco + unknown + NCBITaxon:4096 + Nicotiana sylvestris + + + + + American tobacco + common tobacco + tobacco + unknown + Nicotania tabacum + NCBITaxon:4097 + Nicotiana tabacum + + + + + petunia + unknown + Petunia Juss. + NCBITaxon:4101 + Petunia + + + + + + + + Petunia axillaris X Petunia integrifolia + Petunia hybrida + garden petunia + unknown + NCBITaxon:4102 + Petunia x hybrida + + + + + Cyphomandra Mart. ex Sendtn. + Solanum L. + unknown + NCBITaxon:4107 + Solanum + + + + + + + + + + + + + + unknown + NCBITaxon:41084 + Polyphaga [NCBITaxon:41084] + + + + + + + + + + unknown + NCBITaxon:41086 + Scarabaeiformia + + + + + + + + unknown + NCBITaxon:41087 + Elateriformia + + + + + + + + unknown + NCBITaxon:41088 + Cucujiformia + + + + + + + + + pillbugs + sowbugs + woodlice + unknown + NCBITaxon:41116 + Oniscidea + + + + + + + + Solanum niger + Solanum nigrum L. + black nightshade + unknown + NCBITaxon:4112 + Solanum nigrum + + + + + unknown + NCBITaxon:41127 + Chrysomela + + + + + + + + potato + potatoes + Solanum tuberosum L. + Solanum tuberosum subsp. tuberosum + unknown + NCBITaxon:4113 + Solanum tuberosum + + + + + unknown + NCBITaxon:41166 + Valvatida + + + + + + + + morning-glory family + unknown + NCBITaxon:4118 + Convolvulaceae + + + + + + + + Ipomoea L. + Pharbitis + unknown + NCBITaxon:4119 + Ipomoea + + + + + + + + unknown + NCBITaxon:41191 + Glossata + + + + + + + + unknown + NCBITaxon:41196 + Neolepidoptera + + + + + + + + unknown + NCBITaxon:41197 + Heteroneura + + + + + + + + unknown + NCBITaxon:412080 + Acanthophis sp. Seram + + + + + unknown + NCBITaxon:41212 + Harpacticoida + + + + + + + + unknown + NCBITaxon:41214 + Harpactidae + + + + + + + + unknown + NCBITaxon:41243 + Valvatacea + + + + + + + + Rhodospirillaceae Pfennig and Truper 1971 + alpha-1 proteobacteria + purple nonsulfur bacteria + unknown + NCBITaxon:41295 + Rhodospirillaceae + + + + + + + + unknown + Methylococcus Foster and Davis 1966 emend. Bowman et al. 1993 + NCBITaxon:413 + Methylococcus + + + + + + + + unknown + NCBITaxon:41302 + Oikopleuridae + + + + + + + + unknown + NCBITaxon:41325 + Axonobranchia + + + + + + + + mint family + unknown + Labiatae + NCBITaxon:4136 + Lamiaceae + + + + + + + + unknown + Scutigerida + NCBITaxon:41360 + Scutigeromorpha + + + + + + + + unknown + Methylococcus capsulatus Foster and Davis 1966 + NCBITaxon:414 + Methylococcus capsulatus + + + + + + + + unknown + NCBITaxon:4143 + Lamiales + + + + + + + + + + Antirrhinum L. + Sairocarpus + snapdragons + unknown + NCBITaxon:4150 + Antirrhinum + + + + + + + + garden snapdragon + snapdragon + Antirrhinum majus L. + Antirrhinum sp. 'Floral Carpet Mix' + unknown + NCBITaxon:4151 + Antirrhinum majus + + + + + Salmonella enterica serovar Typhisuis + Salmonella typhisuis + unknown + NCBITaxon:41529 + Salmonella enterica subsp. enterica serovar Typhisuis + + + + + unknown + NCBITaxon:41665 + Neopterygii + + + + + + + + + + unknown + NCBITaxon:41666 + Batrachia + + + + + + + + + Lactococcus lactis subsp. cremoris str. MG1363 + Lactococcus lactis subsp. cremoris strain MG1363 + unknown + NCBITaxon:416870 + Lactococcus lactis subsp. cremoris MG1363 + + + + + Brugmansia arborea (L.) Lagerh. + Datura arborea + Datura arborea L. + maikoa + unknown + NCBITaxon:41689 + Brugmansia arborea + + + + + unknown + NCBITaxon:41705 + Protacanthopterygii + + + + + + + + unknown + NCBITaxon:41765 + Opisthorchis sinensis + + + + + sesame family + unknown + NCBITaxon:4180 + Pedaliaceae + + + + + + + + unknown + NCBITaxon:41809 + Camptochironomus + + + + + + + + unknown + Sesamum L. + NCBITaxon:4181 + Sesamum + + + + + + + + unknown + NCBITaxon:418101 + Plasmodium (Vinckeia) + + + + + + + + unknown + NCBITaxon:418107 + Plasmodium (Laverania) + + + + + + + + beniseed + gingelly + hu ma + koba + sesame + Sesamum indicum L. + Sesamum orientale + Sesamum orientale L. + unknown + NCBITaxon:4182 + Sesamum indicum + + + + + unknown + NCBITaxon:41827 + Culicoidea + + + + + + + + unknown + NCBITaxon:41828 + Chironomoidea + + + + + + + + unknown + NCBITaxon:41830 + Sciaroidea + + + + + + + + unknown + NCBITaxon:41831 + Psychodoidea + + + + + + + + Hepatitis C virus 1 + Hepatitis C virus type 1 + hepatitis C virus 1 HCV 1 + unknown + NCBITaxon:41856 + Hepatitis C virus genotype 1 + + + + + + + + + unknown + NCBITaxon:418966 + Noelaerhabdaceae + + + + + + + + unknown + NCBITaxon:41934 + Cornales + + + + + + + + unknown + Malvanae + NCBITaxon:41938 + Malvales + + + + + + + + unknown + NCBITaxon:4209 + Asterales + + + + + + + + daisy family + unknown + Compositae + NCBITaxon:4210 + Asteraceae + + + + + + + + unknown + NCBITaxon:42113 + Clitellata + + + + + + + + unknown + NCBITaxon:42115 + Arenicolidae + + + + + + + + temperate basses + unknown + NCBITaxon:42148 + Moronidae + + + + + + + + unknown + NCBITaxon:42156 + Litomosoides sigmodontis + + + + + unknown + NCBITaxon:42157 + Onchocerca ochengi + + + + + unknown + NCBITaxon:42167 + Acanthophiinae + + + + + + + + + unknown + NCBITaxon:42168 + Elapinae + + + + + + + + + + unknown + NCBITaxon:42170 + Deinagkistrodon + + + + + + + + unknown + NCBITaxon:42187 + Macrovipera + + + + + + + + unknown + NCBITaxon:42261 + Charaxinae + + + + + + + + unknown + NCBITaxon:422676 + Aconoidasida + + + + + + + + swallowtails + unknown + NCBITaxon:42289 + Papilioninae + + + + + + + + unknown + NCBITaxon:42302 + Lasiosphaeriaceae + + + + + + + + unknown + NCBITaxon:423054 + Eimeriorina + + + + + + + + + sunflowers + unknown + Helianthus L. + NCBITaxon:4231 + Helianthus + + + + + + + + Helianthus annus + Helianthus annuus L. + Helianthus annuus8 + common sunflower + unknown + NCBITaxon:4232 + Helianthus annuus + + + + + whites + unknown + NCBITaxon:42449 + Pierinae + + + + + + + + unknown + NCBITaxon:424551 + Solanoideae + + + + + + + + + + + + + unknown + NCBITaxon:424554 + Nicotianoideae + + + + + + + + unknown + NCBITaxon:424555 + Petunioideae + + + + + + + + unknown + NCBITaxon:424562 + Nicotianeae + + + + + + + + unknown + NCBITaxon:424564 + Capsiceae + + + + + + + + unknown + NCBITaxon:424565 + Datureae + + + + + + + + + unknown + NCBITaxon:424566 + Hyoscyameae + + + + + + + + unknown + NCBITaxon:424569 + Lycieae + + + + + + + + unknown + NCBITaxon:424573 + Physaleae + + + + + + + + unknown + NCBITaxon:424574 + Solaneae + + + + + + + + unknown + NCBITaxon:426437 + Rhipicephalinae + + + + + + + + + unknown + Eschatocephalinae + NCBITaxon:426441 + Amblyomminae + + + + + + + + unknown + NCBITaxon:426442 + Ixodinae + + + + + + + + unknown + Rhipicephalus (Rhipicephalus) + NCBITaxon:426455 + Rhipicephalus [NCBITaxon:426455] + + + + + + + + + unknown + NCBITaxon:426765 + Coronavirus group 2a + + + + + + + + + unknown + Streptomyces collinus Lindenbein 1952 + NCBITaxon:42684 + Streptomyces collinus + + + + + unknown + NCBITaxon:42822 + Actiniidae + + + + + + + + + + + unknown + NCBITaxon:42825 + Stichodactylidae + + + + + + + + Cullen corylifolium (L.) Medik. + Psoralea corylifolia + Psoralea corylifolia L. + unknown + NCBITaxon:429560 + Cullen corylifolium + + + + + lemurine night monkey + unknown + NCBITaxon:43147 + Aotus lemurinus + + + + + thirteen-lined ground squirrel + unknown + Citellus tridecemlineatus + NCBITaxon:43179 + Spermophilus tridecemlineatus + + + + + unknown + Intramacronucleata Lynn, 1996 + NCBITaxon:431838 + Intramacronucleata + + + + + + + + protea family + unknown + NCBITaxon:4328 + Proteaceae + + + + + + + + unknown + Macadamia F.Muell. + NCBITaxon:4329 + Macadamia + + + + + + + + unknown + NCBITaxon:433514 + Lampyrinae + + + + + + + + unknown + NCBITaxon:433515 + Luciolinae + + + + + + + + unknown + NCBITaxon:43530 + Neobatrachus + + + + + + + + unknown + NCBITaxon:43531 + Neobatrachus pelobatoides + + + + + unknown + NCBITaxon:435433 + unclassified Rattus + + + + + + + + swimming frogs + unknown + NCBITaxon:43557 + Pseudis + + + + + + + + paradox frog + swiming frog + Pseudis paradoxa (Linnaeus, 1758) + Pseudis paradoxus + unknown + NCBITaxon:43558 + Pseudis paradoxa + + + + + unknown + NCBITaxon:436486 + Dinosauria + + + + + + + + unknown + NCBITaxon:436489 + Saurischia + + + + + + + + unknown + NCBITaxon:436491 + Theropoda + + + + + + + + unknown + NCBITaxon:436492 + Coelurosauria + + + + + + + + unknown + Cyclorrhapha + NCBITaxon:43733 + Muscomorpha + + + + + + + + unknown + NCBITaxon:43735 + Tabanomorpha + + + + + + + + unknown + NCBITaxon:43738 + Schizophora + + + + + + + + + unknown + NCBITaxon:43741 + Acalyptratae + + + + + + + + + unknown + NCBITaxon:43742 + Calyptratae + + + + + + + + + unknown + NCBITaxon:43746 + Ephydroidea + + + + + + + + unknown + NCBITaxon:43752 + Tephritoidea + + + + + + + + unknown + NCBITaxon:43754 + Muscoidea + + + + + + + + unknown + NCBITaxon:43755 + Oestroidea + + + + + + + + + unknown + NCBITaxon:43784 + Bibionomorpha + + + + + + + + unknown + NCBITaxon:43786 + Culicimorpha + + + + + + + + + unknown + NCBITaxon:43787 + Psychodomorpha + + + + + + + + unknown + NCBITaxon:43816 + Anophelinae + + + + + + + + unknown + NCBITaxon:43817 + Culicinae + + + + + + + + unknown + NCBITaxon:43845 + Drosophilinae + + + + + + + + unknown + NCBITaxon:43910 + Muscinae + + + + + + + + unknown + Stomoxyinae + NCBITaxon:43911 + Stomoxyini + + + + + + + + unknown + NCBITaxon:43914 + Luciliinae + + + + + + + + unknown + NCBITaxon:43916 + Sarcophaginae + + + + + + + + unknown + NCBITaxon:43921 + Tabaninae + + + + + + + + unknown + NCBITaxon:439488 + ssRNA viruses + + + + + + + + + unknown + Cyanothece Komarek 1976 + NCBITaxon:43988 + Cyanothece + + + + + + + + Cyanothece (strain ATCC 51142) + Cyanothece ATCC51142 + Cyanothece sp. BH68 + Cyanothece sp. BH68K + unknown + NCBITaxon:43989 + Cyanothece sp. ATCC 51142 + + + + + unknown + NCBITaxon:44005 + funebris subgroup + + + + + + + + plane-tree family + unknown + NCBITaxon:4401 + Platanaceae + + + + + + + + plane trees + sycamores + unknown + Platanus L. + NCBITaxon:4402 + Platanus + + + + + + + + unknown + NCBITaxon:44281 + Pneumocystidaceae + + + + + + + + coral-like anemones + unknown + NCBITaxon:44295 + Corallimorpharia + + + + + + + + unknown + NCBITaxon:44327 + Gammaridea + + + + + + + + unknown + Legionellaceae Brenner et al. 1979 + NCBITaxon:444 + Legionellaceae + + + + + + + + unknown + NCBITaxon:444184 + Simian rotavirus A + + + + + + + + monocots + monocotyledons + unknown + Monocotyledoneae + NCBITaxon:4447 + Liliopsida + + + + + + + + + + NCBITaxon:44482 + Anopheles [NCBITaxon:44482] + + + + + + + + NCBITaxon:44483 + Angusticorn + + + + + + + + NCBITaxon:44484 + Anopheles [NCBITaxon:44484] + + + + + unknown + Legionella Brenner et al. 1979 + NCBITaxon:445 + Legionella + + + + + + + + unknown + NCBITaxon:44534 + Cellia + + + + + + + + unknown + NCBITaxon:44537 + Pyretophorus + + + + + + + + unknown + NCBITaxon:44542 + gambiae species complex + + + + + + + + unknown + NCBITaxon:44556 + Phlebotomus [NCBITaxon:44556] + + + + + + + + + unknown + NCBITaxon:44598 + Pterioida + + + + + + + + unknown + NCBITaxon:446038 + Coronavirus group 1b + + + + + + + + unknown + NCBITaxon:44689 + Dictyostelium discoideum + + + + + grass family + unknown + Gramineae + NCBITaxon:4479 + Poaceae + + + + + + + + + unknown + Aegilops L. + NCBITaxon:4480 + Aegilops + + + + + + + + zoanthids + unknown + Zoanthinaria + NCBITaxon:44927 + Zoanthidea + + + + + + + + oats + unknown + Avena L. + NCBITaxon:4496 + Avena + + + + + + + + cultivated oat + oat + unknown + Avena sativa L. + NCBITaxon:4498 + Avena sativa + + + + + unknown + NCBITaxon:45119 + Hadromerida + + + + + + + + barleys + unknown + Hordeum L. + NCBITaxon:4512 + Hordeum + + + + + + + + Hordeum vulgare L. + Horedum vulgare + unknown + NCBITaxon:4513 + Hordeum vulgare + + + + + unknown + Oryza L. + NCBITaxon:4527 + Oryza + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + long-staminate rice + red rice + unknown + Oryza longistaminata A.Chev. & Roehr. + NCBITaxon:4528 + Oryza longistaminata + + + + + common wild rice + red rice + unknown + Oryza rufipogon Griff. + NCBITaxon:4529 + Oryza rufipogon + + + + + rice + unknown + Oryza sativa L. + NCBITaxon:4530 + Oryza sativa + + + + + + + + + unknown + Oryza australiensis Domin + NCBITaxon:4532 + Oryza australiensis + + + + + unknown + Oryza brachyantha A.Chev. & Roehr. + NCBITaxon:4533 + Oryza brachyantha + + + + + unknown + Oryza latifolia Desv. + NCBITaxon:4534 + Oryza latifolia + + + + + unknown + Oryza officinalis Wall. ex G.Watt + NCBITaxon:4535 + Oryza officinalis + + + + + unknown + NCBITaxon:45359 + unclassified pseudomonads + + + + + + + + Oryza nivara S.D.Sharma & Shastry + Oryza nivara S.D.Sharma et Shastry + Oryza nivarra + Oryza sativa f. spontanea + Oryza sativa f. spontanea Roshev. nom. illeg. + unknown + NCBITaxon:4536 + Oryza nivara + + + + + unknown + Oryza punctata Kotschy ex Steud. + NCBITaxon:4537 + Oryza punctata + + + + + African rice + unknown + Oryza glaberrima Steud. + NCBITaxon:4538 + Oryza glaberrima + + + + + unknown + NCBITaxon:45381 + Batrachoidinae + + + + + + + + wood frog + unknown + NCBITaxon:45438 + Rana sylvatica + + + + + gray-footed chipmunk + unknown + Neotamias canipes + NCBITaxon:45466 + Tamias canipes + + + + + cliff chipmunk + unknown + Neotamias dorsalis + NCBITaxon:45467 + Tamias dorsalis + + + + + unknown + Secale L. + NCBITaxon:4549 + Secale + + + + + + + + Secale cereal + Secale cereale L. + Secale cereale subsp. cereale + rye + unknown + NCBITaxon:4550 + Secale cereale + + + + + unknown + Triticum L. + NCBITaxon:4564 + Triticum + + + + + + + + Canadian hard winter wheat + bread wheat + common wheat + wheat + Tricum aestivum + Triticum aestivam + Triticum aestivum L. + Triticum aestivum subsp. aestivum + Triticum aestivum8 + Triticum vulgare + unknown + NCBITaxon:4565 + Triticum aestivum + + + + + unknown + Euchlaena + NCBITaxon:4575 + Zea + + + + + + + + Zea mays mays + Zea mays var. japonica + unknown + NCBITaxon:4577 + Zea mays + + + + + Cyphomandra abutiloides + Cyphomandra abutiloides Griseb. + Solanum abutiloides (Griseb.) Bitter & Lillo + unknown + NCBITaxon:45831 + Solanum abutiloides + + + + + Autographa californica multicapsid nuclear polyhedrosis virus + Autographa californica multicapsid nuclear polyhedrosis virus AcMNPV + Autographa californica nuclear polyhedrosis virus + Autographa californica nuclear polyhedrosis virus AcMNPV + Autographa californica nuclear polyhedrosis virus AcNPV + Autographa californica nuclear polyhedrosis virus, AcMNPV + AcMNPV + unknown + NCBITaxon:46015 + Autographa californica nucleopolyhedrovirus + + + + + bromeliad family + unknown + NCBITaxon:4613 + Bromeliaceae + + + + + + + + Staphylococcus aureus aureus + unknown + Staphylococcus aureus subsp. aureus Rosenbach 1884 + NCBITaxon:46170 + Staphylococcus aureus subsp. aureus + + + + + + + + + + + + unknown + Pseudobutyrivibrio van Gylswyk et al. 1996 + NCBITaxon:46205 + Pseudobutyrivibrio + + + + + + + + unknown + Moraxella (subgen. Moraxella Lwoff 1939) Bovre 1984 + NCBITaxon:46225 + Moraxella [NCBITaxon:46225] + + + + + + + + unknown + Drosophila bogotana + NCBITaxon:46244 + Drosophila pseudoobscura bogotana + + + + + unknown + Bacteroides stercoris Johnson et al. 1986 + NCBITaxon:46506 + Bacteroides stercoris + + + + + unknown + NCBITaxon:46589 + Spionida + + + + + + + + Liliales/Asparagales group + Liliiflorae + unknown + NCBITaxon:4667 + Liliales + + + + + + + + unknown + NCBITaxon:46703 + Montipora + + + + + + + + unknown + NCBITaxon:46718 + Poritidae + + + + + + + + unknown + NCBITaxon:46721 + Goniopora + + + + + + + + lily family + unknown + NCBITaxon:4677 + Liliaceae + + + + + + + + unknown + NCBITaxon:4678 + Allium + + + + + + + + unknown + NCBITaxon:46790 + Drosophila equinoxialis + + + + + unknown + NCBITaxon:46792 + Drosophila insularis + + + + + unknown + NCBITaxon:46793 + Drosophila paulistorum + + + + + Acinetobacteraceae + Branhamaceae + Moraxellaceae Rossau et al. 1991 + unknown + NCBITaxon:468 + Moraxellaceae + + + + + + + + + garlic + unknown + Allium sativa + NCBITaxon:4682 + Allium sativum + + + + + unknown + NCBITaxon:46877 + Drosophilini + + + + + + + + unknown + NCBITaxon:46879 + Drosophilina + + + + + + + + unknown + NCBITaxon:4688 + Lilium + + + + + + + + unknown + Acinetobacter Brisou and Prevot 1954 + NCBITaxon:469 + Acinetobacter + + + + + + + + + + unknown + NCBITaxon:47021 + Orbiliaceae + + + + + + + + unknown + NCBITaxon:47072 + Condylactis + + + + + + + + + giant Caribbean anemone + unknown + NCBITaxon:47073 + Condylactis gigantea + + + + + 11)Baumann et al.'68(AL'80)emend. Bouvet&Grimont + Micrococcus calco-aceticus + Micrococcus calcoaceticus + Moraxella calcoacetica + Neisseria winogradskyi + unknown + NCBITaxon:471 + Acinetobacter calcoaceticus + + + + + unknown + NCBITaxon:47144 + Tetraodon + + + + + + + + + unknown + NCBITaxon:47145 + Tetraodon fluviatilis + + + + + common vole + unknown + NCBITaxon:47230 + Microtus arvalis + + + + + Apollonia melanostoma (Pallas, 1814) + Apollonia melanostomus + Neogobius melanostomus + Neogobius melanostomus Pallas, 1814 + round goby + unknown + NCBITaxon:47308 + Apollonia melanostoma + + + + + unknown + NCBITaxon:47315 + Drosophila auraria + + + + + unknown + NCBITaxon:47316 + Drosophila littoralis + + + + + Commelinidae + Commeliniflorae + unknown + NCBITaxon:4734 + commelinids + + + + + + + + Diplobacillus + Moraxella Lwoff 1939 + unknown + NCBITaxon:475 + Moraxella + + + + + + + + unknown + fungi + NCBITaxon:4751 + Fungi + + + + + + + + + + + unknown + NCBITaxon:4753 + Pneumocystis + + + + + + + + unknown + Pneumocystis carinii f. sp. carinii + NCBITaxon:4754 + Pneumocystis carinii + + + + + unknown + NCBITaxon:47563 + Leptodactylus + + + + + + + + unknown + NCBITaxon:47570 + Schizotrypanum + + + + + + + + Mastigomycotina + chytrids + unknown + NCBITaxon:4761 + Chytridiomycota + + + + + + + + Oomycota + oomycetes + unknown + NCBITaxon:4762 + Oomycetes + + + + + + + + unknown + NCBITaxon:47757 + Adrianichthyidae + + + + + + + + unknown + NCBITaxon:4776 + Peronosporales + + + + + + + + unknown + NCBITaxon:47768 + Pseudocerastes + + + + + + + + Pseudocerastes fieldi + Vipera persica + unknown + NCBITaxon:47769 + Pseudocerastes persicus + + + + + unknown + NCBITaxon:4783 + Phytophthora + + + + + + + + potato late blight agent + potato late blight fungus + unknown + potato late blight + NCBITaxon:4787 + Phytophthora infestans + + + + + unknown + NCBITaxon:48081 + Entacmaea + + + + + + + + unknown + Piromonas + NCBITaxon:4821 + Piromyces + + + + + + + + unknown + zygomycetes + NCBITaxon:4825 + Zygomycota + + + + + + + + unknown + NCBITaxon:4826 + Zygomycetes + + + + + + + + + pin moulds + unknown + NCBITaxon:4827 + Mucorales + + + + + + + + unknown + NCBITaxon:4830 + Mucor + + + + + + + + + unknown + Rhizomucor racemosus + NCBITaxon:4841 + Mucor racemosus + + + + + unknown + NCBITaxon:48415 + Zoarces + + + + + + + + unknown + NCBITaxon:48416 + Zoarces viviparus + + + + + unknown + NCBITaxon:4854 + Mortierellaceae + + + + + + + + unknown + NCBITaxon:4855 + Mortierella + + + + + + + + unknown + Ralstonia Yabuuchi et al. 1996 + NCBITaxon:48736 + Ralstonia + + + + + + + + sac fungi + unknown + ascomycetes + NCBITaxon:4890 + Ascomycota + + + + + + + + + + + + unknown + Hemiascomycetes + NCBITaxon:4891 + Saccharomycetes + + + + + + + + budding yeasts + unknown + Endomycetales + NCBITaxon:4892 + Saccharomycetales + + + + + + + + + + unknown + NCBITaxon:4893 + Saccharomycetaceae + + + + + + + + + + + + fission yeasts + unknown + Schizosaccharomycetoideae + NCBITaxon:4894 + Schizosaccharomycetaceae + + + + + + + + unknown + NCBITaxon:4895 + Schizosaccharomyces + + + + + + + + Schizosaccharomyces malidevorans + Schizosaccharomyces pombeP + fission yeast + unknown + NCBITaxon:4896 + Schizosaccharomyces pombe + + + + + unknown + Polyangiaceae Jahn 1924 + NCBITaxon:49 + Polyangiaceae + + + + + + + + unknown + Hansenula polymorpha + NCBITaxon:4905 + Pichia angusta + + + + + unknown + NCBITaxon:4910 + Kluyveromyces + + + + + + + + Hansenula + Ogataea + Yamadazyma + unknown + NCBITaxon:4919 + Pichia + + + + + + + + + unknown + NCBITaxon:4922 + Pichia pastoris + + + + + Lycopersicon (Mill.) Seithe + Lycopersicum + unknown + NCBITaxon:49274 + Lycopersicon + + + + + + + + unknown + Pachytichospora + NCBITaxon:4930 + Saccharomyces + + + + + + + + cherimoya + chirimoya + custard apple + unknown + Annona cherimola Mill. + NCBITaxon:49314 + Annona cherimola + + + + + baker's yeast + brewer's yeast + lager beer yeast + yeast + Candida robusta + Saccaromyces cerevisiae + Saccharomyces capensis + Saccharomyces italicus + Saccharomyces oviformis + Saccharomyces uvarum var. melibiosus + Saccharomyes cerevisiae + Sccharomyces cerevisiae + unknown + NCBITaxon:4932 + Saccharomyces cerevisiae + + + + + Desulfitobacterium frappieri + Desulfitobacterium frappieri Bouchard et al. 1996 + Desulfitobacterium hafniense Christiansen and Ahring 1996 emend. Niggemyer et al. 2001 + unknown + NCBITaxon:49338 + Desulfitobacterium hafniense + + + + + unknown + NCBITaxon:4951 + Yarrowia + + + + + + + + Candida lipolytica + Mycotorula lipolytica + Yallowia lipolitica + unknown + NCBITaxon:4952 + Yarrowia lipolytica + + + + + Schwanniomyces + Wingea + unknown + NCBITaxon:4958 + Debaryomyces + + + + + + + + Candida famata + Debaromyces hansenii + Torulaspora hansenii + unknown + NCBITaxon:4959 + Debaryomyces hansenii + + + + + unknown + Sporodiobolus + NCBITaxon:5001 + Sporidiobolus + + + + + + + + Aessosporon salmonicolor + Sporobolomyces salmonicolor + Sporodiobolus salmonicolor + unknown + NCBITaxon:5005 + Sporidiobolus salmonicolor + + + + + unknown + NCBITaxon:5015 + Cochliobolus + + + + + + + + unknown + NCBITaxon:5017 + Cochliobolus carbonum + + + + + unknown + NCBITaxon:5020 + Phaeosphaeriaceae + + + + + + + + unknown + NCBITaxon:50344 + Tityus stigmurus + + + + + green and blue molds + unknown + Elaphomycetales + NCBITaxon:5042 + Eurotiales + + + + + + + + unknown + NCBITaxon:50424 + Pterioidea + + + + + + + + pearl-oysters + unknown + NCBITaxon:50425 + Pinctada + + + + + + + + unknown + NCBITaxon:50426 + Pinctada fucata + + + + + unknown + Solanum demissum Lindl. + NCBITaxon:50514 + Solanum demissum + + + + + rhinoceros beetles, hercules beetles & elephant beetles + unknown + NCBITaxon:50519 + Dynastinae + + + + + + + + unknown + NCBITaxon:5052 + Aspergillus + + + + + + + + + + + + + + + true insects + unknown + NCBITaxon:50557 + Insecta + + + + + + + + unknown + NCBITaxon:5059 + Aspergillus flavus + + + + + unknown + Alcaligenaceae De Ley et al. 1986 + NCBITaxon:506 + Alcaligenaceae + + + + + + + + unknown + Aspergillus niger Tiegh. + NCBITaxon:5061 + Aspergillus niger + + + + + unknown + Eurotium oryzae + NCBITaxon:5062 + Aspergillus oryzae + + + + + unknown + Aspergillus tubigensis + NCBITaxon:5068 + Aspergillus tubingensis + + + + + unknown + Alcaligenes Castellani and Chalmers 1919 + NCBITaxon:507 + Alcaligenes + + + + + + + + unknown + NCBITaxon:5071 + Emericella + + + + + + + + unknown + NCBITaxon:5073 + Penicillium + + + + + + + + + + unknown + Sartorya fumigata + NCBITaxon:5085 + Aspergillus fumigatus + + + + + unknown + NCBITaxon:511 + Alcaligenes faecalis + + + + + unknown + NCBITaxon:5110 + Claviceps + + + + + + + + unknown + pyrenomycetes + NCBITaxon:5125 + Hypocreales + + + + + + + + + + + + unknown + NCBITaxon:5126 + Gibberella + + + + + + + + + unknown + Fusarium sambucinum + NCBITaxon:5128 + Gibberella pulicaris + + + + + unknown + NCBITaxon:5129 + Hypocreaceae + + + + + + + + unknown + NCBITaxon:5133 + Nectria + + + + + + + + unknown + Polystigmatales + NCBITaxon:5135 + Phyllachorales + + + + + + + + unknown + NCBITaxon:5136 + Phyllachoraceae + + + + + + + + unknown + NCBITaxon:5139 + Sordariales + + + + + + + + + + + unknown + NCBITaxon:5140 + Neurospora + + + + + + + + unknown + NCBITaxon:5141 + Neurospora crassa + + + + + unknown + NCBITaxon:5144 + Podospora + + + + + + + + unknown + NCBITaxon:5145 + Podospora anserina + + + + + Hypocea jecorina + Hypocrea pecorina + Trichoderma reesei + unknown + NCBITaxon:51453 + Hypocrea jecorina + + + + + unknown + NCBITaxon:5146 + Sordaria + + + + + + + + unknown + NCBITaxon:5147 + Sordaria macrospora + + + + + unknown + NCBITaxon:5148 + Sordariaceae + + + + + + + + + unknown + NCBITaxon:51511 + Ciona savignyi + + + + + unknown + NCBITaxon:51623 + Riftiidae + + + + + + + + unknown + NCBITaxon:51647 + Gloydius + + + + + + + + diamondback moths + unknown + NCBITaxon:51653 + Plutellidae + + + + + + + + unknown + basidiomycetes + NCBITaxon:5204 + Basidiomycota + + + + + + + + + + unknown + NCBITaxon:5206 + Filobasidiella + + + + + + + + Cryptococcus neoformans + Filobaxidiella neoformans + unknown + NCBITaxon:5207 + Filobasidiella neoformans + + + + + unknown + NCBITaxon:5215 + Tremellaceae + + + + + + + + jelly fungi + unknown + NCBITaxon:5234 + Tremellales + + + + + + + + unknown + Oryza alta Swallen + NCBITaxon:52545 + Oryza alta + + + + + unknown + NCBITaxon:5257 + Ustilaginomycetes + + + + + + + + rust fungi + rusts + unknown + Uredinales + NCBITaxon:5258 + Pucciniales + + + + + + + + unknown + NCBITaxon:5262 + Pucciniaceae + + + + + + + + unknown + NCBITaxon:5267 + Ustilaginales + + + + + + + + unknown + NCBITaxon:5268 + Ustilaginaceae + + + + + + + + unknown + NCBITaxon:5269 + Ustilago + + + + + + + + unknown + NCBITaxon:5270 + Ustilago maydis + + + + + unknown + Tabernaemontana L. + NCBITaxon:52860 + Tabernaemontana + + + + + + + + crepe jasmine + gou ya hua + pinwheelflower + Ervatamia coronaria + Ervatamia coronaria (Jacq.) Stapf + Ervatamia divaricata (L.) Burkill + Tabernaemontana coronaria (Jacq.) Willd. + Tabernaemontana divaricata (L.) R.Br. ex Roem. & Schult. + Tabernaemontana divaricata (L.) R.Br. ex Roem. et Schult. + unknown + NCBITaxon:52861 + Tabernaemontana divaricata + + + + + unknown + NCBITaxon:5296 + Puccinia + + + + + + + + unknown + NCBITaxon:5302 + Hymenomycetes + + + + + + + + + unknown + Polyporales + NCBITaxon:5303 + Aphyllophorales + + + + + + + + + + unknown + NCBITaxon:5304 + Corticiaceae + + + + + + + + unknown + NCBITaxon:5305 + Phanerochaete + + + + + + + + Chrysosporium pruinosum (Gilman et Abbott) Carmich. + Phanerochaete chrysosporium Burdsall + Sporotrichum pruinosum + Sporotrichum pruinosum Gilman et Abbott + unknown + NCBITaxon:5306 + Phanerochaete chrysosporium + + + + + unknown + NCBITaxon:5313 + Ganodermataceae + + + + + + + + unknown + NCBITaxon:5314 + Ganoderma + + + + + + + + unknown + Ganoderma lucidium + NCBITaxon:5315 + Ganoderma lucidum + + + + + bracket fungi + unknown + NCBITaxon:5317 + Polyporaceae + + + + + + + + + unknown + NCBITaxon:5320 + Pleurotus + + + + + + + + + oyster mushroom + unknown + NCBITaxon:5322 + Pleurotus ostreatus + + + + + gill mushrooms + unknown + NCBITaxon:5338 + Agaricales + + + + + + + + + + + Coprinus cinereus + Coprinus macrorhizus + unknown + NCBITaxon:5346 + Coprinopsis cinerea + + + + + unknown + NCBITaxon:53469 + Ancylostomatinae + + + + + + + + unknown + NCBITaxon:5351 + Tricholomataceae + + + + + + + + + unknown + NCBITaxon:53541 + Stegomyia + + + + + + + + unknown + Aedini + NCBITaxon:53550 + Culicini + + + + + + + + unknown + Caesalpinia L. + NCBITaxon:53845 + Caesalpinia + + + + + + + + unknown + NCBITaxon:53911 + Parkia + + + + + + + + unknown + Pyrococcus horikoshii Gonzlez et al. 1999 + NCBITaxon:53953 + Pyrococcus horikoshii + + + + + unknown + NCBITaxon:5398 + Bolbitiaceae + + + + + + + + unknown + NCBITaxon:5399 + Agrocybe + + + + + + + + + unknown + NCBITaxon:5400 + Agrocybe aegerita + + + + + unknown + anamorphic Orbiliaceae + NCBITaxon:54032 + mitosporic Orbiliaceae + + + + + + + + vestimentiferans + unknown + Obturata + NCBITaxon:54122 + Vestimentifera + + + + + + + + unknown + NCBITaxon:54123 + Riftiida + + + + + + + + unknown + Rhinopithecus + NCBITaxon:54132 + Pygathrix + + + + + + + + + + brow-ridged langurs + leaf monkeys + unknown + NCBITaxon:54136 + Trachypithecus + + + + + + + + + + + Francois' langur + Francois's leaf monkey + Indochinese langur + unknown + NCBITaxon:54180 + Trachypithecus francoisi + + + + + Enterobacteraceae + Enterobacteraceae (ex Lapage 1979) Lapage 1982, fam. nov., nom. rev. + Enterobacteriaceae (ex Rahn 1937) Ewing et al. 1980, fam. nov., nom. rev. + Enterobacteriaceae Rahn 1937 + gamma-3 proteobacteria + unknown + NCBITaxon:543 + Enterobacteriaceae + + + + + + + + + + + + + + Pere David's macaque + unknown + NCBITaxon:54602 + Macaca thibetana + + + + + unknown + Torulopsis + NCBITaxon:5475 + Candida + + + + + + + + + unknown + Candida stellatoidea + NCBITaxon:5476 + Candida albicans + + + + + unknown + Torulopsis glabrata + NCBITaxon:5478 + Candida glabrata + + + + + unknown + NCBITaxon:54970 + Chironominae + + + + + + + + unknown + Polyangium Link 1809 + NCBITaxon:55 + Polyangium + + + + + + + + unknown + NCBITaxon:5500 + Coccidioides + + + + + + + + unknown + NCBITaxon:5501 + Coccidioides immitis + + + + + + + + convolvulus hawk-moth + morning glory sphinx moth + sweetpotato hornworm + unknown + Agrius convoluvuli + NCBITaxon:55055 + Agrius convolvuli + + + + + unknown + NCBITaxon:5506 + Fusarium + + + + + + + + unknown + NCBITaxon:55067 + Phaeosphaeria + + + + + + + + unknown + NCBITaxon:55153 + Sciuridae + + + + + + + + + unknown + Fusarium graminearum + NCBITaxon:5518 + Gibberella zeae + + + + + unknown + Silicibacter Petursdottir and Kristjansson 1999 + NCBITaxon:55217 + Silicibacter + + + + + + + + unknown + NCBITaxon:5526 + Humicola + + + + + + + + unknown + NCBITaxon:5533 + Rhodotorula + + + + + + + + unknown + NCBITaxon:5535 + Rhodotorula glutinis + + + + + Trichoderma harizianum + Trichoderma harzianum + unknown + NCBITaxon:5544 + Hypocrea lixii + + + + + unknown + NCBITaxon:55566 + Suberites + + + + + + + + unknown + NCBITaxon:55567 + Suberites domuncula + + + + + unknown + NCBITaxon:55660 + Suberitidae + + + + + + + + unknown + NCBITaxon:55879 + Rhabditoidea + + + + + + + + unknown + NCBITaxon:55885 + Peloderinae + + + + + + + + mangosteen family + unknown + Guttiferae + NCBITaxon:55961 + Clusiaceae + + + + + + + + unknown + NCBITaxon:55962 + Hypericum + + + + + + + + Polyangium cellulosum + Polyangium cellulosum (ex Imshenetski and Solntseva 1936) Brockman 1989 + Sorangium cellulosum + Sorangium nigrescens + Sorangium nigrum + unknown + NCBITaxon:56 + Polyangium cellulosum + + + + + Escherchia + Escherichia Castellani and Chalmers 1919 + unknown + NCBITaxon:561 + Escherichia + + + + + + + + Bacillus coli + Bacterium coli + Bacterium coli commune + Escherchia coli + Escherichia coli (Migula 1895) Castellani and Chalmers 1919 + Eschericia coli + unknown + NCBITaxon:562 + Escherichia coli + + + + + + + + + + unknown + NCBITaxon:5637 + Polyporus + + + + + + + + unknown + Favolus alveolaris + NCBITaxon:5638 + Polyporus alveolaris + + + + + unknown + NCBITaxon:56487 + Thelephorales + + + + + + + + unknown + NCBITaxon:56488 + Thelephoraceae + + + + + + + + unknown + NCBITaxon:56489 + Thelephora + + + + + + + + Protomonadida + kinetoplastids + kinetoplasts + unknown + NCBITaxon:5653 + Kinetoplastida + + + + + + + + unknown + NCBITaxon:5654 + Trypanosomatidae + + + + + + + + + unknown + NCBITaxon:5658 + Leishmania + + + + + + + + Leishmania (Leishmania) amazonensis + Leishmania mexicana amazonensis + unknown + NCBITaxon:5659 + Leishmania amazonensis + + + + + unknown + Leishmania (Leishmania) donovani + NCBITaxon:5661 + Leishmania donovani + + + + + Leishmania (Leishmania) major + Leishmania tropica major + unknown + NCBITaxon:5664 + Leishmania major + + + + + Leishmania (Leishmania) tropica + Leishmania tropica minor + unknown + NCBITaxon:5666 + Leishmania tropica + + + + + unknown + Leishmania (Leishmania) infantum + NCBITaxon:5671 + Leishmania infantum + + + + + unknown + NCBITaxon:56721 + Pseudaphritis + + + + + + + + unknown + NCBITaxon:56722 + Pseudaphritis urvillii + + + + + unknown + Shewanella frigidimarina Bowman et al. 1997 + NCBITaxon:56812 + Shewanella frigidimarina + + + + + unknown + NCBITaxon:5690 + Trypanosoma + + + + + + + + + Trypanosoma (Trypanozoon) brucei + Trypanosoma brucei subgroup + unknown + NCBITaxon:5691 + Trypanosoma brucei + + + + + + + + + + unknown + NCBITaxon:5693 + Trypanosoma cruzi + + + + + Hyalococcus + Klebsiella Trevisan 1885 (Approved Lists 1980) emend. Carter et al. 1999 + Klebsiella Trevisan 1885 (Approved Lists 1980) emend. Drancourt et al. 2001 + unknown + NCBITaxon:570 + Klebsiella + + + + + + + + unknown + Trypanosoma (Trypanozoon) brucei brucei + NCBITaxon:5702 + Trypanosoma brucei brucei + + + + + unknown + NCBITaxon:57059 + Tityus discrepans + + + + + unknown + NCBITaxon:57065 + Polybia + + + + + + + + unknown + Heliscus lugdunensis + NCBITaxon:57155 + Nectria lugdunensis + + + + + black-headed night monkey + unknown + NCBITaxon:57175 + Aotus nigriceps + + + + + Spix's night monkey + noisy night monkey + unknown + NCBITaxon:57176 + Aotus vociferans + + + + + Bacillus pneumoniae + Bacterium pneumoniae crouposae + Hyalococcus pneumoniae + Klebsiella pneumoniae (Schroeter 1886) Trevisan 1887 + unknown + NCBITaxon:573 + Klebsiella pneumoniae + + + + + Mus molossinus + Mus musculus molosinus + Japanese wild mouse + unknown + NCBITaxon:57486 + Mus musculus molossinus + + + + + unknown + NCBITaxon:5758 + Entamoeba + + + + + + + + unknown + NCBITaxon:5759 + Entamoeba histolytica + + + + + + + + unknown + NCBITaxon:57685 + Acrolepiopsis + + + + + + + + Acrolepia assectella + Acrolepiopsis assectella (Zeller, 1839) + leek moth + unknown + NCBITaxon:57686 + Acrolepiopsis assectella + + + + + unknown + NCBITaxon:5774 + Amoeba + + + + + + + + unknown + NCBITaxon:5775 + Amoeba proteus + + + + + unknown + NCBITaxon:5782 + Dictyostelium + + + + + + + + apicomplexans + unknown + apicomplexa + NCBITaxon:5794 + Apicomplexa + + + + + + + + + unknown + coccidians + NCBITaxon:5796 + Coccidia + + + + + + + + unknown + NCBITaxon:58019 + Coniferopsida + + + + + + + + unknown + NCBITaxon:58021 + Ginkgophyta + + + + + + + + unknown + NCBITaxon:58022 + Gnetophyta + + + + + vascular plants + unknown + NCBITaxon:58023 + Tracheophyta + + + + + + + + seed plants + unknown + NCBITaxon:58024 + Spermatophyta + + + + + + + + + + + unknown + NCBITaxon:5806 + Cryptosporidium + + + + + + + + + unknown + NCBITaxon:5807 + Cryptosporidium parvum + + + + + unknown + Sarcocystids + NCBITaxon:5809 + Sarcocystidae + + + + + + + + unknown + Toxoplasma Nicolle and Manceaux, 1909 + NCBITaxon:5810 + Toxoplasma + + + + + + + + unknown + NCBITaxon:5811 + Toxoplasma gondii + + + + + haemosporidians + unknown + Haemosporina + NCBITaxon:5819 + Haemosporida + + + + + + + + unknown + NCBITaxon:5820 + Plasmodium + + + + + + + + + unknown + NCBITaxon:5821 + Plasmodium berghei + + + + + + + + unknown + NCBITaxon:58226 + Comamonas sp. JS765 + + + + + unknown + Plasmodium berghei (strain ANKA) + NCBITaxon:5823 + Plasmodium berghei strain ANKA + + + + + unknown + NCBITaxon:58312 + unclassified Drosophila + + + + + + + + malaria parasite P. falciparum + unknown + Plasmodium (Laverania) falciparum + NCBITaxon:5833 + Plasmodium falciparum + + + + + + + + + unknown + NCBITaxon:58430 + Chassalia + + + + + + + + unknown + NCBITaxon:58431 + Chassalia parviflora + + + + + Ciliata + ciliates + unknown + NCBITaxon:5878 + Ciliophora + + + + + + + + unknown + NCBITaxon:58823 + Plodia + + + + + + + + Indian meal moth + Indianmeal moth + unknown + NCBITaxon:58824 + Plodia interpunctella + + + + + Salmonella Lignieres 1900 + Samonella + unknown + NCBITaxon:590 + Salmonella + + + + + + + + + + Salmonella enterica I + Salmonella enterica subsp. I + Salmonella enterica subsp. enterica + unknown + NCBITaxon:59201 + Salmonella enterica subsp. enterica + + + + + + + + unknown + NCBITaxon:59268 + Larroussius + + + + + + + + unknown + NCBITaxon:59272 + Phlebotomus ariasi + + + + + Hypotrichida + hypotrichs + unknown + NCBITaxon:5934 + Hypotrichia + + + + + + + + unknown + NCBITaxon:5935 + Euplotes + + + + + + + + unknown + NCBITaxon:59537 + Pantholops + + + + + + + + chiru + unknown + Pantholops hodgsoni + NCBITaxon:59538 + Pantholops hodgsonii + + + + + unknown + Palicouria + NCBITaxon:59595 + Palicourea + + + + + + + + unknown + Taenopygia + NCBITaxon:59728 + Taeniopygia + + + + + + + + Poephila guttata + Taenopygia guttata + zebra finch + unknown + NCBITaxon:59729 + Taeniopygia guttata + + + + + unknown + NCBITaxon:59857 + Tabanini + + + + + + + + Prochlorococcus marinus MED4 + Prochlorococcus marinus subsp. pastoris str. CCMP1378 + Prochlorococcus sp. CCMP1378 + Prochlorococcus sp. MED4 + unknown + NCBITaxon:59919 + Prochlorococcus marinus subsp. pastoris str. CCMP1986 + + + + + Bacillus typhi + Bacterium (subgen. Eberthella) typhi + Salmonella typhi (Schroeter 1886) Warren and Scott 1930 + unknown + NCBITaxon:601 + Salmonella typhi + + + + + Bacillus typhimurium + Salmonella choleraesuis serotype typhimurium + Salmonella typhi-murium + Salmonella typhimurium (Loeffler 1892) Castellani and Chalmers 1919 + Samonella typhimurium + unknown + NCBITaxon:602 + Salmonella typhimurium + + + + + Parazoa + sponges + unknown + NCBITaxon:6040 + Porifera + + + + + + + + unknown + NCBITaxon:6042 + Demospongiae + + + + + + + + unknown + Tetraxonida + NCBITaxon:6043 + Tetractinomorpha + + + + + + + + macadamia nut + unknown + Macadamia integrifolia Maiden & Betche + NCBITaxon:60698 + Macadamia integrifolia + + + + + unknown + NCBITaxon:6072 + Eumetazoa + + + + + + + + + Coelenterata + cnidarians + coelenterates + unknown + NCBITaxon:6073 + Cnidaria + + + + + + + + + + unknown + hydrozoans + NCBITaxon:6074 + Hydrozoa + + + + + + + + Athecata + Gymnoblastea + unknown + NCBITaxon:6076 + Anthomedusae + + + + + + + + hydras + unknown + NCBITaxon:6080 + Hydridae + + + + + + + + Chlorohydra viridissima + Hydra viridissima + unknown + NCBITaxon:6082 + Hydra viridis + + + + + unknown + NCBITaxon:6083 + Hydra + + + + + + + + + unknown + Hydra attenuata + NCBITaxon:6087 + Hydra vulgaris + + + + + Calyptoblastea + Thecata + unknown + NCBITaxon:6097 + Leptomedusae + + + + + + + + unknown + NCBITaxon:6099 + Aequorea + + + + + + + + unknown + NCBITaxon:6100 + Aequorea victoria + + + + + unknown + anthozoans + NCBITaxon:6101 + Anthozoa + + + + + + + + + unknown + Zoantharia + NCBITaxon:6102 + Hexacorallia + + + + + + + + + + + actinians + sea anemones + unknown + NCBITaxon:6103 + Actiniaria + + + + + + + + + unknown + NCBITaxon:6107 + Anemonia + + + + + + + + unknown + NCBITaxon:61172 + Laguna Negra virus + + + + + unknown + Parasicyonis actinostoloides + NCBITaxon:6118 + Entacmaea quadricolor + + + + + unknown + Fusarium scirpi + NCBITaxon:61235 + Fusarium equiseti + + + + + stony corals + unknown + Madreporaria + NCBITaxon:6125 + Scleractinia + + + + + + + + + unknown + NCBITaxon:6126 + Acroporidae + + + + + + + + unknown + Serratia Bizio 1823 + NCBITaxon:613 + Serratia + + + + + + + + unknown + Alcyonaria + NCBITaxon:6132 + Octocorallia + + + + + + + + unknown + NCBITaxon:61354 + Psammobiidae + + + + + + + + unknown + NCBITaxon:61355 + Asaphis + + + + + + + + unknown + jellyfishes + NCBITaxon:6142 + Scyphozoa + + + + + + + + unknown + NCBITaxon:61428 + Bufo andrewsi + + + + + unknown + NCBITaxon:6143 + Semaeostomeae + + + + + + + + 'Dehalococcoides' + Dehalococcoides + unknown + NCBITaxon:61434 + Dehalococcoides + + + + + + + + 'Dehalococcoides ethenogenes' + Dehalococcoides ethenogenes + unknown + NCBITaxon:61435 + Dehalococcoides ethenogenes + + + + + + + + unknown + NCBITaxon:6144 + Aurelia + + + + + + + + moon jelly + unknown + NCBITaxon:6145 + Aurelia aurita + + + + + Bacillus marcescens + Serratia marcescens Bizio 1823 + unknown + NCBITaxon:615 + Serratia marcescens + + + + + unknown + Persicaria Mill. + NCBITaxon:61508 + Persicaria + + + + + + + + Persicaria senticosa (Meisn.) H.Gross ex Nakai + Persicaria senticosum + unknown + NCBITaxon:61509 + Persicaria senticosa + + + + + unknown + NCBITaxon:61529 + Ptychomitriaceae + + + + + + + + unknown + Ptychomitrium Fuernr. + NCBITaxon:61537 + Ptychomitrium + + + + + + + + unknown + Ptychomitrium gardneri Lesq. + NCBITaxon:61565 + Ptychomitrium gardneri + + + + + flatworm + unknown + flatworms + NCBITaxon:6157 + Platyhelminthes + + + + + + + + black snub-nosed monkey + unknown + Rhinopithecus bieti + NCBITaxon:61621 + Pygathrix bieti + + + + + Rhinopithecus roxellana + Rhinopithecus roxellanae + golden snub-nosed monkey + unknown + NCBITaxon:61622 + Pygathrix roxellana + + + + + unknown + NCBITaxon:6178 + Trematoda + + + + + + + + flukes + unknown + NCBITaxon:6179 + Digenea + + + + + + + + + + unknown + Streigida + NCBITaxon:6180 + Strigeidida + + + + + + + + unknown + NCBITaxon:6181 + Schistosoma + + + + + + + + + unknown + NCBITaxon:6182 + Schistosoma japonicum + + + + + unknown + NCBITaxon:6183 + Schistosoma mansoni + + + + + Hylobates concolor leucogenys + Hylobates leucogenys + Hylobates leucogenys Ogilby, 1840 + White-cheeked Gibbon + unknown + NCBITaxon:61853 + Nomascus leucogenys + + + + + unknown + NCBITaxon:6190 + Echinostomida + + + + + + + + unknown + NCBITaxon:6191 + Fasciola + + + + + + + + liver fluke + unknown + Fasciolidae hepatica + NCBITaxon:6192 + Fasciola hepatica + + + + + unknown + NCBITaxon:6193 + Opisthorchiida + + + + + + + + unknown + NCBITaxon:6194 + Opisthorchiata + + + + + + + + unknown + NCBITaxon:6195 + Opisthorchioidea + + + + + + + + unknown + NCBITaxon:6196 + Opisthorchiidae + + + + + + + + unknown + NCBITaxon:6197 + Opisthorchis + + + + + + + + Atelocerata + Tracheata + Uniramia + myriapods + unknown + NCBITaxon:61985 + Myriapoda + + + + + + + + unknown + Shigella Castellani and Chalmers 1919 + NCBITaxon:620 + Shigella + + + + + + + + + Shigella flexneri Castellani and Chalmers 1919 + Shigella paradysenteriae + unknown + NCBITaxon:623 + Shigella flexneri + + + + + nematode + nematodes + roundworm + roundworms + unknown + Nemata + NCBITaxon:6231 + Nematoda + + + + + + + + unknown + NCBITaxon:6236 + Rhabditida + + + + + + + + + unknown + NCBITaxon:6237 + Caenorhabditis + + + + + + + + + + + unknown + NCBITaxon:6238 + Caenorhabditis briggsae + + + + + nematode + unknown + NCBITaxon:6239 + Caenorhabditis elegans + + + + + Bacterium sonnei + Shigella sonnei (Levine 1920) Weldin 1927 + unknown + NCBITaxon:624 + Shigella sonnei + + + + + + + + unknown + NCBITaxon:6243 + Rhabditidae + + + + + + + + unknown + NCBITaxon:6249 + Ascaridida + + + + + + + + unknown + NCBITaxon:6250 + Ascarididae + + + + + + + + unknown + NCBITaxon:6251 + Ascaris + + + + + + + + pig roundworm + unknown + NCBITaxon:6253 + Ascaris suum + + + + + unknown + NCBITaxon:6274 + Spirurida + + + + + + + + unknown + NCBITaxon:6276 + Acanthocheilonema + + + + + + + + unknown + Dipetalonema viteae + NCBITaxon:6277 + Acanthocheilonema viteae + + + + + unknown + NCBITaxon:6278 + Brugia + + + + + + + + + agent of lymphatic filariasis + unknown + NCBITaxon:6279 + Brugia malayi + + + + + unknown + NCBITaxon:6280 + Brugia pahangi + + + + + unknown + NCBITaxon:6281 + Onchocerca + + + + + + + + + + + unknown + NCBITaxon:6282 + Onchocerca volvulus + + + + + unknown + NCBITaxon:6283 + Onchocerca gutturosa + + + + + unknown + NCBITaxon:6286 + Dirofilaria + + + + + + + + canine heartworm nematode + dog heartworm nematode + unknown + NCBITaxon:6287 + Dirofilaria immitis + + + + + unknown + Yersinia van Loghem 1944 + NCBITaxon:629 + Yersinia + + + + + + + + unknown + NCBITaxon:62909 + Ustilaginomycetidae + + + + + + + + unknown + NCBITaxon:6292 + Wuchereria + + + + + + + + agent of lymphatic filariasis + unknown + NCBITaxon:6293 + Wuchereria bancrofti + + + + + unknown + NCBITaxon:6295 + Filarioidea + + + + + + + + unknown + Filariidae + NCBITaxon:6296 + Onchocercidae + + + + + + + + + + + + + + unknown + Acinetobacter calcoaceticus ADP1 + NCBITaxon:62977 + Acinetobacter sp. ADP1 + + + + + unknown + NCBITaxon:6298 + Litomosoides + + + + + + + + unknown + NCBITaxon:6308 + Strongylida + + + + + + + + Bacillus pestis + Bacterium pestis + Pasteurella pestis + Pestisella pestis + Yersinia pestis (Lehmann and Neumann 1896) van Loghem 1944 (Approved Lists 1980), nom. cons + Yersinia pseudotuberculosis subsp. pestis + Yersinia pseudotuberculosis subsp. pestis (Lehmann and Neumann 1896) Bercovier et al. 1981 + unknown + NCBITaxon:632 + Yersinia pestis + + + + + unknown + NCBITaxon:63226 + Asellota + + + + + + + + unknown + NCBITaxon:63227 + Asellidae + + + + + + + + unknown + Aquifex aeolicus + NCBITaxon:63363 + Aquifex aeolicus + + + + + annelid worms + unknown + segmented worms + NCBITaxon:6340 + Annelida + + + + + + + + + polychaetes + unknown + NCBITaxon:6341 + Polychaeta + + + + + + + + + unknown + NCBITaxon:6342 + Capitellida + + + + + + + + unknown + NCBITaxon:6343 + Arenicola + + + + + + + + lugworm + rock worm + unknown + NCBITaxon:6344 + Arenicola marina + + + + + unknown + NCBITaxon:6348 + Phyllodocida + + + + + + + + unknown + NCBITaxon:6358 + Platynereis + + + + + + + + Dumeril's clam worm + unknown + NCBITaxon:6359 + Platynereis dumerilii + + + + + unknown + Oryza minuta J.Presl + NCBITaxon:63629 + Oryza minuta + + + + + unknown + NCBITaxon:63707 + Chrysomelinae + + + + + + + + unknown + NCBITaxon:63708 + Chrysomelini + + + + + + + + + unknown + Natronomonas Kamekura et al. 1997 + NCBITaxon:63743 + Natronomonas + + + + + + + + unknown + NCBITaxon:6378 + Chaetopteridae + + + + + + + + unknown + NCBITaxon:6379 + Chaetopterus + + + + + + + + unknown + NCBITaxon:6381 + Oligochaeta + + + + + + + + unknown + NCBITaxon:6382 + Haplotaxida + + + + + + + + earthworms + unknown + NCBITaxon:6391 + Lumbricina + + + + + + + + unknown + NCBITaxon:6392 + Lumbricidae + + + + + + + + + unknown + NCBITaxon:6393 + Eisenia + + + + + + + + common brandling worm + common dung-worm + Eisenia fetida (Savigny, 1826) + Eisenia fetidea + Eisenia foetida + unknown + NCBITaxon:6396 + Eisenia fetida + + + + + unknown + NCBITaxon:6397 + Lumbricus + + + + + + + + Vibrionaceae Veron 1965 + gamma-3 proteobacteria + unknown + NCBITaxon:641 + Vibrionaceae + + + + + + + + unknown + NCBITaxon:6425 + Riftia + + + + + + + + giant tube worm + tube worm + unknown + NCBITaxon:6426 + Riftia pachyptila + + + + + fat innkeeper worms + innkeeper worms + unknown + spoonworms + NCBITaxon:6427 + Echiura + + + + + + + + unknown + NCBITaxon:6428 + Xenopneusta + + + + + + + + unknown + NCBITaxon:6429 + Urechidae + + + + + + + + unknown + NCBITaxon:6430 + Urechis + + + + + + + + unknown + NCBITaxon:6431 + Urechis caupo + + + + + cabbage white + small cabbage white + small white + unknown + Pieris rapae (Linnaeus, 1758) + NCBITaxon:64459 + Pieris rapae + + + + + Penaeus (Litopenaeus) setiferus + Penaeus setiferus + white shrimp + unknown + NCBITaxon:64468 + Litopenaeus setiferus + + + + + molluscs + mollusks + unknown + NCBITaxon:6447 + Mollusca + + + + + + + + + + gastropods + unknown + NCBITaxon:6448 + Gastropoda + + + + + + + + unknown + NCBITaxon:64518 + Mortierella alpina + + + + + unknown + NCBITaxon:64608 + Agrocybe cylindracea + + + + + yellow-pine chipmunk + unknown + Neotamias amoenus + NCBITaxon:64679 + Tamias amoenus + + + + + tundra vole + unknown + NCBITaxon:64717 + Microtus oeconomus + + + + + unknown + Stenoglossa + NCBITaxon:6479 + Neogastropoda + + + + + + + + cone shells + unknown + NCBITaxon:6489 + Conidae + + + + + + + + unknown + Aquificaceae Reysenbach 2002 + NCBITaxon:64898 + Aquificaceae + + + + + + + + unknown + NCBITaxon:6490 + Conus + + + + + + + + + + + + unknown + NCBITaxon:64936 + Grimmiales + + + + + + + + unknown + NCBITaxon:6496 + Opisthobranchia + + + + + + + + sea hares + unknown + NCBITaxon:6497 + Anaspidea + + + + + + + + Dolabellidae + Notarchidae + unknown + NCBITaxon:6498 + Aplysiidae + + + + + + + + unknown + NCBITaxon:6499 + Aplysia + + + + + + + + California sea hare + unknown + NCBITaxon:6500 + Aplysia californica + + + + + unknown + NCBITaxon:65022 + Tortricinae + + + + + + + + unknown + NCBITaxon:65024 + Epiphyas + + + + + + + + unknown + NCBITaxon:65032 + Epiphyas postvittana + + + + + unknown + Pseudomonas sp. (strain P51) + NCBITaxon:65067 + Pseudomonas sp. P51 + + + + + Lamellibranchiata + Pelecypoda + bivalves + unknown + NCBITaxon:6544 + Bivalvia + + + + + + + + + unknown + NCBITaxon:6545 + Pteriomorphia + + + + + + + + + + unknown + NCBITaxon:6546 + Mytiloida + + + + + + + + unknown + NCBITaxon:6547 + Mytilidae + + + + + + + + unknown + NCBITaxon:6548 + Mytilus + + + + + + + + + + + African wild rice + unknown + Oryza barthii A.Chev. + NCBITaxon:65489 + Oryza barthii + + + + + California mussel + unknown + NCBITaxon:6549 + Mytilus californianus + + + + + unknown + Oryza rhizomatis D.A.Vaughan + NCBITaxon:65491 + Oryza rhizomatis + + + + + blue mussel + edible mussel + unknown + NCBITaxon:6550 + Mytilus edulis + + + + + bay mussel + common blue mussel + unknown + NCBITaxon:6551 + Mytilus trossulus + + + + + unknown + NCBITaxon:6562 + Ostreoida + + + + + + + + oysters + unknown + NCBITaxon:6563 + Ostreidae + + + + + + + + unknown + NCBITaxon:6564 + Crassostrea + + + + + + + + eastern oyster + unknown + Crassotrea virginica + NCBITaxon:6565 + Crassostrea virginica + + + + + unknown + NCBITaxon:6580 + Veneroida + + + + + + + + + surf clams + unknown + Mactracea + NCBITaxon:6581 + Mactridae + + + + + + + + + unknown + NCBITaxon:6582 + Spisula + + + + + + + + Atlantic surf clam + Atlantic surf-clam + unknown + NCBITaxon:6584 + Spisula solidissima + + + + + unknown + Heterodonta + NCBITaxon:6599 + Heteroconchia + + + + + + + + cephalopods + unknown + NCBITaxon:6605 + Cephalopoda + + + + + + + + unknown + Dibranchiata + NCBITaxon:6606 + Coleoidea + + + + + + + + Tonkin snub-nosed monkey + unknown + Rhinopithecus avunculus + NCBITaxon:66062 + Pygathrix avunculus + + + + + unknown + Sepioida + NCBITaxon:6607 + Sepioidea + + + + + + + + cuttlefish + cuttlefishes + unknown + NCBITaxon:6608 + Sepiidae + + + + + + + + unknown + NCBITaxon:6609 + Sepia + + + + + + + + common cuttlefish + unknown + NCBITaxon:6610 + Sepia officinalis + + + + + unknown + NCBITaxon:6615 + Loliginidae + + + + + + + + unknown + NCBITaxon:6616 + Loligo + + + + + + + + unknown + NCBITaxon:66180 + Notechinae + + + + + + + + Microspira + Pacinia + Vibrio Pacini 1854 + unknown + NCBITaxon:662 + Vibrio + + + + + + + + + unknown + NCBITaxon:6622 + Loligo vulgaris + + + + + arrow squids + unknown + NCBITaxon:6626 + Ommastrephidae + + + + + + + + unknown + NCBITaxon:6636 + Todarodes + + + + + + + + Japanese flying squid + unknown + NCBITaxon:6637 + Todarodes pacificus + + + + + unknown + NCBITaxon:6638 + Octopoda + + + + + + + + unknown + NCBITaxon:6643 + Octopus + + + + + + + + common octopus + unknown + NCBITaxon:6645 + Octopus vulgaris + + + + + unknown + NCBITaxon:6646 + Incirrata + + + + + + + + unknown + NCBITaxon:6647 + Octopodidae + + + + + + + + unknown + arthropods + NCBITaxon:6656 + Arthropoda + + + + + + + + + unknown + crustaceans + NCBITaxon:6657 + Crustacea + + + + + + + + + Bacillo virgola del Koch + Bacillus cholerae + Bacillus cholerae-asiaticae + Kommabacillus + Liquidivibrio cholerae + Microspira comma + Pacinia cholerae-asiaticae + Spirillum cholerae + Spirillum cholerae-asiaticae + Vibrio choleae + Vibrio cholera + Vibrio cholerae Pacini 1854 + Vibrio cholerae-asiaticae + Vibrio comma + unknown + NCBITaxon:666 + Vibrio cholerae + + + + + + + + Propionibacterium freudenreichii subsp. freudenreichii (van Niel 1928) + Propionibacterium freudenreichii subsp. freudenreichii (van Niel 1928) Moore and Holdeman 1970 + Propionicibacterium freudenreichii subsp. freudenreichii + unknown + NCBITaxon:66712 + Propionibacterium freudenreichii subsp. freudenreichii + + + + + unknown + NCBITaxon:6681 + Malacostraca + + + + + + + + unknown + NCBITaxon:6682 + Eucarida + + + + + + + + unknown + NCBITaxon:6683 + Decapoda + + + + + + + + + unknown + NCBITaxon:6684 + Dendrobranchiata + + + + + + + + penaeid shrimps + unknown + NCBITaxon:6685 + Penaeidae + + + + + + + + + + + black tiger shrimp + giant tiger prawn + tiger prawn + unknown + Penaeus (Penaeus) monodon + NCBITaxon:6687 + Penaeus monodon + + + + + Pacific white shrimp + white shrimp + Penaeus (Litopenaeus) vannamei + Penaeus vanameii + Penaeus vannamei + Penaeus vannameii + unknown + NCBITaxon:6689 + Litopenaeus vannamei + + + + + Achromobacter harveyi + Beneckea harveyi + Beneckea harveyi (Johnson and Shunk 1936) Reichelt and Baumann 1973 (Approved Lists 1980) + Beneckea neptuna + Lucibacterium harveyi + Lucibacterium harveyi (Johnson and Shunk 1936) Hendrie et al. 1970 (Approved Lists 1980) + Photobacterium harveyi + Pseudomonas harveyi + Vibrio carchariae + Vibrio carchariae Grimes et al. 1985 + Vibrio harveyi (Johnson and Shunk 1936) Baumann et al. 1981 + Vibrio trachuri + Vibrio trachuri Iwamoto et al. 1996 + unknown + NCBITaxon:669 + Vibrio harveyi + + + + + unknown + NCBITaxon:6692 + Pleocyemata + + + + + + + + + + unknown + NCBITaxon:6694 + Caridea + + + + + + + + + palaemonid shrimps + unknown + NCBITaxon:6695 + Palaemonidae + + + + + + + + unknown + NCBITaxon:6696 + Macrobrachium + + + + + + + + pandalid shrimps + unknown + NCBITaxon:6701 + Pandalidae + + + + + + + + unknown + NCBITaxon:6702 + Pandalus + + + + + + + + northern red shrimp + northern shrimp + unknown + NCBITaxon:6703 + Pandalus borealis + + + + + clawed lobsters + unknown + Homaridae + NCBITaxon:6704 + Nephropidae + + + + + + + + unknown + NCBITaxon:6705 + Homarus + + + + + + + + American lobster + unknown + NCBITaxon:6706 + Homarus americanus + + + + + true lobsters and crayfishes + unknown + Astacura + NCBITaxon:6712 + Astacidea + + + + + + + + + + unknown + NCBITaxon:6713 + Astacidae + + + + + + + + unknown + NCBITaxon:6719 + Pacifastacus + + + + + + + + signal crayfish + unknown + NCBITaxon:6720 + Pacifastacus leniusculus + + + + + unknown + NCBITaxon:6722 + Cherax + + + + + + + + unknown + NCBITaxon:6723 + Cherax destructor + + + + + crayfish + unknown + NCBITaxon:6724 + Astacoidea + + + + + + + + + unknown + NCBITaxon:6725 + Cambaridae + + + + + + + + unknown + NCBITaxon:6726 + Procambarus + + + + + + + + red swamp crayfish + unknown + Procumbarus clarkii + NCBITaxon:6728 + Procambarus clarkii + + + + + short-tailed crabs + true crabs + unknown + NCBITaxon:6752 + Brachyura + + + + + + + + rock crabs + unknown + NCBITaxon:6753 + Cancridae + + + + + + + + unknown + NCBITaxon:6754 + Cancer + + + + + + + + edible crab + rock crab + unknown + NCBITaxon:6755 + Cancer pagurus + + + + + swimming crabs + unknown + NCBITaxon:6757 + Portunidae + + + + + + + + unknown + NCBITaxon:6758 + Carcinus + + + + + + + + common shore crab + green crab + unknown + NCBITaxon:6759 + Carcinus maenas + + + + + unknown + NCBITaxon:6774 + Portunoidea + + + + + + + + unknown + Rhipicephalus bursa Canestrini & Fanzago, 1878 + NCBITaxon:67831 + Rhipicephalus bursa + + + + + unknown + NCBITaxon:6820 + Peracarida + + + + + + + + + amphipods + beach hoppers, scuds and well shrimps + unknown + NCBITaxon:6821 + Amphipoda + + + + + + + + copepods + unknown + NCBITaxon:6830 + Copepoda + + + + + + + + unknown + NCBITaxon:6831 + Tigriopus + + + + + + + + tidepool copepod + unknown + Tigriopus californicus (Baker, 1912) + NCBITaxon:6832 + Tigriopus californicus + + + + + CFB/Chlorobi group + CFB/Green sulfur bacteria group + Cytophagales/Green sulfur bacteria group + unknown + NCBITaxon:68336 + Bacteroidetes/Chlorobi group + + + + + + + + + chelicerates + unknown + NCBITaxon:6843 + Chelicerata + + + + + + + + + unknown + horseshoe crabs + NCBITaxon:6844 + Merostomata + + + + + + + + unknown + NCBITaxon:6845 + Xiphosura + + + + + + + + unknown + NCBITaxon:6846 + Limulidae + + + + + + + + + unknown + NCBITaxon:6849 + Limulus + + + + + + + + Atlantic horseshoe crab + unknown + NCBITaxon:6850 + Limulus polyphemus + + + + + unknown + NCBITaxon:6851 + Tachypleus + + + + + + + + Thiobacteria + not Thiobacteria + not Thiobacteria Cavalier-Smith 2002 + unknown + NCBITaxon:68525 + delta/epsilon subdivisions + + + + + + + + + Chinese horseshoe crab + Japanese horseshoe crab + unknown + NCBITaxon:6853 + Tachypleus tridentatus + + + + + unknown + arachnids + NCBITaxon:6854 + Arachnida + + + + + + + + + + unknown + scorpions + NCBITaxon:6855 + Scorpiones + + + + + + + + + unknown + NCBITaxon:6856 + Buthidae + + + + + + + + + + + + + + + + unknown + NCBITaxon:6857 + Androctonus + + + + + + + + Sahara scorpion + unknown + NCBITaxon:6858 + Androctonus australis + + + + + 'Vibrio eltor' + Vibrio cholerae biovar El tor + Vibrio cholerae biovar eltor + Vibrio eltor + unknown + NCBITaxon:686 + Vibrio cholerae O1 biovar eltor + + + + + unknown + Buthotus + NCBITaxon:6862 + Hottentotta + + + + + + + + Buthotus judaicus + Hottentotta judaica + Hottentotta judaicus (Simon, 1872) + unknown + NCBITaxon:6863 + Hottentotta judaicus + + + + + unknown + NCBITaxon:6865 + Buthus + + + + + + + + common European scorpion + unknown + NCBITaxon:6868 + Buthus occitanus + + + + + + + + Tunisian scorpion + unknown + NCBITaxon:6871 + Buthus occitanus tunetanus + + + + + golden jackal + unknown + NCBITaxon:68724 + Canis aureus + + + + + fennec + fennec fox + unknown + Fennecus zerda + NCBITaxon:68732 + Vulpes zerda + + + + + unknown + NCBITaxon:6875 + Centruroides + + + + + + + + Mexican scorpion + unknown + Centruroides limpidus (Karsch, 1879) + NCBITaxon:6876 + Centruroides limpidus + + + + + + + + unknown + NCBITaxon:6886 + Tityus + + + + + + + + + + unknown + NCBITaxon:6891 + Orthochirus + + + + + + + + Central Asian scorpion + unknown + NCBITaxon:6892 + Orthochirus scrobiculosus + + + + + unknown + spiders + NCBITaxon:6893 + Araneae + + + + + + + + + Thermus group + unknown + Thermales Rainey and da Costa 2002 + NCBITaxon:68933 + Thermales + + + + + + + + mygalomorph spiders + mygalomorphs + unknown + Orthognatha + NCBITaxon:6894 + Mygalomorphae + + + + + + + + + + baboon spiders + bird spiders + tarantulas + unknown + Aviculariidae + NCBITaxon:6895 + Theraphosidae + + + + + + + + + + + + unknown + NCBITaxon:6896 + Aphonopelma + + + + + + + + unknown + Bacillus sp. (strain HIL-Y85/54728) + NCBITaxon:69002 + Bacillus sp. HIL-Y85/54728 + + + + + funnel-web tarantulas + unknown + NCBITaxon:6901 + Hexathelidae + + + + + + + + unknown + NCBITaxon:6902 + Atrax + + + + + + + + unknown + NCBITaxon:6903 + Atrax robustus + + + + + unknown + NCBITaxon:6905 + Araneomorphae + + + + + + + + + unknown + NCBITaxon:6914 + Nephila + + + + + + + + wandering spiders + unknown + NCBITaxon:6916 + Ctenidae + + + + + + + + unknown + Loxoscelidae + NCBITaxon:6919 + Sicariidae + + + + + + + + unknown + NCBITaxon:69195 + Brevicoryne + + + + + + + + cabbage aphid + unknown + NCBITaxon:69196 + Brevicoryne brassicae + + + + + unknown + NCBITaxon:6920 + Loxosceles + + + + + + + + unknown + NCBITaxon:6927 + Cupiennius + + + + + + + + unknown + NCBITaxon:6928 + Cupiennius salei + + + + + Speke's gazelle + unknown + Gazella speki + NCBITaxon:69307 + Gazella spekei + + + + + Acarina + mites and ticks + unknown + NCBITaxon:6933 + Acari + + + + + + + + unknown + NCBITaxon:6934 + Parasitiformes + + + + + + + + ticks + unknown + NCBITaxon:6935 + Ixodida + + + + + + + + hard ticks + hardbacked ticks + scale ticks + unknown + NCBITaxon:6939 + Ixodidae + + + + + + + + + + Fhipicephalus (Boophilus) + Rhipicephalus (Boophilus) + unknown + NCBITaxon:6940 + Boophilus + + + + + + + + cattle tick + southern cattle tick + Boophilus microplus + Boophilus microplus (Canestrini, 1888) + Rhipicephalus (Boophilus) microplus + Rhipicephalus microplus (Canestrini, 1888) + unknown + NCBITaxon:6941 + Rhipicephalus microplus + + + + + unknown + NCBITaxon:6942 + Amblyomma + + + + + + + + unknown + NCBITaxon:6944 + Ixodes + + + + + + + + + + black-legged tick + blacklegged tick + shoulder tick + unknown + NCBITaxon:6945 + Ixodes scapularis + + + + + 'Desulfuromonadales' + Desulfuromonas group + unknown + NCBITaxon:69541 + Desulfuromonadales + + + + + + + + unknown + NCBITaxon:69555 + Caenogastropoda + + + + + + + + Atelocerata + Tracheata + Uniramia + insects + unknown + NCBITaxon:6960 + Hexapoda + + + + + + + + unknown + NCBITaxon:6970 + Dictyoptera + + + + + + + + German cockroach family + unknown + Blattelidae + NCBITaxon:6971 + Blattellidae + + + + + + + + unknown + Blatella + NCBITaxon:6972 + Blattella + + + + + + + + German cockroach + unknown + Blatella germanica + NCBITaxon:6973 + Blattella germanica + + + + + American cockroach family + unknown + NCBITaxon:6974 + Blattidae + + + + + + + + unknown + NCBITaxon:6977 + Periplaneta + + + + + + + + American cockroach + unknown + NCBITaxon:6978 + Periplaneta americana + + + + + ovoviviparous cockroach family + unknown + NCBITaxon:6979 + Blaberidae + + + + + + + + unknown + NCBITaxon:6987 + Leucophaea + + + + + + + + Madeira cockroach + unknown + NCBITaxon:6988 + Leucophaea maderae + + + + + unknown + NCBITaxon:6989 + Nauphoeta + + + + + + + + cinereous cockroach + gray cockroach + unknown + NCBITaxon:6990 + Nauphoeta cinerea + + + + + unknown + Saltatoria + NCBITaxon:6993 + Orthoptera + + + + + + + + grasshoppers and locusts + unknown + grasshoppers + NCBITaxon:7001 + Caelifera + + + + + + + + unknown + NCBITaxon:70019 + Rana saharica + + + + + short-horned grasshoppers + unknown + NCBITaxon:7002 + Acrididae + + + + + + + + unknown + NCBITaxon:7003 + Locusta + + + + + + + + migratory locust + unknown + NCBITaxon:7004 + Locusta migratoria + + + + + unknown + NCBITaxon:70109 + Penicillium paxilli + + + + + cicadas + unknown + NCBITaxon:7033 + Cicadidae + + + + + + + + unknown + NCBITaxon:70336 + Buthoidea + + + + + + + + unknown + Vaejovoidea + NCBITaxon:70337 + Chactoidea + + + + + + + + unknown + beetles + NCBITaxon:7041 + Coleoptera + + + + + + + + fireflies + firefly beetles + unknown + NCBITaxon:7049 + Lampyridae + + + + + + + + + unknown + NCBITaxon:7050 + Luciola + + + + + + + + unknown + NCBITaxon:7053 + Photinus + + + + + + + + North American firefly + common eastern firefly + unknown + NCBITaxon:7054 + Photinus pyralis + + + + + lamellicorn beetles + scarab beetles + unknown + NCBITaxon:7055 + Scarabaeidae + + + + + + + + darkling ground beetles + long-jointed beetles + unknown + Lagriidae + NCBITaxon:7065 + Tenebrionidae + + + + + + + + unknown + NCBITaxon:7066 + Tenebrio + + + + + + + + yellow mealworm + unknown + NCBITaxon:7067 + Tenebrio molitor + + + + + unknown + Shewanella oneidensis Venkateswaran et al. 1999 + NCBITaxon:70863 + Shewanella oneidensis + + + + + + + + butterflies and moths + moths + unknown + NCBITaxon:7088 + Lepidoptera + + + + + + + + silkworm moths + unknown + NCBITaxon:7089 + Bombycidae + + + + + + + + unknown + NCBITaxon:7090 + Bombyx + + + + + + + + domestic silkworm + silk moth + silkworm + unknown + NCBITaxon:7091 + Bombyx mori + + + + + unknown + NCBITaxon:70910 + Acridomorpha + + + + + + + + honey bees + unknown + NCBITaxon:70987 + Apinae + + + + + + + + kissing bugs + unknown + NCBITaxon:70999 + Triatominae + + + + + + + + noctuid moths + owlet moths + unknown + NCBITaxon:7100 + Noctuidae + + + + + + + + + + unknown + NCBITaxon:7101 + Heliothis + + + + + + + + tobacco budworm + unknown + Helicoverpa virescens + NCBITaxon:7102 + Heliothis virescens + + + + + unknown + NCBITaxon:7106 + Spodoptera + + + + + + + + + fall armyworm + unknown + NCBITaxon:7108 + Spodoptera frugiperda + + + + + white, yellow and sulphur butterflies + unknown + NCBITaxon:7114 + Pieridae + + + + + + + + unknown + NCBITaxon:7115 + Pieris + + + + + + + + + cabbage butterfly + large white + white butterfly + unknown + NCBITaxon:7116 + Pieris brassicae + + + + + unknown + NCBITaxon:71193 + Elateroidea + + + + + + + + unknown + NCBITaxon:71239 + Cucurbitales + + + + + + + + Dicotyledoneae + Magnoliopsida + dicots + dicotyledons + eudicots + unknown + NCBITaxon:71240 + eudicotyledons + + + + + + + + + unknown + NCBITaxon:71241 + stem eudicotyledons + + + + + + + + Asteridae + unknown + NCBITaxon:71274 + asterids + + + + + + + + + + unknown + Rosidae + NCBITaxon:71275 + rosids + + + + + + + + + hawkmoths + unknown + NCBITaxon:7128 + Sphingidae + + + + + + + + unknown + NCBITaxon:7129 + Manduca + + + + + + + + Carolina sphinx + hornblower + tobacco hawkmoth + tobacco hornworm + tomato hornworm + unknown + NCBITaxon:7130 + Manduca sexta + + + + + snout moths + unknown + NCBITaxon:7135 + Pyralidae + + + + + + + + + unknown + NCBITaxon:7136 + Galleria + + + + + + + + Galleria mellonela + Galleria melonella + greater wax moth + unknown + NCBITaxon:7137 + Galleria mellonella + + + + + unknown + NCBITaxon:7139 + Tortricidae + + + + + + + + Penaeus (Fenneropenaeus) merguiensis + Penaeus merguiensis + unknown + NCBITaxon:71412 + Fenneropenaeus merguiensis + + + + + Penaeus (Farfantepenaeus) paulensis + Penaeus paulensis + pink shrimp + unknown + NCBITaxon:71413 + Farfantepenaeus paulensis + + + + + swallowtail butterflies + unknown + NCBITaxon:7143 + Papilionidae + + + + + + + + unknown + NCBITaxon:7145 + Papilio + + + + + + + + unknown + flies + NCBITaxon:7147 + Diptera + + + + + + + + + unknown + NCBITaxon:7148 + Nematocera + + + + + + + + + + nonbiting midges + unknown + NCBITaxon:7149 + Chironomidae + + + + + + + + unknown + NCBITaxon:7150 + Chironomus + + + + + + + + + unknown + NCBITaxon:71527 + Tenebrionoidea + + + + + + + + Chrysomeliformia + Phytophaga + unknown + NCBITaxon:71528 + Chrysomeloidea + + + + + + + + Chironomus (Camptochironomus) tentans + Chironomus tentans Fabricius, 1805 + unknown + NCBITaxon:7153 + Chironomus tentans + + + + + midge + unknown + Chironomus thummi (Kieffer, 1911) + NCBITaxon:7154 + Chironomus thummi + + + + + + + + unknown + NCBITaxon:7155 + Chironomus thummi thummi + + + + + mosquitos + unknown + NCBITaxon:7157 + Culicidae + + + + + + + + + unknown + NCBITaxon:7158 + Aedes + + + + + + + + yellow fever mosquito + unknown + Stegomyia aegypti + NCBITaxon:7159 + Aedes aegypti + + + + + unknown + NCBITaxon:7164 + Anopheles + + + + + + + + + African malaria mosquito + Anopheles gambiae sensu stricto + Anopheles gambia + Anopheles gambiae Giles, 1902 + unknown + NCBITaxon:7165 + Anopheles gambiae + + + + + + + + black fungus gnats + dark-winged fungus gnats + unknown + NCBITaxon:7184 + Sciaridae + + + + + + + + unknown + NCBITaxon:7185 + Rhynchosciara + + + + + + + + unknown + NCBITaxon:7186 + Rhynchosciara americana + + + + + unknown + NCBITaxon:71930 + Tricholoma giganteum + + + + + sandflies and mothflies + unknown + NCBITaxon:7197 + Psychodidae + + + + + + + + sand flies + sandflies + unknown + NCBITaxon:7198 + Phlebotominae + + + + + + + + + unknown + NCBITaxon:7199 + Lutzomyia + + + + + + + + unknown + NCBITaxon:7200 + Lutzomyia longipalpis + + + + + black porgy + black sea bream + Acanthopagrus schlegeli + Mylio macrocephalus + Sparus macrocephalus + unknown + NCBITaxon:72011 + Acanthopagrus schlegelii + + + + + unknown + NCBITaxon:72025 + Fabales + + + + + + + + unknown + NCBITaxon:7203 + Brachycera + + + + + + + + + unknown + NCBITaxon:72037 + Maxillopoda + + + + + + + + unknown + NCBITaxon:72041 + Eumalacostraca + + + + + + + + + deerflies + horseflies + horseflies and deerflies + unknown + NCBITaxon:7205 + Tabanidae + + + + + + + + unknown + NCBITaxon:7208 + Loa + + + + + + + + unknown + NCBITaxon:7209 + Loa loa + + + + + fruit flies + unknown + Trypetidae + NCBITaxon:7211 + Tephritidae + + + + + + + + unknown + NCBITaxon:7212 + Ceratitis + + + + + + + + Mediterranean fruit fly + unknown + NCBITaxon:7213 + Ceratitis capitata + + + + + pomace flies + unknown + NCBITaxon:7214 + Drosophilidae + + + + + + + + fruit flies + unknown + Drosophila Fallen, 1823 + NCBITaxon:7215 + Drosophila + + + + + + + + + + unknown + Drosophila annanassae + NCBITaxon:7217 + Drosophila ananassae + + + + + unknown + NCBITaxon:7220 + Drosophila erecta + + + + + unknown + NCBITaxon:7221 + Drosophila funebris + + + + + unknown + Drosophila hydei Sturtevant, 1921 + NCBITaxon:7224 + Drosophila hydei + + + + + unknown + Drosophila lebanonensis + NCBITaxon:7225 + Scaptodrosophila lebanonensis + + + + + unknown + NCBITaxon:7226 + Drosophila mauritiana + + + + + fruit fly + unknown + Drosophila melangaster + NCBITaxon:7227 + Drosophila melanogaster + + + + + Pseudomonaceae/Moraxellaceae group + Pseudomonadales Orla-Jensen 1921 + gamma-3 proteobacteria + unknown + NCBITaxon:72274 + Pseudomonadales + + + + + + + + + unknown + NCBITaxon:7229 + Drosophila miranda + + + + + 'Helicobacteraceae' + Helicobacter group + unknown + NCBITaxon:72293 + Helicobacteraceae + + + + + + + + + Campylobacter group + Campylobacteraceae Vandamme and De Ley 1991 + unknown + NCBITaxon:72294 + Campylobacteraceae + + + + + + + + unknown + NCBITaxon:7233 + Drosophila orena + + + + + unknown + NCBITaxon:7234 + Drosophila persimilis + + + + + unknown + NCBITaxon:7237 + Drosophila pseudoobscura + + + + + + + + unknown + Drosophila sechellia Tsacas and Bachli, 1981 + NCBITaxon:7238 + Drosophila sechellia + + + + + unknown + NCBITaxon:7240 + Drosophila simulans + + + + + unknown + NCBITaxon:7241 + Drosophila subobscura + + + + + unknown + NCBITaxon:7242 + Drosophila sp. + + + + + Drosophila teisseri + Drosophila teissieri Tsacas, 1971 + unknown + NCBITaxon:7243 + Drosophila teissieri + + + + + unknown + NCBITaxon:72430 + Cambarinae + + + + + + + + unknown + NCBITaxon:72432 + Delonix + + + + + + + + flametree + royal poinciana + unknown + Delonix regia (Bojer ex Hook.) Raf. + NCBITaxon:72433 + Delonix regia + + + + + Drosophila irilis + Drosophila virilis Sturtevant, 1916 + unknown + NCBITaxon:7244 + Drosophila virilis + + + + + unknown + NCBITaxon:7245 + Drosophila yakuba + + + + + unknown + Leonia Ruiz & Pav., 1799 + NCBITaxon:72464 + Leonia + + + + + + + + unknown + NCBITaxon:72495 + Dipetalogaster + + + + + + + + unknown + Dipetalogaster maxima + NCBITaxon:72496 + Dipetalogaster maximus + + + + + unknown + NCBITaxon:72530 + Chironomini + + + + + + + + unknown + NCBITaxon:72537 + Chironomus [NCBITaxon:72537] + + + + + + + + unknown + NCBITaxon:72549 + Oryctes + + + + + + + + rhinoceros beetle + unknown + NCBITaxon:72550 + Oryctes rhinoceros + + + + + unknown + Bacillus sp. (strain YM-1) + NCBITaxon:72579 + Bacillus sp. YM-1 + + + + + unknown + NCBITaxon:7260 + Drosophila willistoni + + + + + unknown + NCBITaxon:72985 + Corynascus + + + + + + + + unknown + NCBITaxon:73020 + Isochrysidales + + + + + + + + Liliales/Asparagales group + Liliiflorae + unknown + NCBITaxon:73496 + Asparagales + + + + + + + + unknown + NCBITaxon:7354 + Scaptodrosophila + + + + + + + + house flies + unknown + NCBITaxon:7366 + Muscidae + + + + + + + + blow flies + blow flly + blow-fly + blowflies + blowflly + bottle flies + unknown + NCBITaxon:7371 + Calliphoridae + + + + + + + + Lucillia + Phaenicia + unknown + NCBITaxon:7374 + Lucilia + + + + + + + + Australian sheep blowfly + greenbottle fly + unknown + NCBITaxon:7375 + Lucilia cuprina + + + + + flesh flies + unknown + NCBITaxon:7381 + Sarcophagidae + + + + + + + + unknown + NCBITaxon:7384 + Sarcophaga + + + + + + + + grey fleshfly + unknown + Neobellieria bullata + NCBITaxon:7385 + Sarcophaga bullata + + + + + hymenopterans + unknown + NCBITaxon:7399 + Hymenoptera + + + + + + + + wasps, ants and bees + unknown + wasps + NCBITaxon:7400 + Apocrita + + + + + + + + unknown + NCBITaxon:7434 + Aculeata + + + + + + + + + unknown + NCBITaxon:7435 + Scoliidae + + + + + + + + unknown + NCBITaxon:7436 + Megascolia + + + + + + + + garden dagger wasp + solitary wasp + unknown + NCBITaxon:7437 + Megascolia flavifrons + + + + + wasps + unknown + NCBITaxon:7438 + Vespidae + + + + + + + + + hornets and yellowjackets + true wasps + unknown + NCBITaxon:7439 + Vespinae + + + + + + + + unknown + Arthrobotrys dactyloides + NCBITaxon:74499 + Drechslerella dactyloides + + + + + unknown + NCBITaxon:7451 + Vespula + + + + + + + + unknown + Paravespula vulgaris + NCBITaxon:7454 + Vespula vulgaris + + + + + Prochlorococcus marinus MIT9313 + Prochlorococcus sp. MIT 9313 + Prochlorococcus sp. MIT9313 + unknown + NCBITaxon:74547 + Prochlorococcus marinus str. MIT 9313 + + + + + paper wasps + unknown + NCBITaxon:7455 + Polistinae + + + + + + + + + unknown + NCBITaxon:7456 + Polistes + + + + + + + + bumble bees and honey bees + unknown + NCBITaxon:7458 + Apidae + + + + + + + + unknown + NCBITaxon:7459 + Apis + + + + + + + + honey bee + honeybee + unknown + Apis mellifica + NCBITaxon:7460 + Apis mellifera + + + + + Chinook salmon + king salmon + Oncorhynchus tschawytscha + Oncorhynchus tshawytsha + unknown + NCBITaxon:74940 + Oncorhynchus tshawytscha + + + + + winged insects + unknown + NCBITaxon:7496 + Pterygota + + + + + + + + unknown + NCBITaxon:74970 + Haplogynae + + + + + + + + eight-eyed spiders + unknown + NCBITaxon:74971 + Entelegynae + + + + + + + + + unknown + NCBITaxon:74972 + Lycosoidea + + + + + + + + + unknown + NCBITaxon:74974 + Orbicularia + + + + + + + + unknown + NCBITaxon:74975 + Araneoidea + + + + + + + + unknown + Caulobacter Henrici and Johnson 1935 (Approved Lists 1980) emend. Abraham et al. 1999 + NCBITaxon:75 + Caulobacter + + + + + + + + unknown + bugs + NCBITaxon:7524 + Hemiptera + + + + + + + + + unknown + NCBITaxon:75301 + Goniopora tenuidens + + + + + centipede + unknown + centipedes + NCBITaxon:7540 + Chilopoda + + + + + + + + unknown + NCBITaxon:75546 + Scarabaeoidea + + + + + + + + unknown + Eucoccidiida + NCBITaxon:75739 + Eucoccidiorida + + + + + + + + unknown + echinoderms + NCBITaxon:7586 + Echinodermata + + + + + + + + unknown + NCBITaxon:7587 + Asterozoa + + + + + + + + sea stars + starfish + starfishes + unknown + NCBITaxon:7588 + Asteroidea + + + + + + + + unknown + NCBITaxon:7592 + Asterinidae + + + + + + + + unknown + Asterina pectinifera + NCBITaxon:7594 + Patiria pectinifera + + + + + unknown + NCBITaxon:75966 + Trebouxiophyceae + + + + + + + + unknown + NCBITaxon:75987 + Pachymedusa + + + + + + + + unknown + NCBITaxon:75988 + Pachymedusa dacnicolor + + + + + leaf frogs + unknown + NCBITaxon:75989 + Agalychnis + + + + + + + + blue-sided leaf frog + unknown + NCBITaxon:75990 + Agalychnis annae + + + + + unknown + NCBITaxon:76071 + Beloniformes + + + + + + + + unknown + Papilio bianor Cramer, 1777 + NCBITaxon:76199 + Papilio bianor + + + + + unknown + NCBITaxon:7624 + Echinozoa + + + + + + + + sea urchins + unknown + NCBITaxon:7625 + Echinoidea + + + + + + + + unknown + NCBITaxon:7638 + Euechinoidea + + + + + + + + unknown + NCBITaxon:7652 + Lytechinus + + + + + + + + green sea urchin + unknown + NCBITaxon:7654 + Lytechinus variegatus + + + + + Rickettsiales Gieszczykiewicz 1939 (Approved Lists 1980) emend. Brenner et al. 1993 + Rickettsiales Gieszczykiewicz 1939 (Approved Lists 1980) emend. Dumler et al. 2001 + alpha-1 proteobacteria + rickettsias + unknown + NCBITaxon:766 + Rickettsiales + + + + + + + + unknown + NCBITaxon:7664 + Strongylocentrotus + + + + + + + + purple sea urchin + purple urchin + unknown + NCBITaxon:7668 + Strongylocentrotus purpuratus + + + + + unknown + NCBITaxon:7674 + Echinacea + + + + + + + + + unknown + NCBITaxon:7675 + Echinoida + + + + + + + + unknown + Anaplasma Theiler 1910 (Approved Lists 1980) emend. Dumler et al. 2001 + NCBITaxon:768 + Anaplasma + + + + + + + + + unknown + NCBITaxon:76804 + Nidovirales + + + + + + + + unknown + Caulobacteraceae Henrici and Johnson 1935 + NCBITaxon:76892 + Caulobacteraceae + + + + + + + + unknown + NCBITaxon:76896 + Oxyhaloinae + + + + + + + + + unknown + NCBITaxon:76984 + Polistini + + + + + + + + unknown + NCBITaxon:76992 + Epiponini + + + + + + + + Anaplasma argentium + Anaplasma marginale Theiler 1910 + Anaplasma rossicum + Anaplasma theileri + unknown + NCBITaxon:770 + Anaplasma marginale + + + + + + + + + + + unknown + Periplanetinae + NCBITaxon:77099 + Blattinae + + + + + + + + unknown + chordates + NCBITaxon:7711 + Chordata + + + + + + + + + + Tunicata + tunicates + unknown + NCBITaxon:7712 + Urochordata + + + + + + + + + sea squirts + unknown + NCBITaxon:7713 + Ascidiacea + + + + + + + + + unknown + NCBITaxon:7716 + Phlebobranchia + + + + + + + + unknown + NCBITaxon:7717 + Cionidae + + + + + + + + unknown + NCBITaxon:7718 + Ciona + + + + + + + + + unknown + NCBITaxon:7719 + Ciona intestinalis + + + + + unknown + NCBITaxon:7720 + Stolidobranchia + + + + + + + + unknown + NCBITaxon:7727 + Pyuridae + + + + + + + + unknown + NCBITaxon:7728 + Halocynthia + + + + + + + + unknown + lancelets + NCBITaxon:7735 + Cephalochordata + + + + + + + + amphioxi + amphioxius + lancelets + unknown + NCBITaxon:7736 + Branchiostomidae + + + + + + + + unknown + NCBITaxon:7737 + Branchiostoma + + + + + + + + Japanese lancelet + unknown + NCBITaxon:7741 + Branchiostoma belcheri + + + + + unknown + vertebrates + NCBITaxon:7742 + Vertebrata + + + + + + + + + jdeegan + 2008-07-21T02:19:59Z + unknown + NCBITaxon:7746 + Petromyzontidae + + + + + Oryza coarctata Roxb. + Porteresia coarctata + Porteresia coarctata (Roxb.) Tateoka + unknown + NCBITaxon:77588 + Oryza coarctata + + + + + Burnetia + Coxiella + Coxiella (Philip 1943) Philip 1948 + unknown + NCBITaxon:776 + Coxiella + + + + + + + + Myxinoidea + hagfishes + unknown + NCBITaxon:7761 + Myxiniformes + + + + + + + + hagfishes + unknown + NCBITaxon:7762 + Myxinidae + + + + + + + + Atlantic hagfish + unknown + NCBITaxon:7769 + Myxine glutinosa + + + + + Coxiella burnetii (Derrick 1939) Philip 1948 + Coxiella burnetii8 + Rickettsia burneti + Rickettsia diaporica + unknown + NCBITaxon:777 + Coxiella burnetii + + + + + + + + jawed vertebrates + unknown + NCBITaxon:7776 + Gnathostomata + + + + + + + + + fishes + sharks + cartilaginous fishes + unknown + NCBITaxon:7777 + Chondrichthyes + + + + + + + + + elasmobranchs + unknown + sharks and rays + NCBITaxon:7778 + Elasmobranchii + + + + + + + + unknown + NCBITaxon:7786 + Torpedo + + + + + + + + + Pacific electric ray + unknown + Torpedo californiensis + NCBITaxon:7787 + Torpedo californica + + + + + marbled electric ray + unknown + Torpedo marmorata@ + NCBITaxon:7788 + Torpedo marmorata + + + + + unknown + NCBITaxon:7796 + Squalus + + + + + + + + spiny dogfish + unknown + NCBITaxon:7797 + Squalus acanthias + + + + + requiem sharks + unknown + NCBITaxon:7805 + Carcharhinidae + + + + + + + + unknown + NCBITaxon:7814 + Prionace + + + + + + + + blue shark + unknown + NCBITaxon:7815 + Prionace glauca + + + + + passion fruit + unknown + Passiflora edulis Sims + NCBITaxon:78168 + Passiflora edulis + + + + + cat sharks + unknown + NCBITaxon:7826 + Scyliorhinidae + + + + + + + + unknown + NCBITaxon:7829 + Scyliorhinus + + + + + + + + smaller spotted catshark + smaller spotted dogfish + spotted catshark + spotted dogfish + unknown + Scyliorhinus caniculus + NCBITaxon:7830 + Scyliorhinus canicula + + + + + houndsharks + unknown + NCBITaxon:7839 + Triakidae + + + + + + + + leopard sharks + unknown + NCBITaxon:7840 + Triakis + + + + + + + + mackerel sharks + unknown + NCBITaxon:7844 + Lamninae + + + + + + + + unknown + NCBITaxon:7848 + Lamna + + + + + + + + unknown + NCBITaxon:7849 + Lamna nasus + + + + + unknown + NCBITaxon:7850 + Alopiidae + + + + + + + + unknown + NCBITaxon:78536 + Euphyllophyta + + + + + + + + + Myceliophthora thermophila + Myceliopthora thermophila + Sporotrichum thermophile + Sporotrichum thermophilum + Thielavia heterothallica + unknown + NCBITaxon:78579 + Corynascus heterothallicus + + + + + unknown + NCBITaxon:7863 + Holocephali + + + + + + + + chimaeras + unknown + NCBITaxon:7864 + Chimaeriformes + + + + + + + + ratfishes + shortnose chimaeras + unknown + NCBITaxon:7869 + Chimaeridae + + + + + + + + unknown + NCBITaxon:7872 + Hydrolagus + + + + + + + + Pacific ratfish + spotted ratfish + unknown + NCBITaxon:7873 + Hydrolagus colliei + + + + + Choanichthyes + Dipneusti + Osteichthyes + fishes + lungfishes + dipnoans + unknown + NCBITaxon:7878 + Dipnoi + + + + + + + + Australian lungfishes + unknown + Ceratodidae + NCBITaxon:7889 + Ceratodontidae + + + + + + + + unknown + NCBITaxon:7890 + Neoceratodus + + + + + + + + Australian lungfish + unknown + Neoceratodus foresteri + NCBITaxon:7892 + Neoceratodus forsteri + + + + + Osteichthyes + bony fishes + fishes + ray-finned fishes + unknown + NCBITaxon:7898 + Actinopterygii + + + + + + + + unknown + NCBITaxon:7914 + Semionotiformes + + + + + + + + gars + unknown + NCBITaxon:7915 + Lepisosteidae + + + + + + + + unknown + Lepisosteous + NCBITaxon:7916 + Lepisosteus + + + + + + + + unknown + NCBITaxon:7921 + Amiiformes + + + + + + + + bowfins + unknown + NCBITaxon:7922 + Amiidae + + + + + + + + unknown + NCBITaxon:7923 + Amia + + + + + + + + bowfin + unknown + NCBITaxon:7924 + Amia calva + + + + + eels + unknown + NCBITaxon:7933 + Anguilliformes + + + + + + + + freshwater eels + unknown + NCBITaxon:7934 + Anguillidae + + + + + + + + unknown + NCBITaxon:7935 + Anguilla + + + + + + + + + European eel + European freshwater eel + unknown + NCBITaxon:7936 + Anguilla anguilla + + + + + Japanese eel + unknown + NCBITaxon:7937 + Anguilla japonica + + + + + unknown + NCBITaxon:7952 + Cypriniformes + + + + + + + + + unknown + NCBITaxon:7953 + Cyprinidae + + + + + + + + + unknown + Brachydanio + NCBITaxon:7954 + Danio + + + + + + + + leopard danio + zebra danio + zebra fish + zebrafish + Brachidanio rerio + Brachydanio rerio + Cyprinus rerio + Cyprinus rerio Hamilton, 1822 + Danio rerio (Hamilton, 1822) + unknown + NCBITaxon:7955 + Danio rerio + + + + + unknown + NCBITaxon:7956 + Carassius + + + + + + + + goldfish + unknown + NCBITaxon:7957 + Carassius auratus + + + + + unknown + NCBITaxon:7958 + Ctenopharyngodon + + + + + + + + grass carp + unknown + Ctenopharyngodon idellus + NCBITaxon:7959 + Ctenopharyngodon idella + + + + + unknown + NCBITaxon:7961 + Cyprinus + + + + + + + + carp + common carp + unknown + Cyrpinus carpio + NCBITaxon:7962 + Cyprinus carpio + + + + + giant freshwater prawn + unknown + NCBITaxon:79674 + Macrobrachium rosenbergii + + + + + unknown + Pseudomonas sp. (strain CF600) + NCBITaxon:79676 + Pseudomonas sp. CF600 + + + + + suckers + unknown + NCBITaxon:7968 + Catostomidae + + + + + + + + unknown + NCBITaxon:7969 + Catostomus + + + + + + + + white sucker + unknown + Catostomus commersoni + NCBITaxon:7971 + Catostomus commersonii + + + + + bed bug + unknown + NCBITaxon:79782 + Cimex lectularius + + + + + unknown + NCBITaxon:79889 + Bovine herpesvirus type 1.1 + + + + + + + + Methanobacterium thermoautotrophicum (strain Marburg / DSM 2133) + Methanobacterium thermoautotrophicum str. Marburg + unknown + NCBITaxon:79929 + Methanothermobacter marburgensis str. Marburg + + + + + catfishes + unknown + NCBITaxon:7995 + Siluriformes + + + + + + + + North American freshwater catfishes + bullhead catfishes + unknown + NCBITaxon:7996 + Ictaluridae + + + + + + + + unknown + NCBITaxon:7997 + Ictalurus + + + + + + + + channel catfish + unknown + NCBITaxon:7998 + Ictalurus punctatus + + + + + unknown + NCBITaxon:8002 + Gymnotiformes + + + + + + + + + electric knifefish + unknown + Gymnotoidei + NCBITaxon:8003 + Electrophoridae + + + + + + + + unknown + NCBITaxon:8004 + Electrophorus + + + + + + + + electric eel + electric knifefish + unknown + NCBITaxon:8005 + Electrophorus electricus + + + + + unknown + NCBITaxon:8006 + Salmoniformes + + + + + + + + salmonids + unknown + NCBITaxon:8015 + Salmonidae + + + + + + + + unknown + NCBITaxon:8016 + Oncorhynchus + + + + + + + + + + + + + humpback salmon + pink salmon + unknown + NCBITaxon:8017 + Oncorhynchus gorbuscha + + + + + chum salmon + unknown + NCBITaxon:8018 + Oncorhynchus keta + + + + + cherry salmon + masu salmon + unknown + NCBITaxon:8020 + Oncorhynchus masou + + + + + Onchorhynchus mykiss + Salmo gairdneri + Salmo gairdnerii + Salmo irideus + Salmo mykiss + rainbow trout + unknown + NCBITaxon:8022 + Oncorhynchus mykiss + + + + + unknown + NCBITaxon:8025 + Oncorhynchus sp. + + + + + toadfishes + unknown + NCBITaxon:8064 + Batrachoidiformes + + + + + + + + toadfishes + unknown + NCBITaxon:8065 + Batrachoididae + + + + + + + + unknown + NCBITaxon:8077 + Fundulus + + + + + + + + Atlantic killifish + killifish + mummichog + unknown + NCBITaxon:8078 + Fundulus heteroclitus + + + + + livebearers + unknown + NCBITaxon:8079 + Poeciliidae + + + + + + + + 'Sorangineae' + Sorangineae + unknown + NCBITaxon:80812 + Sorangineae + + + + + + + + unknown + NCBITaxon:8082 + Xiphophorus + + + + + + + + southern platyfish + unknown + NCBITaxon:8083 + Xiphophorus maculatus + + + + + 'Burkholderiales' + Burkholderia/Oxalobacter/Ralstonia group + unknown + NCBITaxon:80840 + Burkholderiales + + + + + + + + + + Comamonadaceae Willems et al. 1991 + beta-1 subgroup + unknown + NCBITaxon:80864 + Comamonadaceae + + + + + + + + + + unknown + Delftia Wen et al. 1999 + NCBITaxon:80865 + Delftia + + + + + + + + Comamonas acidivorans + Comamonas acidovorans + Comamonas acidovorans (den Dooren de Jong 1926) Tamaoka et al. 1987 emend. Willems et al. 1991 + Delftia acidovorans (den Dooren de Jong 1926) Wen et al. 1999 + Pseudomonas acidovorans + Pseudomonas acidovorans den Dooren de Jong 1926 (Approved Lists 1980) + Pseudomonas desmolytica + Pseudomonas indoloxidans + unknown + NCBITaxon:80866 + Delftia acidovorans + + + + + unknown + NCBITaxon:8087 + Cyprinodontoidei + + + + + + + + + medakas + ricefishes + unknown + Oryziatinae + NCBITaxon:8088 + Oryziinae + + + + + + + + unknown + NCBITaxon:8089 + Oryzias + + + + + + + + Japanese medaka + Japanese rice fish + medaka + unknown + NCBITaxon:8090 + Oryzias latipes + + + + + unknown + NCBITaxon:8111 + Perciformes + + + + + + + + + + + + + unknown + NCBITaxon:8112 + Percoidei + + + + + + + + + + + + cichlids + unknown + NCBITaxon:8113 + Cichlidae + + + + + + + + Oreochrmis mossambicus + Oreochromus mossambicus + Tilapia mossambica + Mozambique tilapia + unknown + NCBITaxon:8127 + Oreochromis mossambicus + + + + + Oreochromis nilonica + Oreochromis nilotica + Tilapia nilotica + Nile tilapia + unknown + NCBITaxon:8128 + Oreochromis niloticus + + + + + unknown + NCBITaxon:8139 + Oreochromis + + + + + + + + + environmental samples + unclassified prokaryotes + unknown + NCBITaxon:81490 + prokaryotic environmental samples + + + + + + + + unknown + Bacteroidaceae Pribram 1933 + NCBITaxon:815 + Bacteroidaceae + + + + + + + + unknown + NCBITaxon:8152 + Astatotilapia + + + + + + + + unknown + Haplochromis burtoni + NCBITaxon:8153 + Astatotilapia burtoni + + + + + Bacteroides Castellani and Chalmers 1919 (Approved Lists 1980) emend. Shah and Collins 1989 + Capsularis + Ristella + unknown + NCBITaxon:816 + Bacteroides + + + + + + + + + perches + unknown + NCBITaxon:8165 + Percidae + + + + + + + + unknown + NCBITaxon:8166 + Perca + + + + + + + + yellow perch + unknown + NCBITaxon:8167 + Perca flavescens + + + + + unknown + NCBITaxon:81689 + Archipini + + + + + + + + porgies + unknown + NCBITaxon:8169 + Sparidae + + + + + + + + + + + Bacillus fragilis + Bacillus fragilis Veillon and Zuber 1898 + Bacteroides fragili + Bacteroides fragilis (Veillon and Zuber 1898) Castellani and Chalmers 1919 + Bacteroides inaequalis + Bacteroides incommunis + Bacteroides uncatus + Fusiformis fragilis + Pseudobacterium fragilis + Pseudobacterium inaequalis + Pseudobacterium incommunis + Pseudobacterium uncatum + Ristella fragilis + Ristella incommunis + Ristella uncata + Sphaerophorus inaequalis + Sphaerophorus intermedius + unknown + NCBITaxon:817 + Bacteroides fragilis + + + + + unknown + NCBITaxon:8172 + Pagrus + + + + + + + + unknown + NCBITaxon:8174 + Sparus + + + + + + + + gilthead seabream + unknown + Sparus auratus + NCBITaxon:8175 + Sparus aurata + + + + + unknown + NCBITaxon:8176 + Acanthopagrus + + + + + + + + unknown + NCBITaxon:8192 + Zoarcoidei + + + + + + + + eelpouts + unknown + NCBITaxon:8193 + Zoarcidae + + + + + + + + unknown + NCBITaxon:81952 + Iguaninae + + + + + + + + unknown + NCBITaxon:8205 + Notothenioidei + + + + + + + + + + Antarctic cods + cod icefishes + unknown + NCBITaxon:8206 + Nototheniidae + + + + + + + + unknown + NCBITaxon:82095 + Aralia elata + + + + + unknown + Rhizobiaceae Conn 1938 + NCBITaxon:82115 + Rhizobiaceae + + + + + + + + unknown + NCBITaxon:8219 + Gobioidei + + + + + + + + gobies + unknown + NCBITaxon:8220 + Gobiidae + + + + + + + + unknown + NCBITaxon:8223 + Scombroidei + + + + + + + + + mackerels + tunas + unknown + NCBITaxon:8224 + Scombridae + + + + + + + + unknown + NCBITaxon:82316 + Lilium davidii + + + + + unknown + NCBITaxon:82365 + Verasper + + + + + + + + billfishes + unknown + NCBITaxon:8243 + Xiphiidae + + + + + + + + unknown + NCBITaxon:8246 + Labroidei + + + + + + + + unknown + NCBITaxon:8252 + Pleuronectiformes + + + + + + + + unknown + Paralichtys + NCBITaxon:8254 + Paralichthys + + + + + + + + Japanese flounder + bastard halibut + false halibut + olive flounder + Paralichthys olivaceous + Paralichtys olivaceus + unknown + NCBITaxon:8255 + Paralichthys olivaceus + + + + + righteye flounders + unknown + NCBITaxon:8256 + Pleuronectidae + + + + + + + + + small-eyed sphinx moth + unknown + NCBITaxon:82616 + Sphinginae + + + + + + + + + Pseudopleuronecta + Pseudopleuronectus + unknown + NCBITaxon:8264 + Pseudopleuronectes + + + + + + + + Pleuronectes americanus + Pseudopleuronecta americanus + Pseudopleuronectus americanus + winter flounder + unknown + NCBITaxon:8265 + Pseudopleuronectes americanus + + + + + unknown + HUMAN IMMUNODEFICIENCY VIRUS TYPE 1 (LW12.3 ISOLATE) + NCBITaxon:82834 + Human immunodeficiency virus type 1 lw12.3 isolate + + + + + unknown + NCBITaxon:8287 + Sarcopterygii + + + + + + + + + unknown + amphibians + NCBITaxon:8292 + Amphibia + + + + + + + + unknown + Urodela + NCBITaxon:8293 + Caudata + + + + + + + + mole salamanders + unknown + NCBITaxon:8294 + Ambystomatidae + + + + + + + + big salamanders + mole salamanders + unknown + NCBITaxon:8295 + Ambystoma + + + + + + + + axolotl + unknown + NCBITaxon:8296 + Ambystoma mexicanum + + + + + unknown + NCBITaxon:83130 + Cratylia + + + + + + + + + unknown + Cratylia floribunda + NCBITaxon:83131 + Cratylia argentea + + + + + newts + unknown + NCBITaxon:8314 + Salamandridae + + + + + + + + firebelly newts + unknown + NCBITaxon:8329 + Cynops + + + + + + + + Japanese common newt + Japanese firebelly newt + Cynops pyrogastor + Cynopus pyrrhogaster + Triturus pyrrhogaster + unknown + NCBITaxon:8330 + Cynops pyrrhogaster + + + + + unknown + Oryza meyeriana (Zoll. & Moritzi) Baill. + NCBITaxon:83307 + Oryza meyeriana + + + + + unknown + Oryza ridleyi Hook.f. + NCBITaxon:83308 + Oryza ridleyi + + + + + unknown + Oryza longiglumis Jansen + NCBITaxon:83309 + Oryza longiglumis + + + + + unknown + NCBITaxon:83321 + Apini + + + + + + + + unknown + Escherichia coli K-12 + NCBITaxon:83333 + Escherichia coli K12 + + + + + unknown + Escherichia coli 0157:H7 + NCBITaxon:83334 + Escherichia coli O157:H7 + + + + + unknown + NCBITaxon:83402 + Hoplocephalus + + + + + + + + anurans + frogs + frogs and toads + unknown + Salientia + NCBITaxon:8342 + Anura + + + + + + + + + + firebellied toads + firebelly toads + unknown + NCBITaxon:8344 + Bombina + + + + + + + + + + + fire-bellied toad + unknown + NCBITaxon:8345 + Bombina bombina + + + + + Oriental fire-bellied toad + unknown + NCBITaxon:8346 + Bombina orientalis + + + + + yellow-bellied toad + unknown + NCBITaxon:8348 + Bombina variegata + + + + + unknown + NCBITaxon:83494 + unclassified Comamonadaceae + + + + + + + + pipid frogs + tongueless frogs + unknown + NCBITaxon:8352 + Pipidae + + + + + + + + unknown + NCBITaxon:8353 + Xenopus + + + + + + + + + Kenyan clawed frog + Marasbit clawed frog + Xenopus borealis Parker, 1936 + Xenopus laevis borealis + unknown + NCBITaxon:8354 + Xenopus borealis + + + + + unknown + NCBITaxon:83541 + Mastigocladus laminosus + + + + + African clawed frog + clawed frog + unknown + Xenopus leavis + NCBITaxon:8355 + Xenopus laevis + + + + + unknown + Porphyromonas Shah and Collins 1988 emend. Willems and Collins 1995 + NCBITaxon:836 + Porphyromonas + + + + + + + + unknown + Siluraninae + NCBITaxon:8360 + Xenopodinae + + + + + + + + unknown + Xenopus tropicalis group + NCBITaxon:8363 + Silurana + + + + + + + + Silurana tropicalis + Xenopus (Silurana) tropicalis + western clawed frog + unknown + NCBITaxon:8364 + Xenopus tropicalis + + + + + Australian froglets + Australian frogs + unknown + NCBITaxon:8365 + Myobatrachidae + + + + + + + + Bacteroides gingivalis + Bacteroides gingivalis Coykendall et al. 1980 + Porphyromonas gingivalis (Coykendall et al. 1980) Shah and Collins 1988 + unknown + NCBITaxon:837 + Porphyromonas gingivalis + + + + + unknown + NCBITaxon:8370 + Litoria + + + + + + + + Neotropical frogs + southern frogs + unknown + NCBITaxon:8372 + Leptodactylidae + + + + + + + + + unknown + NCBITaxon:8375 + Lepidobatrachus + + + + + + + + unknown + NCBITaxon:8376 + Lepidobatrachus laevis + + + + + unknown + Prevotella Shah and Collins 1990 emend. Willems and Collins 1995 + NCBITaxon:838 + Prevotella + + + + + + + + true toads + unknown + NCBITaxon:8382 + Bufonidae + + + + + + + + unknown + Peltophryne + NCBITaxon:8383 + Bufo + + + + + + + + + unknown + NCBITaxon:83837 + Astragalus membranaceus + + + + + + + + cane toad + giant toad + marine toad + Bufo marinus (Linnaeus, 1758) + Chaunus marinus + Rana marina + unknown + NCBITaxon:8386 + Bufo marinus + + + + + leaf frogs + unknown + Phylomedusa + NCBITaxon:8392 + Phyllomedusa + + + + + + + + + + + two-colored leaf frog + unknown + Phyllomedusa bicolor (Boddaert, 1772) + NCBITaxon:8393 + Phyllomedusa bicolor + + + + + Phyllomedusa sp. PMP-2003 + Sauvage's leaf frog + painted-belly leaf frog + unknown + Phyllomedusa sauvagei + NCBITaxon:8395 + Phyllomedusa sauvagii + + + + + riparian frogs + true frogs + unknown + Raninae + NCBITaxon:8397 + Ranidae + + + + + + + + unknown + NCBITaxon:8399 + Rana + + + + + + + + + + + bullfrog + bullfrogs + Aquarana catesbeiana + Lithobates catesbeianus + Rana catesbiana + unknown + NCBITaxon:8400 + Rana catesbeiana + + + + + edible frog + unknown + Rana esculata + NCBITaxon:8401 + Rana esculenta + + + + + Japanese frog + unknown + NCBITaxon:8402 + Rana japonica + + + + + northern leopard frog + unknown + Pantherana pipiens + NCBITaxon:8404 + Rana pipiens + + + + + European common frog + common frog + unknown + NCBITaxon:8407 + Rana temporaria + + + + + unknown + NCBITaxon:8416 + Neobatrachia + + + + + + + + + unknown + Bufonoidea + NCBITaxon:8417 + Hyloidea + + + + + + + + + + + tree frogs + unknown + NCBITaxon:8418 + Hylidae + + + + + + + + + + unknown + Wolinella Tanner et al. 1981 + NCBITaxon:843 + Wolinella + + + + + + + + unknown + NCBITaxon:8430 + Archeobatrachia + + + + + + + + + unknown + NCBITaxon:8438 + Ascaphus + + + + + + + + American bell toad + tailed frog + Ascaphus truei californicus + Ascaphus truei truei + unknown + NCBITaxon:8439 + Ascaphus truei + + + + + Vibrio succinogenes + Vibrio succinogenes Wolin et al. 1961 (Approved Lists 1980) + Wolinella succinogenes (Wolin et al. 1961) Tanner et al. 1981 + Wolinella succinicigenes + unknown + NCBITaxon:844 + Wolinella succinogenes + + + + + sauropsids + unknown + NCBITaxon:8457 + Sauropsida + + + + + + + + + Synechococcus WH8102 + Synechococcus sp. WH8102 + unknown + NCBITaxon:84588 + Synechococcus sp. WH 8102 + + + + + Anapsida + Reptilia + Testudinata + reptiles + turtles + anapsid reptiles + unknown + NCBITaxon:8459 + Testudines + + + + + + + + hidden-necked turtles + unknown + NCBITaxon:8464 + Cryptodira + + + + + + + + + pond turtles + terrapins + unknown + Emydinae + NCBITaxon:8476 + Emydidae + + + + + + + + Fusibacterium + unknown + Fusobacterium Knorr 1922 + NCBITaxon:848 + Fusobacterium + + + + + + + + unknown + NCBITaxon:8486 + Testudinoidea + + + + + + + + unknown + NCBITaxon:8492 + Archosauria + + + + + + + + + Crocodilia + Crocodylia + Reptilia + crocodiles + reptiles + crocodilians + unknown + NCBITaxon:8493 + Crocodylidae + + + + + + + + unknown + NCBITaxon:8497 + Caiman + + + + + + + + Caiman crocodylus + Caiman sclerops + spectacled caiman + unknown + NCBITaxon:8499 + Caiman crocodilus + + + + + Bacillus mortiferus + Bacillus necroticus + Bacteroides freundii + Fusobacterium mortiferum (Harris 1901) Moore and Holdeman 1970 + Fusubacterium ridiculosum + Pseudobacterium freundii + Pseudobacterium mortiferum + Pseudobacterium necroticum + Spherophorus freundi + Spherophorus mortiferus + Spherophorus necroticus + Spherophorus ridiculosu + Spherophorus ridiculosus + Fusibacterium mortiferum + unknown + NCBITaxon:850 + Fusobacterium mortiferum + + + + + unknown + Actinobacteridae Stackebrandt et al. 1997 + NCBITaxon:85003 + Actinobacteridae + + + + + + + + Micrococcineae (Micrococceae Prevot 1961) emend. Stackebrandt et al. 1997. + Micrococcineae Stackebrandt et al. 1997 + unknown + NCBITaxon:85006 + Micrococcineae + + + + + + + + + unknown + Corynebacterineae Stackebrandt et al. 1997 + NCBITaxon:85007 + Corynebacterineae + + + + + + + + Propionicibacterineae + unknown + Propionibacterineae Rainey et al. 1997 + NCBITaxon:85009 + Propionibacterineae + + + + + + + + unknown + Pseudonocardineae Stackebrandt et al. 1997 + NCBITaxon:85010 + Pseudonocardineae + + + + + + + + Streptomycetes + Streptomycineae Rainey et al. 1997 + Streptomycetineae + unknown + NCBITaxon:85011 + Streptomycineae + + + + + + + + unknown + Microbacteriaceae Park et al. 1995 emend. Rainey et al. 1997 + NCBITaxon:85023 + Microbacteriaceae + + + + + + + + unknown + Nocardiaceae Castellani and Chalmers 1919 (Approved Lists 1980) emend. Rainey et al. 1997 + NCBITaxon:85025 + Nocardiaceae + + + + + + + + Reptilia + lizards + reptiles + lepidosaurs + unknown + NCBITaxon:8504 + Lepidosauria + + + + + + + + squamates + unknown + NCBITaxon:8509 + Squamata + + + + + + + + + iguanian lizards + unknown + Lacertilia + NCBITaxon:8511 + Iguania + + + + + + + + iguanid lizards + unknown + NCBITaxon:8515 + Iguanidae + + + + + + + + unknown + NCBITaxon:8516 + Iguana + + + + + + + + common iguana + unknown + NCBITaxon:8517 + Iguana iguana + + + + + whiptails + unknown + NCBITaxon:8530 + Teiidae + + + + + + + + unknown + NCBITaxon:85512 + Dicondylia + + + + + + + + unknown + Lacertilia + NCBITaxon:8560 + Gekkota + + + + + + + + unknown + NCBITaxon:85604 + Amphiesmenoptera + + + + + + + + geckos + unknown + NCBITaxon:8561 + Gekkonidae + + + + + + + + unknown + Gecko + NCBITaxon:8565 + Gekko + + + + + + + + unknown + NCBITaxon:85653 + Farfantepenaeus + + + + + + + + Ophidia + snakes + unknown + NCBITaxon:8570 + Serpentes + + + + + + + + colubrid snakes + unknown + NCBITaxon:8578 + Colubridae + + + + + + + + Blattoptera + roaches + cockroaches + unknown + NCBITaxon:85823 + Blattaria + + + + + + + + + + unknown + NCBITaxon:8602 + Elapidae + + + + + + + + + + unknown + NCBITaxon:8604 + Acanthophis + + + + + + + + + unknown + NCBITaxon:8617 + Dendroaspis + + + + + + + + eastern green mamba + unknown + NCBITaxon:8618 + Dendroaspis angusticeps + + + + + unknown + NCBITaxon:8638 + Naja + + + + + + + + + + unknown + NCBITaxon:8639 + Naja haje + + + + + + + + Egyptian cobra + unknown + NCBITaxon:8642 + Naja haje haje + + + + + Mozambique cobra + unknown + NCBITaxon:8644 + Naja mossambica + + + + + monocled cobra + unknown + Naja naja kaouthia + NCBITaxon:8649 + Naja kaouthia + + + + + unknown + NCBITaxon:86519 + Clavulariidae + + + + + + + + unknown + NCBITaxon:86520 + Clavularia + + + + + + + + unknown + NCBITaxon:86521 + Clavularia sp. + + + + + unknown + NCBITaxon:86595 + Zoanthidae + + + + + + + + unknown + NCBITaxon:86598 + Discosomatidae + + + + + + + + unknown + NCBITaxon:86599 + Discosoma + + + + + + + + unknown + NCBITaxon:86626 + Nynantheae + + + + + + + + unknown + NCBITaxon:8664 + Ophiophagus + + + + + + + + king cobra + unknown + Naja hannah + NCBITaxon:8665 + Ophiophagus hannah + + + + + unknown + NCBITaxon:86650 + Euglenales + + + + + + + + unknown + NCBITaxon:8666 + Oxyuranus + + + + + + + + + unknown + NCBITaxon:86661 + Bacillus cereus group + + + + + + + + + + Australian taipan + unknown + NCBITaxon:8667 + Oxyuranus scutellatus scutellatus + + + + + unknown + NCBITaxon:8668 + Oxyuranus scutellatus + + + + + + + + + unknown + NCBITaxon:8689 + Viperidae + + + + + + + + + vipers + unknown + NCBITaxon:8690 + Viperinae + + + + + + + + + + + unknown + NCBITaxon:8691 + Bitis + + + + + + + + African puff adder + puff adder + unknown + NCBITaxon:8692 + Bitis arietans + + + + + Levantine viper + unknown + Vipera lebetina + NCBITaxon:8709 + Macrovipera lebetina + + + + + pit vipers + unknown + NCBITaxon:8710 + Crotalinae + + + + + + + + + + + + + + + unknown + NCBITaxon:8711 + Agkistrodon + + + + + + + + + southern copperhead + unknown + NCBITaxon:8713 + Agkistrodon contortrix contortrix + + + + + unknown + NCBITaxon:8718 + Agkistrodon bilineatus + + + + + Desulfovibrio Kluyver and van Niel 1936 (Approved Lists 1980) emend. Loubinoux et al. 2002 + Sporovibrio + unknown + NCBITaxon:872 + Desulfovibrio + + + + + + + + + unknown + NCBITaxon:8720 + Agkistrodon contortrix + + + + + + + + unknown + NCBITaxon:8721 + Bothrops + + + + + + + + + + + Queimada jararaca + island jararaca + unknown + NCBITaxon:8723 + Bothrops insularis + + + + + jararaca + unknown + NCBITaxon:8724 + Bothrops jararaca + + + + + jararacussu + unknown + NCBITaxon:8726 + Bothrops jararacussu + + + + + unknown + NCBITaxon:8728 + Crotalus + + + + + + + + + + cascabel + tropical rattlesnake + unknown + NCBITaxon:8731 + Crotalus durissus + + + + + + + + South American rattlesnake + cascabel + tropical rattlesnake + unknown + NCBITaxon:8732 + Crotalus durissus terrificus + + + + + red diamond rattlesnake + unknown + NCBITaxon:8735 + Crotalus ruber + + + + + + + + red diamond rattlesnake + unknown + NCBITaxon:8736 + Crotalus ruber ruber + + + + + western rattlesnake + unknown + NCBITaxon:8739 + Crotalus viridis + + + + + + + + prairie rattlesnake + unknown + NCBITaxon:8742 + Crotalus viridis viridis + + + + + unknown + NCBITaxon:8751 + Lachesis + + + + + + + + + bushmaster + unknown + Lachesis mutus + NCBITaxon:8752 + Lachesis muta + + + + + + + + bushmaster + unknown + NCBITaxon:8753 + Lachesis muta muta + + + + + Bacillus desulfuricans + Desulfovibrio desulfuricans (Beijerinck 1895) Kluyver and van Niel 1936 + Microspira desulfuricans + Spirillum desulfuricans + Vibrio cholinicus + unknown + NCBITaxon:876 + Desulfovibrio desulfuricans + + + + + unknown + NCBITaxon:8764 + Trimeresurus + + + + + + + + striped red mullet + unknown + NCBITaxon:87757 + Mullus surmuletus + + + + + unknown + birds + NCBITaxon:8782 + Aves + + + + + + + + + unknown + NCBITaxon:8783 + Palaeognathae + + + + + + + + ostriches + unknown + NCBITaxon:8798 + Struthioniformes + + + + + + + + unknown + NCBITaxon:8799 + Struthionidae + + + + + + + + unknown + NCBITaxon:8800 + Struthio + + + + + + + + ostrich + unknown + NCBITaxon:8801 + Struthio camelus + + + + + unknown + Lachesis muta stenophrys + NCBITaxon:88085 + Lachesis stenophrys + + + + + sakishima habu + unknown + Trimeresurus elegans + NCBITaxon:88086 + Protobothrops elegans + + + + + habu + unknown + Protobothrops flavoviridis + NCBITaxon:88087 + Trimeresurus flavoviridis + + + + + unknown + Desulfovibrio vulgaris Postgate and Campbell 1966 + NCBITaxon:881 + Desulfovibrio vulgaris + + + + + + + + Desulfovibrio vulgaris (STRAIN HILDENBOROUGH) + Desulfovibrio vulgaris Hildenborough + Desulfovibrio vulgaris subsp. vulgaris (strain Hildenborough) + Desulfovibrio vulgaris vulgaris (strain Hildenborough) + unknown + NCBITaxon:882 + Desulfovibrio vulgaris subsp. vulgaris str. Hildenborough + + + + + unknown + NCBITaxon:8825 + Neognathae + + + + + + + + + + + + unknown + NCBITaxon:8826 + Anseriformes + + + + + + + + waterfowl + unknown + NCBITaxon:8830 + Anatidae + + + + + + + + + + + ducks + unknown + NCBITaxon:8835 + Anas + + + + + + + + + crested duck + unknown + Lophonetta specularioides + NCBITaxon:8836 + Anas specularioides + + + + + duck + mallard + mallard duck + mallard ducks + Anas domesticus + Anas platyrhynchus + unknown + NCBITaxon:8839 + Anas platyrhynchos + + + + + geese + unknown + NCBITaxon:8842 + Anser + + + + + + + + domestic goose + graylag goose + unknown + NCBITaxon:8843 + Anser anser + + + + + + + + western graylag goose + unknown + NCBITaxon:8844 + Anser anser anser + + + + + unknown + NCBITaxon:8854 + Cairina + + + + + + + + Muscovy duck + unknown + NCBITaxon:8855 + Cairina moschata + + + + + unknown + NCBITaxon:88770 + Panarthropoda + + + + + + + + unknown + anamorphic Sporidiobolaceae + NCBITaxon:89013 + mitosporic Sporidiobolales + + + + + + + + unknown + Silicibacter pomeroyi Gonzalez et al. 2003 + NCBITaxon:89184 + Silicibacter pomeroyi + + + + + + + + unknown + NCBITaxon:8929 + Columbiformes + + + + + + + + unknown + NCBITaxon:8930 + Columbidae + + + + + + + + unknown + NCBITaxon:8931 + Columba + + + + + + + + domestic pigeon + rock pigeon + unknown + NCBITaxon:8932 + Columba livia + + + + + domestic water buffalo + river buffalo + water buffalo + Bubalis arnee bubalis + Bubalis bubalis + Bubalus arnee + Bubalus arnee bubalis + Bubalus bubalus + unknown + NCBITaxon:89462 + Bubalus bubalis + + + + + unknown + NCBITaxon:89593 + Craniata + + + + + + + + + unknown + NCBITaxon:8976 + Galliformes + + + + + + + + unknown + Buchnera aphidicola Munson et al. 1991 + NCBITaxon:9 + Buchnera aphidicola + + + + + + + + turkeys + unknown + NCBITaxon:9005 + Phasianidae + + + + + + + + + unknown + NCBITaxon:9030 + Gallus + + + + + + + + bantam + chicken + chickens + Gallus domesticus + Gallus gallus domesticus + unknown + NCBITaxon:9031 + Gallus gallus + + + + + unknown + NCBITaxon:9072 + Phasianinae + + + + + + + + + unknown + NCBITaxon:9090 + Coturnix + + + + + + + + + common quail + unknown + NCBITaxon:9091 + Coturnix coturnix + + + + + 'Staphylococcaceae' + Staphylococcus group + unknown + NCBITaxon:90964 + Staphylococcaceae + + + + + + + + unknown + NCBITaxon:9102 + Meleagris + + + + + + + + common turkey + turkey + wild turkey + unknown + NCBITaxon:9103 + Meleagris gallopavo + + + + + 'Bacilli' + Bacillus/Lactobacillus/Streptococcus group + unknown + NCBITaxon:91061 + Bacilli + + + + + + + + + unknown + NCBITaxon:9126 + Passeriformes + + + + + + + + + + 'Enterobacteriales' + Enterobacteriaceae and related endosymbionts + Enterobacteriaceae group + enterobacteria + gamma-3 proteobacteria + unknown + NCBITaxon:91347 + Enterobacteriales + + + + + + + + whales, hippos, ruminants, pigs, camels etc. + unknown + NCBITaxon:91561 + Cetartiodactyla + + + + + + + + + + + + starlings + unknown + NCBITaxon:9170 + Sturnidae + + + + + + + + unknown + NCBITaxon:9171 + Sturnus + + + + + + + + common starling + starling + unknown + NCBITaxon:9172 + Sturnus vulgaris + + + + + babblers + unknown + NCBITaxon:9173 + Timaliidae + + + + + + + + unknown + NCBITaxon:9174 + Pomatostomus + + + + + + + + CABYV + unknown + NCBITaxon:91753 + Cucurbit aphid-borne yellows virus + + + + + unknown + NCBITaxon:9180 + Pomatostomus halli + + + + + unknown + core eudicots + NCBITaxon:91827 + core eudicotyledons + + + + + + + + + + + unknown + NCBITaxon:91835 + eurosids I + + + + + + + + + + + + unknown + NCBITaxon:91836 + eurosids II + + + + + + + + + unknown + euasterids II + NCBITaxon:91882 + campanulids + + + + + + + + + unknown + euasterids I + NCBITaxon:91888 + lamiids + + + + + + + + + + unknown + NCBITaxon:92169 + Talitridae + + + + + + + + unknown + NCBITaxon:92170 + Orchestia + + + + + + + + unknown + NCBITaxon:92171 + Orchestia cavimana + + + + + unknown + NCBITaxon:9223 + Psittaciformes + + + + + + + + parrot + parrots + unknown + NCBITaxon:9224 + Psittacidae + + + + + + + + unknown + NCBITaxon:92524 + Asellus + + + + + + + + unknown + NCBITaxon:92525 + Asellus aquaticus + + + + + unknown + NCBITaxon:9254 + Prototheria + + + + + + + + egg-laying mammals + unknown + monotremes + NCBITaxon:9255 + Monotremata + + + + + + + + unknown + NCBITaxon:9256 + Ornithorhynchidae + + + + + + + + unknown + Ornythorhynchus + NCBITaxon:9257 + Ornithorhynchus + + + + + + + + duck-billed platypus + duckbill platypus + platypus + unknown + Ornythorhynchus anatinus + NCBITaxon:9258 + Ornithorhynchus anatinus + + + + + unknown + NCBITaxon:92621 + Acridoidea + + + + + + + + Marsupialia + marsupials + unknown + NCBITaxon:9263 + Metatheria + + + + + + + + + American opossums + opossums + unknown + NCBITaxon:9265 + Didelphidae + + + + + + + + unknown + NCBITaxon:92860 + Pleosporales + + + + + + + + + unknown + NCBITaxon:9307 + Macropodidae + + + + + + + + unknown + NCBITaxon:9312 + Macropus + + + + + + + + + tammar wallaby + unknown + NCBITaxon:9315 + Macropus eugenii + + + + + eastern gray kangaroo + unknown + NCBITaxon:9317 + Macropus giganteus + + + + + possums and cuscuses + unknown + NCBITaxon:9335 + Phalangeridae + + + + + + + + brush-tailed possums + unknown + NCBITaxon:9336 + Trichosurus + + + + + + + + common brush-tailed possum + silver-gray brushtail possum + Trichosurus vulpecular + Tricosurus vulpecular + unknown + NCBITaxon:9337 + Trichosurus vulpecula + + + + + eutherian mammals + placental mammals + placentals + unknown + Placentalia + NCBITaxon:9347 + Eutheria + + + + + + + + + lynx spiders + unknown + NCBITaxon:93704 + Oxyopidae + + + + + + + + unknown + NCBITaxon:93705 + Oxyopes + + + + + + + + tree shrews + unknown + NCBITaxon:9392 + Scandentia + + + + + + + + tree shrews + unknown + NCBITaxon:9393 + Tupaiidae + + + + + + + + Japanese quail + unknown + Coturnix coturnix japonica + NCBITaxon:93934 + Coturnix japonica + + + + + unknown + NCBITaxon:9394 + Tupaia + + + + + + + + + + common tree shrew + tree shrew + unknown + NCBITaxon:9395 + Tupaia glis + + + + + bats + unknown + NCBITaxon:9397 + Chiroptera + + + + + + + + unknown + NCBITaxon:94020 + RTA clade + + + + + + + + + Anaplasmataceae Philip 1957 (Approved Lists 1980) emend. Dumler et al. 2001 + Ehrlichiae + unknown + NCBITaxon:942 + Anaplasmataceae + + + + + + + + + + Cowdria + Cowdria Moshkovski 1947 + Donatienella + Ehrlichia (subgen. Cowdria) + Ehrlichia Moshkovski 1945 (Approved Lists 1980) emend. Dumler et al. 2001 + Kurlovia + Nicollea + Rickettsia (subgen. Ehrlichia) + unknown + NCBITaxon:943 + Ehrlichia + + + + + + + + common bats + vespertilionid bats + unknown + NCBITaxon:9431 + Vespertilionidae + + + + + + + + unknown + Miniopteris + NCBITaxon:9432 + Miniopterus + + + + + + + + Schreibers' long-fingered bat + Schreibers's long-fingered bat + Miniopteris schreibersi + Miniopteros schreibersi + Miniopterus schreibersi + unknown + NCBITaxon:9433 + Miniopterus schreibersii + + + + + Primata + primates + primate + unknown + NCBITaxon:9443 + Primates + + + + + + + + + Ehrlichia chaffeensis Anderson et al. 1992 emend. Dumler et al. 2001 + Ehrlichia chaffensis + unknown + NCBITaxon:945 + Ehrlichia chaffeensis + + + + + + + + Halomebacteria + Halomebacteria Cavalier-Smith 2002 + Methanosarcinales Boone et al. 2002 + unknown + NCBITaxon:94695 + Methanosarcinales + + + + + + + + tarsiers + unknown + NCBITaxon:9475 + Tarsiidae + + + + + + + + tarsier + unknown + NCBITaxon:9476 + Tarsius + + + + + + + + + Horsfield's tarsier + Western tarsier + unknown + NCBITaxon:9477 + Tarsius bancanus + + + + + Philippine tarsier + unknown + NCBITaxon:9478 + Tarsius syrichta + + + + + New World monkeys + monkey + monkeys + unknown + NCBITaxon:9479 + Platyrrhini + + + + + + + + + + Anaplasma phagocytophila + Anaplasma phagocytophilum corrig. (Foggie 1949) Dumler et al. 2001 + Cytoecetes bovis + Cytoecetes phagocytophila + Ehrlichia equi + Ehrlichia equi Lewis et al. 1988 + Ehrlichia phagocytophila + Ehrlichia phagocytophila (Foggie 1949) Philip 1962 (Approved Lists 1980) + Ehrlichia sp. 'HGE agent' + HGE agent + Rickettsia phagocytophila + Rickettsia phagocytophila ovis + human granulocytic Ehrlichia + agent of human granulocytic ehrlichiosis + unknown + NCBITaxon:948 + Anaplasma phagocytophilum + + + + + + + + Callithricidae + Callitrichidae + marmosets and tamarins + unknown + NCBITaxon:9480 + Callitrichinae + + + + + + + + + unknown + Cebuella + NCBITaxon:9481 + Callithrix + + + + + + + + common marmoset + white ear-tufted marmoset + white-tufted-ear marmoset + unknown + Callithrix jacchus jacchus + NCBITaxon:9483 + Callithrix jacchus + + + + + unknown + NCBITaxon:9486 + Saguinus + + + + + + + + cotton-top tamarin + unknown + Sanguinus oedipus + NCBITaxon:9490 + Saguinus oedipus + + + + + unknown + NCBITaxon:9498 + Cebidae + + + + + + + + + + night monkeys + unknown + NCBITaxon:9504 + Aotus + + + + + + + + + + + + + douroucouli + night monkey + northern night monkey + owl monkey + unknown + NCBITaxon:9505 + Aotus trivirgatus + + + + + unknown + NCBITaxon:9506 + Ateles + + + + + + + + Ehrlichia sennetsu + Ehrlichia sennetsu (Misao and Kobayashi 1956) Ristic and Huxsoll 1984 + Neorickettsia sennetsu (Misao and Kobayashi 1956) Dumler et al. 2001 + Rickettsia sennetsu + Rickettsia sennetsu Misao and Kobayashi 1956 (Approved Lists 1980) + unknown + NCBITaxon:951 + Neorickettsia sennetsu + + + + + + + + spider monkey + unknown + NCBITaxon:9511 + Ateles sp. + + + + + capuchin monkeys + unknown + NCBITaxon:9513 + Cebus + + + + + + + + + brown pale-fronted capuchin + pale-fronted capuchin + white-fronted capuchin + unknown + NCBITaxon:9514 + Cebus albifrons + + + + + black-capped capuchin + brown capuchin + brown-capped capuchin + unknown + NCBITaxon:9515 + Cebus apella + + + + + unknown + NCBITaxon:95178 + Heliothinae + + + + + + + + unknown + NCBITaxon:95182 + Amphipyrinae + + + + + + + + squirrel monkeys + unknown + Siamiri + NCBITaxon:9520 + Saimiri + + + + + + + + South American squirrel monkey + common squirrel monkey + unknown + NCBITaxon:9521 + Saimiri sciureus + + + + + unknown + NCBITaxon:95225 + Lobosea + + + + + + + + unknown + NCBITaxon:95244 + Hadeninae + + + + + + + + unknown + NCBITaxon:9526 + Catarrhini + + + + + + + + + Old World monkeys + monkey + monkeys + unknown + NCBITaxon:9527 + Cercopithecidae + + + + + + + + + unknown + NCBITaxon:9528 + Cercopithecinae + + + + + + + + + + + + + + + unknown + NCBITaxon:9529 + Cercocebus + + + + + + + + + red-capped mangabey + red-crowned mangabey + white-collared mangabey + unknown + NCBITaxon:9530 + Cercocebus torquatus + + + + + + + + sooty mangabey + unknown + Cercocebus atys + NCBITaxon:9531 + Cercocebus torquatus atys + + + + + Tana river mangabey + unknown + NCBITaxon:9532 + Cercocebus galeritus + + + + + African green monkey + African green monkeys + green monkey + grivet + savanah monkey + vervet monkey + Cercopithecus aethiops + Ceropithecus aethiops + unknown + NCBITaxon:9534 + Chlorocebus aethiops + + + + + unknown + NCBITaxon:9537 + Erythrocebus + + + + + + + + hussar + patas monkey + red guenon + unknown + Cercopithecus patas + NCBITaxon:9538 + Erythrocebus patas + + + + + macaques + unknown + NCBITaxon:9539 + Macaca + + + + + + + + + + + + + + bear macaque + stump-tailed macaque + unknown + NCBITaxon:9540 + Macaca arctoides + + + + + crab eating macaque + crab-eating macaque + cynomolgus monkey + cynomolgus monkeys + long-tailed macaque + Macaca cynomolgus + Macaca irus + unknown + NCBITaxon:9541 + Macaca fascicularis + + + + + Japanese macaque + Japanese monkey + unknown + NCBITaxon:9542 + Macaca fuscata + + + + + + + + Japanese macaque + unknown + NCBITaxon:9543 + Macaca fuscata fuscata + + + + + rhesus macaque + rhesus macaques + rhesus monkey + rhesus monkeys + unknown + NCBITaxon:9544 + Macaca mulatta + + + + + pig-tailed macaque + pigtail macaque + pigtail monkey + unknown + NCBITaxon:9545 + Macaca nemestrina + + + + + bonnet macaque + unknown + NCBITaxon:9548 + Macaca radiata + + + + + baboons + unknown + NCBITaxon:9554 + Papio + + + + + + + + + + Doguera baboon + Kenya baboon + olive baboon + Anubis baboon + Papio cynocephalus anubis + Papio doguera + Papio hamadryas anubis + Papio hamadryas doguera + unknown + NCBITaxon:9555 + Papio anubis + + + + + yellow baboon + unknown + Papio hamadryas cynocephalus + NCBITaxon:9556 + Papio cynocephalus + + + + + Papio hamadryas subsp. + baboon + hamadryas baboon + red baboon + western baboon + unknown + sacred baboon + NCBITaxon:9557 + Papio hamadryas + + + + + unknown + NCBITaxon:95619 + Pseudomonas sp. M1 + + + + + unknown + NCBITaxon:9564 + Theropithecus + + + + + + + + gelada baboon + unknown + NCBITaxon:9565 + Theropithecus gelada + + + + + forest baboons + unknown + NCBITaxon:9567 + Mandrillus + + + + + + + + drill + unknown + Papio leucophaeus + NCBITaxon:9568 + Mandrillus leucophaeus + + + + + unknown + NCBITaxon:9569 + Colobinae + + + + + + + + + + black-and-white colobus monkeys + unknown + NCBITaxon:9570 + Colobus + + + + + + + + gibbons + lesser apes + unknown + NCBITaxon:9577 + Hylobatidae + + + + + + + + + + unknown + NCBITaxon:9578 + Hylobates + + + + + + + + + common gibbon + white-handed gibbon + unknown + NCBITaxon:9580 + Hylobates lar + + + + + gibbon + unknown + NCBITaxon:9581 + Hylobates sp. + + + + + siamang + unknown + Hylobates syndactylus + NCBITaxon:9590 + Symphalangus syndactylus + + + + + unknown + NCBITaxon:9592 + Gorilla + + + + + + + + gorilla + unknown + NCBITaxon:9593 + Gorilla gorilla + + + + + + + + + highland gorilla + mountain gorilla + unknown + Gorilla beringei beringei + NCBITaxon:9594 + Gorilla gorilla beringei + + + + + Western lowland gorilla + lowland gorilla + unknown + NCBITaxon:9595 + Gorilla gorilla gorilla + + + + + chimpanzees + unknown + NCBITaxon:9596 + Pan + + + + + + + + + bonobo + pygmy chimpanzee + unknown + NCBITaxon:9597 + Pan paniscus + + + + + chimpanzee + unknown + Chimpansee troglodytes + NCBITaxon:9598 + Pan troglodytes + + + + + unknown + NCBITaxon:9599 + Pongo + + + + + + + + orang-utan + orangutan + unknown + NCBITaxon:9600 + Pongo pygmaeus + + + + + + + + + Pongo abelii + Pongo pygmaeus abeli + Sumatran orangutan + unknown + NCBITaxon:9601 + Pongo pygmaeus abelii + + + + + Bornean orangutan + unknown + NCBITaxon:9602 + Pongo pygmaeus pygmaeus + + + + + great apes + unknown + Pongidae + NCBITaxon:9604 + Hominidae + + + + + + + + + unknown + NCBITaxon:9605 + Homo + + + + + + + + human + man + unknown + NCBITaxon:9606 + Homo sapiens + + + + + dog, coyote, wolf, fox + unknown + NCBITaxon:9608 + Canidae + + + + + + + + + unknown + NCBITaxon:9611 + Canis + + + + + + + + + + gray wolf + unknown + NCBITaxon:9612 + Canis lupus + + + + + + + + dog + dogs + Canis canis + Canis domesticus + Canis familiaris + unknown + NCBITaxon:9615 + Canis lupus familiaris + + + + + unknown + Fennecus + NCBITaxon:9625 + Vulpes + + + + + + + + bears + unknown + NCBITaxon:9632 + Ursidae + + + + + + + + unknown + NCBITaxon:9639 + Ursus + + + + + + + + brown bear + grizzly bear + unknown + NCBITaxon:9644 + Ursus arctos + + + + + unknown + Malva L. + NCBITaxon:96479 + Malva + + + + + + + + weasel, mink, badger, martens and others + unknown + NCBITaxon:9655 + Mustelidae + + + + + + + + unknown + NCBITaxon:9665 + Mustela + + + + + + + + American mink + mink + unknown + Mustela vision + NCBITaxon:9667 + Mustela vison + + + + + cat family + unknown + NCBITaxon:9681 + Felidae + + + + + + + + unknown + NCBITaxon:9682 + Felis + + + + + + + + cat + cats + domestic cat + Felis domesticus + Felis silvestris catus + unknown + NCBITaxon:9685 + Felis catus + + + + + crawling seals + earless seals + seal + seals + true seals + unknown + NCBITaxon:9709 + Phocidae + + + + + + + + + unknown + NCBITaxon:9710 + Halichoerus + + + + + + + + gray seal + grey seal + unknown + NCBITaxon:9711 + Halichoerus grypus + + + + + unknown + NCBITaxon:9714 + Mirounga + + + + + + + + southern elephant seal + unknown + NCBITaxon:9715 + Mirounga leonina + + + + + whale + whales + whales, dolphins, and porpoises + unknown + NCBITaxon:9721 + Cetacea + + + + + + + + tooth whales + unknown + NCBITaxon:9722 + Odontoceti + + + + + + + + unknown + Dryopteris crassirhizoma Nakai + NCBITaxon:97234 + Dryopteris crassirhizoma + + + + + European field pansy + unknown + Viola arvensis Murray + NCBITaxon:97415 + Viola arvensis + + + + + unknown + Viola odorata L. + NCBITaxon:97441 + Viola odorata + + + + + unknown + NCBITaxon:9747 + Monodontidae + + + + + + + + unknown + NCBITaxon:9748 + Delphinapterus + + + + + + + + beluga + beluga whale + white whale + unknown + NCBITaxon:9749 + Delphinapterus leucas + + + + + 'Bacteroidetes' + BCF group + Bacteroides-Cytophaga-Flexibacter group + CFB group + CFB group bacteria + Cytophaga-Flexibacter-Bacteroides phylum + unknown + NCBITaxon:976 + Bacteroidetes + + + + + + + + odd-toed ungulates + unknown + NCBITaxon:9787 + Perissodactyla + + + + + + + + + horses + unknown + NCBITaxon:9788 + Equidae + + + + + + + + unknown + NCBITaxon:9789 + Equus + + + + + + + + + African ass + African wild ass + Somali wild ass + ass + domestic ass + donkey + unknown + Equus africanus + NCBITaxon:9793 + Equus asinus + + + + + domestic horse + equine + horse + Equus ferus caballus + Equus przewalskii f. caballus + Equus przewalskii forma caballus + unknown + NCBITaxon:9796 + Equus caballus + + + + + rhinoceroses + unknown + NCBITaxon:9803 + Rhinocerotidae + + + + + + + + + unknown + NCBITaxon:9806 + Ceratotherium + + + + + + + + square-lipped rhinoceros + white rhinoceros + unknown + NCBITaxon:9807 + Ceratotherium simum + + + + + unknown + NCBITaxon:9808 + Rhinoceros + + + + + + + + Indian rhinoceros + greater Indian rhinoceros + unknown + NCBITaxon:9809 + Rhinoceros unicornis + + + + + boars + pigs + unknown + NCBITaxon:9821 + Suidae + + + + + + + + unknown + NCBITaxon:9822 + Sus + + + + + + + + pig + pigs + swine + wild boar + unknown + NCBITaxon:9823 + Sus scrofa + + + + + unknown + Tellinacea + NCBITaxon:98297 + Tellinoidea + + + + + + + + unknown + NCBITaxon:98302 + Ostreoidea + + + + + + + + Artiodactyla + Suiformes + unknown + NCBITaxon:9831 + Hippopotamidae + + + + + + + + unknown + NCBITaxon:9832 + Hippopotamus + + + + + + + + hippopotamus + unknown + NCBITaxon:9833 + Hippopotamus amphibius + + + + + unknown + Artiodactyla + NCBITaxon:9834 + Tylopoda + + + + + + + + unknown + NCBITaxon:9835 + Camelidae + + + + + + + + + unknown + NCBITaxon:9836 + Camelus + + + + + + + + Arabian camel + camel + dromedaries + dromedary + one-humped camel + unknown + NCBITaxon:9838 + Camelus dromedarius + + + + + unknown + NCBITaxon:9839 + Lama + + + + + + + + Lama guanicoe glama + Llama glama + llama + unknown + NCBITaxon:9844 + Lama glama + + + + + unknown + Artiodactyla + NCBITaxon:9845 + Ruminantia + + + + + + + + deer + unknown + NCBITaxon:9850 + Cervidae + + + + + + + + + unknown + NCBITaxon:9859 + Cervus + + + + + + + + elk + red deer + unknown + NCBITaxon:9860 + Cervus elaphus + + + + + unknown + Buchnera aphidicola (subsp. Schizaphis graminum) + NCBITaxon:98794 + Buchnera aphidicola (Schizaphis graminum) + + + + + unknown + NCBITaxon:9885 + Muntiacus + + + + + + + + Muntiacus muntiak vaginalis + Muntiacus muntjac vaginalis + unknown + NCBITaxon:9887 + Muntiacus muntjak vaginalis + + + + + Indian muntjac + muntjak + unknown + NCBITaxon:9888 + Muntiacus muntjak + + + + + + + + unknown + Fugu pardalis + NCBITaxon:98921 + Takifugu pardalis + + + + + unknown + NCBITaxon:98923 + Verasper moseri + + + + + unknown + NCBITaxon:9895 + Bovidae + + + + + + + + + + + unknown + NCBITaxon:9900 + Bison + + + + + + + + + European bison + unknown + Bison bison bonasus + NCBITaxon:9902 + Bison bonasus + + + + + oxen, cattle + unknown + NCBITaxon:9903 + Bos + + + + + + + + + + + + gaur + seladang + unknown + Bos gauris + NCBITaxon:9904 + Bos gaurus + + + + + banteng + wild banteng + unknown + Bos banteng + NCBITaxon:9906 + Bos javanicus + + + + + bovine + cattle + cow + domestic cattle + domestic cow + Bos Tauurus + Bos bovis + Bos primigenius taurus + unknown + NCBITaxon:9913 + Bos taurus + + + + + zebu + zebu cattle + Bos primigenius indicus + Bos taurus indicus + unknown + NCBITaxon:9915 + Bos indicus + + + + + unknown + NCBITaxon:9916 + Boselaphus + + + + + + + + nilgai + unknown + NCBITaxon:9917 + Boselaphus tragocamelus + + + + + unknown + NCBITaxon:9918 + Bubalus + + + + + + + + unknown + NCBITaxon:9922 + Capra + + + + + + + + domestic goat + goat + goats + Capra aegagrus hircus + Carpa hircus + South African angora goat + unknown + NCBITaxon:9925 + Capra hircus + + + + + unknown + NCBITaxon:9928 + Damaliscus + + + + + + + + unknown + Damaliscus dorcas + NCBITaxon:9931 + Damaliscus pygargus + + + + + + + + unknown + NCBITaxon:9933 + Gazella + + + + + + + + unknown + NCBITaxon:9935 + Ovis + + + + + + + + domestic sheep + lambs + sheep + wild sheep + Ovis ammon aries + Ovis orientalis + Ovis orientalis aries + Ovis ovis + unknown + NCBITaxon:9940 + Ovis aries + + + + + unknown + NCBITaxon:9948 + Antilopinae + + + + + + + + + unknown + NCBITaxon:99571 + Dioclea guianensis + + + + + unknown + NCBITaxon:9963 + Caprinae + + + + + + + + + unknown + NCBITaxon:9975 + Lagomorpha + + + + + + + + rabbits and hares + unknown + NCBITaxon:9979 + Leporidae + + + + + + + + + unknown + NCBITaxon:9984 + Oryctolagus + + + + + + + + European rabbit + Japanese white rabbit + domestic rabbit + rabbit + rabbits + unknown + Lepus cuniculus + NCBITaxon:9986 + Oryctolagus cuniculus + + + + + unknown + NCBITaxon:9987 + Sylvilagus + + + + + + + + eastern cottontail + unknown + NCBITaxon:9988 + Sylvilagus floridanus + + + + + unknown + NCBITaxon:99883 + Tetraodon nigroviridis + + + + + unknown + rodents + NCBITaxon:9989 + Rodentia + + + + + + + + + unknown + NCBITaxon:9991 + Sciurinae + + + + + + + + unknown + NCBITaxon:9992 + Marmota + + + + + + + + unknown + NCBITaxon:99929 + Piromyces equi + + + + + woodchuck + woodchucks + unknown + Marmata monax + NCBITaxon:9995 + Marmota monax + + + + + unknown + NCBITaxon:9996 + Spermophilus + + + + + + + + Jennifer I Deegan + 2009-08-10T10:46:43Z + union_terms + NCBITaxon_Union:0000000 + Viridiplantae or Bacteria + + + + + + + + + + + + The union of the taxa Viridiplantae and Cyanobacteria. + Jennifer Deegan + 2008-07-16T03:33:38Z + union_terms + NCBITaxon_Union:0000002 + Viridiplantae or Cyanobacteria + + + + + + + + + + + + jdeegan + 2008-07-21T02:13:01Z + union_terms + NCBITaxon_Union:0000003 + Myxininae or Petromyzontidae + + + + + + + + + + + + jdeegan + 2008-07-24T11:56:07Z + union_terms + NCBITaxon_Union:0000004 + Prokaryota + + + + + + + + + + + + Jennifer Deegan + 2008-07-24T04:15:25Z + Invertebrata + union_terms + NCBITaxon_Union:0000005 + Nematoda or Protostomia + + + + + + + + + + + + jdeegan + 2008-08-14T10:45:59Z + union_terms + NCBITaxon_Union:0000006 + Viridiplantae or Archaea or Bacteria + + + + + + + + + + + + + Jennifer I Deegan + 2009-08-10T10:46:43Z + union_terms + NCBITaxon_Union:0000007 + Viridiplantae or Bacteria or Euglenozoa + + + + + + + + + + + + + Jennifer I Deegan + 2009-08-10T10:46:43Z + union_terms + NCBITaxon_Union:0000008 + Viridiplantae or Euglenozoa + + + + + + + + + + + + Jennifer Deegan + 2008-07-24T04:15:25Z + union_terms + NCBITaxon_Union:0000020 + Fungi or Bacteria + + + + + + + + + + + + Jennifer I Deegan + 2009-08-10T10:46:43Z + union_terms + NCBITaxon_Union:0000021 + Viridiplantae or Bacteria or Euglenozoa or Archaea + + + + + + + + + + + + + + union_terms + NCBITaxon_Union:0000022 + Fungi or Dictyostelium + + + + + + + + + + + + union_terms + NCBITaxon_Union:0000023 + Fungi or Bacteria or Archaea + + + + + + + + + + + + + unknown + NCBITaxon:class + class + + + + + unknown + NCBITaxon:family + family + + + + + unknown + NCBITaxon:genus + genus + + + + + unknown + NCBITaxon:infraclass + infraclass + + + + + unknown + NCBITaxon:infraorder + infraorder + + + + + unknown + NCBITaxon:kingdom + kingdom + + + + + unknown + NCBITaxon:order + order + + + + + unknown + NCBITaxon:parvorder + parvorder + + + + + unknown + NCBITaxon:phylum + phylum + + + + + unknown + NCBITaxon:species + species + + + + + unknown + NCBITaxon:subclass + subclass + + + + + unknown + NCBITaxon:subfamily + subfamily + + + + + unknown + NCBITaxon:subgenus + subgenus + + + + + unknown + NCBITaxon:suborder + suborder + + + + + unknown + NCBITaxon:subphylum + subphylum + + + + + unknown + NCBITaxon:subspecies + subspecies + + + + + unknown + NCBITaxon:subtribe + subtribe + + + + + unknown + NCBITaxon:superclass + superclass + + + + + unknown + NCBITaxon:superfamily + superfamily + + + + + unknown + NCBITaxon:superkingdom + superkingdom + + + + + unknown + NCBITaxon:superorder + superorder + + + + + unknown + NCBITaxon:superphylum + superphylum + + + + + unknown + NCBITaxon:tribe + tribe + + + + + unknown + NCBITaxon:varietas + varietas + + + + + unknown + NCBITaxon:species_group + species group + + + + + unknown + NCBITaxon:species_subgroup + species subgroup + + + + + A level of depth within a species taxonomic tree + unknown + NCBITaxon:taxonomic_rank + This is an abstract class for use with the NCBI taxonomy to name the depth of the node within the tree. The link between the node term and the rank is only visible if you are using an obo 1.3 aware browser/editor; otherwise this can be ignored + taxonomic_rank + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A metadata relation between a class and its taxonomic rank (eg species, family) + has_rank + This is an abstract class for use with the NCBI taxonomy to name the depth of the node within the tree. The link between the node term and the rank is only visible if you are using an obo 1.3 aware browser/editor; otherwise this can be ignored + has_rank + + + + + + The union of the taxa Viridiplantae and Cyanobacteria. + + + + + + Invertebrata + + + diff --git a/tutorial/robot-tutorial-1/index.html b/tutorial/robot-tutorial-1/index.html new file mode 100644 index 000000000..1a5da35cf --- /dev/null +++ b/tutorial/robot-tutorial-1/index.html @@ -0,0 +1,3990 @@ + + + + + + + + + + + + + + + + + + + + + + + + ROBOT Mini-Tutorial 1 - Convert, Extract and Template - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            ROBOT Mini-Tutorial 1: Convert, Extract and Template

                            +

                            This tutorial covers three ROBOT commands:

                            +
                              +
                            • Convert
                            • +
                            • Extract
                            • +
                            • Template
                            • +
                            +

                            Before starting this tutorial, either:

                            + +

                            We will be using the files from the Ontologies 101 Tutorial. +In your terminal, navigate to the repository that you cloned and then into the BDK14_exercises folder.

                            +

                            Convert

                            +

                            So far, we have been saving our ontologies in Protege using the default RDF/XML syntax, but there are many flavors of OWL. +We will discuss each of these serializations in more detail during the class session, but ROBOT supports the following:

                            +
                              +
                            • owl - RDF/XML
                            • +
                            • owx - OWL/XML
                            • +
                            • ttl - Turtle
                            • +
                            • obo - OBO Format
                            • +
                            • ofn - OWL Functional
                            • +
                            • omn - OWL Manchester
                            • +
                            • json - obographs JSON
                            • +
                            +

                            Let's Try It!

                            +

                            Navigate to the basic-subclass/ folder. Open chromosome-parts.owl in your text editor and you will see it's in RDF/XML format. +We're going to take this file and convert it to Turtle (ttl) serialization. Return to your terminal and enter the following command:

                            +
                            robot convert --input chromosome-parts.owl --format ttl --output chromosome-parts.ttl
                            +
                            +

                            ROBOT convert is smart about detecting formats, so since the output file ends with .ttl, the --format ttl parameter isn't really required. +If you wanted to use a different file ending, say .owl, you will need to include the format flag to force ROBOT to write Turtle.

                            +

                            Now open chromosome-parts.ttl in your text editor and see what's changed! +RDF/XML and Turtle are very different serializations, but the actual data that is contained in these two files is exactly the same.

                            +

                            On Your Own

                            +
                              +
                            1. Convert chromosome-parts.owl into the following formats: obo (OBO Format), ofn (OWL Functional), and omn (OWL Manchester).
                            2. +
                            3. Open each file and take a minute to scroll through (we don't expect you to be able to read these, they're mostly meant for computers!)
                            4. +
                            5. Why do you think we need these different serializations? What do you think the purpose of OWL Manchester vs. RDF/XML is?
                            6. +
                            +
                            +

                            Extract

                            +

                            Sometimes we only want to browse or share a subset of an ontology, especially with some of the larger OBO Foundry ontologies. +There are two main methods for creating subsets:

                            +
                              +
                            • MIREOT
                            • +
                            • SLME
                            • +
                            +

                            Right now, we will use use MIREOT and talk more about SLME in our class session. +MIREOT makes sure that you have the minimal amount of information you need to reuse an existing ontology term. +It allows us to extract a small portion of the class hierarchy by specifying upper and lower boundaries, which you will see in the example below. +We need to know the identifiers (as CURIEs) of the terms that we want to set as our boundaries.

                            +

                            Let's Try It!

                            +

                            Open chromosome-parts.owl in Protege and open the Class hierarchy. We are going to create a subset relevant to the term "chromosome". +First, we will find the CURIE of our desired term. Search for "chromosome" and find the "id" annotation property. This will be our lower term. +Right now, we won't set an upper boundary. That means this subset will go all the way up to the top-level ancestor of "chromosome".

                            +

                            Return to your terminal and enter the following command (where the --lower-term is the CURIE that we just found):

                            +
                            robot extract --method MIREOT --input chromosome-parts.owl --lower-term GO:0005694 --output chromosome-full.owl
                            +
                            +

                            Now open chromosome-full.owl in Protege and open the Class hierarchy. When you open the "cellular_component" node, you'll notice that most of the terms are gone! +Both "organelle" and "intracellular part" remain because they are in the path between "chromosome" and the top-level "cellular_component". +Keep clicking down and you'll find "chromosome" at the very bottom. +Since "chromosome" has two named parents, both of those parents are included, which is why we ended up with "organelle" and "intracellular part".

                            +

                            Now let's try it with an upper term. This time, we want "organelle" to be the upper boundary. Find the CURIE for "organelle".

                            +

                            Return to your terminal and enter the following command (where the --upper-term is the new CURIE we just found):

                            +
                            robot extract --method MIREOT \
                            +  --input chromosome-parts.owl \
                            +  --lower-term GO:0005694 \
                            +  --upper-term GO:0043226 \
                            +  --output chromosome.owl
                            +
                            +

                            Open chromosome.owl and again return to the Class hierarchy. This time, we see "organelle" directly below owl:Thing. +"intracellular part" is also now missing because it does not fall under "organelle".

                            +

                            On Your Own

                            +
                              +
                            1. Play with different upper- and lower-level terms to create different subsets
                            2. +
                            3. Compare the terms that are in the subsets to the terms in the original chromosome-parts.owl file.
                            4. +
                            5. What is missing from the terms in the subsets? What has been included as our "minimal" information?
                            6. +
                            +
                            +

                            Template

                            +

                            Most of the knowledge encapsulated in ontologies comes from domain experts. +Often, these domain experts are not computer scientists and are not familiar with the command line. +Luckily, most domain experts are familiar with spreadsheets!

                            +

                            ROBOT provides a way to convert spreadsheets into OWL ontologies using template strings. We'll get more into these during the class session, but if you want to get a head start, they are all documented here. +Essentially, the first row of a ROBOT template is a human-readable header. The second row is the ROBOT template string. +Each row below that represents an entity to be created in the output ontology. We can create new entities by giving them new IDs, but we can also reference existing entities just by label. +For now, we're going to create a new, small ontology with new terms using a template.

                            +

                            Let's Try It!

                            +

                            Download (or copy/paste) the animals.tsv file and move it to the basic-subclass/ folder (or whatever folder you would like to work in; we will not be using any of the Ontology 101 files anymore). +This contains the following data:

                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            CURIELabelParentComment
                            IDLABELSC %A rdfs:comment
                            obo:0000001animalAny animal in the world.
                            obo:0000002canineanimalA member of the genus Canis.
                            obo:0000003felineanimalA member of the genus Felis.
                            +

                            In the first column, we use the special ID keyword to say that this is our term's unique identifier. +The second column contains the LABEL keyword which is a shortcut for the rdfs:label annotation property. +The third column uses the SC keyword to state that this column will be a subclass statement. The % sign is replaced by the value in the cell. +We'll talk more about this keyword and the % symbol during the class session. +Finally, the last column begins with A to denote that this will be an annotation, and then is followed by the annotation property we're using.

                            +

                            Just looking at the template, you can begin to predict what a class hierarchy using these terms would look like in an ontology. We can turn this into reality!

                            +

                            In your terminal, enter the following command:

                            +
                            robot template --template animals.tsv --output animals.owl
                            +
                            +

                            Note that in this command, we don't use the --input parameter. That parameter is reserved for input ontologies, and we are not using one right now. More on this later.

                            +

                            Open animals.owl in Protege, and you'll be able to see the class hierarchy we defined in the template as an actual structure.

                            +

                            Now let's make another small ontology that reuses some terms from our animals.owl file. Download (or copy/paste) animals2.tsv into the same folder. +This contains the following:

                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            CURIELabelParentComment
                            IDLABELSC %A rdfs:comment
                            obo:0000004dogcanineA member of the subspecies Canis lupus familiaris.
                            obo:0000005catfelineA member of the species Felis catus.
                            +

                            You'll notice that we are referencing two terms from our other spreadsheet in this one.

                            +

                            In your terminal, enter the following command:

                            +
                            robot template --input animals.owl --template animals2.tsv --output animals2.owl
                            +
                            +

                            This time, we did use the --input parameter and provided the animals ontology we just created. +This allows us to use any term in the animals.owl file in our animals2.tsv template and ROBOT will know what we're talking about.

                            +

                            Go ahead and open animals2.owl in Protege. What's missing? The parent classes for "dog" and "cat" don't have labels, and the "animal" term is missing entirely. +This is because, even though ROBOT knew about these classes, we didn't ask for the original ontology to be included in the output, so no axioms from that ontology can be found in this newly-created one. +Next week, we'll learn about combining ontologies with the Merge command.

                            +

                            For now, let's add the original animals.owl file as an import:

                            +
                              +
                            1. Go to the "Active ontology" tab and find the "Imported ontologies" section at the bottom
                            2. +
                            3. Click the + next to "Direct imports"
                            4. +
                            5. Select "Import an ontology contained in a local file" and click Continue
                            6. +
                            7. Browse for the path to animals.owl, click Continue, and then click Finish
                            8. +
                            +

                            Protégé will now load animals.owl as an import. When you return to the Entities tab, you'll see all those upper-level terms. Note the difference in how the terms are displayed in the class hierarchy.

                            +

                            On Your Own

                            +
                              +
                            1. Try adding another class or two to the animals.tsv template and regenerating animals.owl.
                            2. +
                            3. Can you create your own template?
                            4. +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/robot-tutorial-2/index.html b/tutorial/robot-tutorial-2/index.html new file mode 100644 index 000000000..250b3ea0a --- /dev/null +++ b/tutorial/robot-tutorial-2/index.html @@ -0,0 +1,3911 @@ + + + + + + + + + + + + + + + + + + + + + + + + ROBOT Mini-Tutorial 2 - Annotate, Merge, Reason and Diff - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            ROBOT Tutorial 2: Annotate, Merge, Reason and Diff

                            +

                            In week 6, we got some hands-on experience with ROBOT using convert, extract, and template. This week, we will learn four new ROBOT commands:

                            + +

                            The goal of these and previous commands is to build up to creating an ontology release workflow.

                            +

                            Before starting this tutorial, either:

                            + +

                            To start, we will be working in the same folder as the first ROBOT Mini-Tutorial. Navigate to this folder in your terminal and list the contents of the current directory by running ls. You should see catalog-v001.xml listed as one of these files. We want to delete this so that we can fix the ontology IRI problem we ran into last week! Before going any further with this tutorial, do this by running either del catalog-v001.xml for Windows or rm catalog-v001.xml if you're using Docker, MacOS, or other Linux system.

                            +
                            +

                            Annotate

                            +

                            The annotate command allows you to attach metadata to your ontology in the form of IRIs and ontology annotations. Like the annotations on a term, ontology annotations help users to understand how they can use the ontology.

                            +

                            Ontology IRIs

                            +

                            As we discussed during previous parts of the course, ontology IRIs are very important! We saw how importing an ontology without an IRI into another ontology without an IRI can cause some problems in the catalog-v001.xml file. We're going to fix that problem by giving IRIs to both our animals.owl and animals2.owl files.

                            +

                            Let's start with animals.owl:

                            +
                            robot annotate --input animals.owl \
                            +  --ontology-iri http://example.com/animals.owl \
                            +  --output animals.owl
                            +
                            +

                            You'll notice we gave the same file name as the input file; we're just updating our previous file so we don't need to do this in a separate OWL file.

                            +

                            On your own, give animals2.owl the ontology IRI http://example.com/animals2.owl. Remember that, in reality, we always want our ontology IRIs to be resolvable, so these would be pretty bad IRIs for an actual ontology.

                            +

                            Let's fix our import statement now. Open animals2.owl in Protégé and go to the Entities tab. You'll see that even though we still have the import statement in the Active ontology tab, the top-level terms are no longer labeled. Since we changed the ontology IRI, Protégé can no longer resolve our local file (because the catalog-v001.xml file was not updated). Go back to the Active ontology tab and click the X to the right of our original import. Then, re-add animals.owl as an import using the same steps as last time. When you return to the Entities tab, you'll once again see the labels of the top-level terms.

                            +

                            Version IRIs

                            +

                            When we release our ontologies, we want to make sure to include a version IRI. Like the ontology IRI, this should always resolve to the version of the ontology at the time of the release. For clarity, we usually use dates in our version IRIs in the OBO Foundry. That way, you know when you navigate to a specific version IRI, that's what the ontology looked like on that date. (Note: edit files don't usually have version IRIs as they are always changing, and we don't expect to be able to point to a stable version)

                            +

                            While you can add a version IRI in Protégé, if you're trying to create an automated release workflow, this is a manual step you don't want to have to include. Keeping it in your release workflow also makes sure that the verion IRIs are consistent (we'll see how to do this with make later). For now, let's add a version IRI to animals.owl (feel free to replace the 2021-05-20 with today's date):

                            +
                            robot annotate --input animals.owl \
                            +  --version-iri http://example.com/animals/2021-05-20/animals.owl \
                            +  --output animals.owl
                            +
                            +

                            Let's break down this version IRI. We have the host (http://example.com/) followed by our ontology's namespace (animals). Next, we provided the date in the format of YYYY-MM-DD. Finally, we have the name of the file. This is standard for OBO Foundry, except with a different host. For example, you can find a release of OBI from April 6, 2021 at http://purl.obolibrary.org/obo/obi/2021-04-06/obi.owl. In this case, the host is http://purl.obolibrary.org/obo/. Of course, you may see different patterns in non-OBO-Foundry ontologies, but they should always resolve (hopefully!).

                            +

                            Go ahead and open or reload animals.owl in Protege. You'll see in the Active Ontology tab that now both the ontology IRI and version IRI fields are filled out.

                            +

                            Ontology Annotations

                            +

                            In addition to ontology and version IRIs, you may also want to add some other metadata to your ontology. For example, when we were introduced to report, we added a description to the ontology to fix one of the report problems. The three ontology annotations that are required by the OBO Foundry are:

                            +
                              +
                            • Title (dc11:title)
                            • +
                            • License (dc:license)
                            • +
                            • Description (dc11:description)
                            • +
                            +

                            These three annotation properties all come from the Dublin Core, but they have slightly different namespaces. This is because DC is split into two parts: the /terms/ and /elements/1.1/ namespaces. Just remember to double check that you're using the correct namespace. If you click on the DC link, you can find the complete list of DC terms in their respective namespaces.

                            +

                            ROBOT contains some built-in prefixes, which can be found here. The prefix dc: corresponds to the /terms/ namespace and dc11: to /elements/1.1/. You may see different prefixes used (for example, /terms/ is sometimes dcterms: or just terms:), but the full namespace is what really matters as long as the prefix is defined somewhere.

                            +

                            Let's go ahead and add a title and description to our animals.owl file. We'll do this using the --annotation option, which expects two arguments: (1) the CURIE of the annotation property, (2) the value of the annotation. The value of the annotation must be enclosed in double quotes if there are spaces. You can use any annotation property you want here, and include as many as you want! For now, we'll start with two:

                            +
                            robot annotate --input animals.owl \
                            +  --annotation dc11:title "Animal Ontology" \
                            +  --annotation dc11:description "An ontology about animals" \
                            +  --output animals.owl
                            +
                            +

                            --annotation adds these as strings, but remember that an annotation can also point to an link or IRI. We want our license to be a link, so we'll use --link-annotation instead to add that:

                            +
                            robot annotate --input animals.owl \
                            +  --link-annotation dc:license https://creativecommons.org/licenses/by/4.0/ \
                            +  --output animals.owl
                            +
                            +

                            OBO Foundry recommends using Creative Commons for all licenses. We just gave our ontology the most permissive of these, CC-BY.

                            +

                            When you open animals.owl in Protégé again, you'll see these annotations added to the Active ontology tab. You can also click on the CC-BY link!

                            +
                            +

                            Merge

                            +

                            We've already learned how to include external ontologies as imports. Usually, for the released version of an ontology, the imports are merged in so that all contents are in one file.

                            +

                            Another reason you may want to merge two ontologies is if you're adding new terms to an ontology using template, like how we created new animal terms in animals2.tsv last time. We're going to demonstrate two methods of merging now. The first involves merging two (or more!) separate files and the second involves merging all imports into the current input ontology.

                            +

                            Merging Multiple Files

                            +

                            First, copy animals2.owl to animals-new.owl. In Windows, this command is copy animals2.owl animals-new.owl. For Docker and other Linux operating systems, this is cp animals2.owl animals-new.owl. Open animals-new.owl in Protégé and remove the import we added last time. This is done in the Imported ontologies section of the Active ontology tab. Just click the X on the right side of the imported animals ontology. Don't forget to save!

                            +

                            Continuing with the animals.owl file we created last week, now run the following command:

                            +
                            robot merge --input animals.owl --input animals-new.owl --output animals-full.owl
                            +
                            +

                            When you just import an external ontology into your ontology, you'll notice in the Protégé class hierarchy that all terms from the external ontology are a less-bold text than internal terms. This can be seen when you open animals2.owl, where we imported animals.owl. This is simply Protégé's way of telling us that these terms are not part of your current ontology. Now that we've merged these two ontologies together, when you open animals-full.owl in Protégé, you'll see that all the terms are bold.

                            +

                            By default, the output ontology will get the ontology IRI of the first input ontology. We picked animals.owl as our first ontology here because this is the ontology that we're adding terms to, so we want our new output ontology to replace the original while keeping the same IRI. merge will also copy over all the ontology annotations from animals.owl (the first input) into the new file. The annotations from animals2.owl are ignored, but we'll talk more about this in our class session.

                            +

                            If we were editing an ontology in the wild, we'd probably now replace the original with this new file using cp or copy. For now, don't replace animals.owl because we'll need it for this next part.

                            +

                            IMPORTANT: Be very careful to check that the format is the same if you're replacing a file! Remember, you can always output OWL Functional syntax or another syntax by ending your output with .ofn, for example: --output animals-full.ofn.

                            +

                            Merging Imports

                            +

                            When we want to merge all our imports into our working ontology, we call this collapsing the import closure. Luckily (since we're lazy), you don't need to type out each of your imports as an input to do this.

                            +

                            We already have animals.owl imported into animals2.owl. Let's collapse the import closure:

                            +
                            robot merge --input animals2.owl --collapse-import-closure true --output animals-full-2.owl
                            +
                            +

                            Even though we gave this a different file name, if you open animals-full-2.owl in Protégé, you'll notice that it's exactly the same as animals-full.owl! This is because we merged the same files together, just in a slightly different way. This time, though, the ontology IRI is the one for animals2.owl, not animals.owl. That is because that was our first input file.

                            +
                            +

                            Reason

                            +

                            As we saw in the prepwork for Week 5, running a reasoner in Protégé creates an inferred class hierarchy. In the OBO Foundry, releases versions of ontologies usually have this inferred hierarchy asserted, so you see the full inferred hierarchy when you open the ontology without running the reasoner. ROBOT reason allows us to output a version of the ontology with these inferences asserted.

                            +

                            As we discussed, ELK and HermiT are the two main reasoners you'll be using. Instead of using our example ontologies (the asserted and inferred hierarchies for these will look exactly the same), we're going to use another ontology from the Ontologies 101 tutorial from week 5. Navigate back to that directory and then navigate to BDK14_exercises/basic-classification.

                            +

                            Like running the reasoner in Protégé, running reason does three things:

                            +
                              +
                            1. Check for inconsistency
                            2. +
                            3. Check for unsatisfiable classes
                            4. +
                            5. Assert the inferred class hierarchy
                            6. +
                            +

                            Remember, when we run the reasoner in Protégé, if the ontology is inconsistent, reason will fail. If there are unsatisfiable classes, these will be asserted as owl:Nothing. ROBOT will always fail in both cases, but has some tools to help us figure out why. Let's introduce an unsatifiable class into our test and see what happens.

                            +

                            First, let's make a copy of ubiq-ligase-complex.owl and call this new file unreasoned.owl (copy or cp).

                            +

                            Open unreasoned.owl in Protégé and follow the steps below. These are things we've covered in past exercises, but if you get stuck, please don't hesitate to reach out.

                            +
                              +
                            1. Find 'organelle' in the class hierarchy below 'cellular_component' (or just search for it by label)
                            2. +
                            3. Make 'organelle' disjoint with 'organelle part' (either use the class hierarchy or type it in the expression editor)
                            4. +
                            5. Find 'intracellular organelle part' below 'intracellular part' or 'organelle part' (or search for it by label)
                            6. +
                            7. Add 'organelle' as a parent class to 'intracellular organelle part' (remember that you only need to include the single quotes if the label has spaces)
                            8. +
                            +

                            Like we did in the Disjointness part of the Ontologies 101 tutorial, we've made 'intracellular organelle part' a subclass of two classes that should have no overlap based on the disjointness axiom. Save the ontology and return to your terminal. Now, we'll run reason. The default reasoner is ELK, but you can specify the reasoner you want to use with the --reasoner option. For now, we'll just use ELK.

                            +
                            robot reason --input unreasoned.owl --output unsatisfiable.owl
                            +
                            +

                            You'll notice that ROBOT printed an error message telling us that the term with the IRI http://purl.obolibrary.org/obo/GO_0044446 is unsatisfiable and ROBOT didn't create unsatisfiable.owl. This is ideal for automated pipelines where we don't want to be releasing unsatisfiable classes.

                            +

                            We can still use ROBOT to investigate the issue, though. It already gave us the IRI, but we can get more details using the --dump-unsatisfiable option. We won't provide an output this time because we know it won't succeed.

                            +
                            robot reason --input unreasoned.owl --dump-unsatisfiable unsatisfiable.owl
                            +
                            +

                            You can open unsatisfiable.owl in Protégé and see that 'intracellular organelle part' is not the only term included, even though it was the only unsatisfiable class. Like with the SLME method of extraction, all the terms used in unsatisfiable class or classes logic are included in this unsatisfiable module. We can then use Protégé to dig a little deeper in this small module. This is especially useful when working with large ontologies and/or the HermiT reasoner, which both can take quite some time. By extracting a smaller module, we can run the reasoner again in Protégé to get detailed explanations. In this case, we already know the problem, so we don't need to investigate any more.

                            +

                            Now let's reason over the original ubiq-ligase-complex.owl and see what happens:

                            +
                            robot reason --input ubiq-ligase-complex.owl --output reasoned.owl
                            +
                            +

                            If you just open reasoned.owl in Protégé, you won't really notice a different between this and the input file unless you do some digging. This takes us to our next command...

                            +
                            +

                            Diff

                            +

                            The diff command can be used to compare the axioms in two ontologies to see what has been added and what has been removed. While the diffs on GitHub are useful for seeing what changed, it can be really tough for a human to read the raw OWL formats. Using ROBOT, we can output these diffs in a few different formats (using the --format option):

                            +
                              +
                            • plain: plain text with just the added and removed axioms listed in OWL functional syntax (still tough for a human to read, but could be good for passing to other scripts)
                            • +
                            • pretty: similar to plain, but the IRIs are replaced with CURIEs and labels where available (still hard to read)
                            • +
                            • html: a nice, sharable HTML file with the diffs sorted by term
                            • +
                            • markdown: like the HTML diff, but in markdown for easy sharing on platforms like GitHub (perfect for pull requests!)
                            • +
                            +

                            We're going to generate an HTML diff of ubiq-ligase-complex.owl compared to the new reasoned.owl file to see what inferences have been asserted. diff takes a left ("original") and a right ("new") input to compare.

                            +
                            robot diff --left ubiq-ligase-complex.owl \
                            +  --right reasoned.owl \
                            +  --format html \
                            +  --output diff.html
                            +
                            +

                            Open diff.html in your browser side-by-side with reasoned.owl and you can see how the changes look in both.

                            +

                            Homework question: Running reason should assert inferences, yet there are some removed axioms in our diff. Why do you think these axioms were removed?

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/robot-tutorial-qc/index.html b/tutorial/robot-tutorial-qc/index.html new file mode 100644 index 000000000..24749769d --- /dev/null +++ b/tutorial/robot-tutorial-qc/index.html @@ -0,0 +1,3967 @@ + + + + + + + + + + + + + + + + + + + + + + + + ROBOT Mini-Tutorial QC - Quality Control with report, verify and query - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            ROBOT Tutorial: Quality Control with ROBOT

                            +

                            In this tutorial you will learn how to set up your QC pipeline with ROBOT report, verify, validate-profile and reason.

                            +

                            Preparation

                            +
                              +
                            • You should know how to run ROBOT commands on your machine
                            • +
                            • You should have a basic understanding of OWL and reasoning
                            • +
                            +

                            Overview

                            +

                            Quality control is a very large concern in ontologies. For example, we want to make sure that our editors use the right annotation properties to attach metadata to terms (such as a date, or a label), or to make sure that our last edit did not accidentally introduce a logical error. In ROBOT, we have four commands that help us in particular to ensure the quality of our ontologies:

                            + +

                            In the following, we will learn about all of these and how they fit in the wider concerns of ontology quality control.

                            +

                            Download test ontology

                            +

                            Download example.owl, or get it via the command line:

                            +
                            curl https://raw.githubusercontent.com/OBOAcademy/obook/master/docs/tutorial/robot_tutorial_qc/example.owl > example.owl
                            +
                            +

                            Let us ensure we are using the same ROBOT version:

                            +
                            robot --version
                            +
                            +

                            We see:

                            +
                            ROBOT version 1.8.3
                            +
                            +

                            ROBOT validate-profile

                            +

                            ROBOT validate-profile: Ensures that your ontology is a syntactically valid OWL ontology. This is the absolute minimum check - some "violations" to OWL 2 DL validity cause the reasoner to behave in unexpected and wrong ways!

                            +
                            robot validate-profile --profile DL -i example.owl
                            +
                            +

                            Thankfully, our test ontology is in valid OWL DL:

                            +
                            OWL 2 DL Profile Report: [Ontology and imports closure in profile]
                            +
                            +

                            This check is overlooked by a lot of OWL Ontology developers despite its importance to ensure both a predictable behaviour of the reasoner and of parsing tools. See here for an example where an ontology was not in OWL DL profile, causing various problems for parsing and computation: https://github.com/Orphanet/ORDO/issues/32.

                            +

                            ROBOT report

                            +

                            Let us generate a simple report:

                            +
                            robot report -i example.owl -o report.html
                            +
                            +

                            ROBOT report will do two things:

                            +
                              +
                            • It will print out the number of errors (violations) and an indication that the report failed:
                            • +
                            +
                            Violations: 11
                            +-----------------
                            +ERROR:      5
                            +WARN:       4
                            +INFO:       2
                            +ERROR Report failed!
                            +
                            +
                              +
                            • And it will provide you with a report file, report.html
                            • +
                            +

                            Let us look at the file in a browser (simply double-click on the html file the way you would open a PDF). Your report should look similar to this:

                            +

                            +

                            While there are other formats you can export your report to, HTML is a great format which not only offers useful colour coding, but also allows us to click on the related classes and properties and, more importantly, the checks to find our what they mean (for an overview of all ROBOT report checks see here).

                            +

                            Exercise

                            +

                            We will leave it to the reader as an exercise to try and fix all the errors indicated by the report!

                            +

                            Advanced usage of ROBOT report

                            +

                            Customisation

                            +

                            While by far the most widely spread usage of ROBOT report is to check for OBO best practices, it is possible to customise the report by removing certain OBO ontology checks and adding custom ones.

                            +

                            Lets first create a simple profile.txt in our directory and add the following lines:

                            +
                            WARN    annotation_whitespace
                            +ERROR   missing_ontology_description
                            +ERROR   missing_definition
                            +ERROR   missing_ontology_license
                            +ERROR   missing_ontology_title
                            +ERROR   misused_obsolete_label
                            +ERROR   multiple_labels
                            +
                            +

                            Now we tell ROBOT to run the command using our custom profile rather than the default ROBOT profile:

                            +
                            robot report -i example.owl --profile profile.txt -o report.html
                            +
                            +

                            The resulting report looks different:

                            +

                            +

                            In particular, some checks like missing_superclass which we did not care about for our use case are not shown at all anymore, and others, such as missing_definition are now considered ERROR (red) rather than WARN (warning, yellow) because for our use case, we have decided that definitions on terms are mandatory.

                            +

                            ROBOT verify

                            +

                            ROBOT verify allows us to define QC checks for undesirable situation (we sometimes call this "anti-pattern") using the SPARQL query language. The idea is simple: we write a SPARQL query for the thing we do not want. For example, we can use SPARQL to look for classes with more than one label. Then, we feed this query to ROBOT verify. ROBOT verify than ensures that the query has no answers, i.e the thing we do not want actually does not happen:

                            +
                            PREFIX owl: <http://www.w3.org/2002/07/owl#>
                            +PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +
                            +SELECT DISTINCT ?entity ?property ?value WHERE {
                            +  VALUES ?property { rdfs:label }
                            +  ?entity ?property ?value .
                            +  ?entity ?property ?value2 .
                            +  FILTER (?value != ?value2) .
                            +  FILTER NOT EXISTS { ?entity owl:deprecated true }
                            +  FILTER (!isBlank(?entity))
                            +}
                            +ORDER BY ?entity
                            +
                            +

                            Let us safe this query now in our working directory as bad_labels.sparql and run the following:

                            +
                            robot verify -i example.owl --queries bad_labels.sparql
                            +
                            +

                            ROBOT will output this to tell us which terms have violations:

                            +
                            FAIL Rule bad_labels.sparql: 2 violation(s)
                            +entity,property,value
                            +http://purl.obolibrary.org/obo/OBI_0002986,http://www.w3.org/2000/01/rdf-schema#label,CT scan
                            +http://purl.obolibrary.org/obo/OBI_0002986,http://www.w3.org/2000/01/rdf-schema#label,computed tomography imaging assay
                            +
                            +

                            Now the cool thing with verify is that we can basically feed SPARQL SELECT queries in whatever shape or form we want. To make error messages more readable for curators, you can even encode a proper error message:

                            +
                            PREFIX owl: <http://www.w3.org/2002/07/owl#>
                            +PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +
                            +SELECT DISTINCT ?error WHERE {
                            +  VALUES ?property { rdfs:label }
                            +  ?entity ?property ?value .
                            +  ?entity ?property ?value2 .
                            +  FILTER (?value != ?value2) .
                            +  FILTER NOT EXISTS { ?entity owl:deprecated true }
                            +  FILTER (!isBlank(?entity))
                            +  BIND(CONCAT("Entity ",STR(?entity)," uses two different labels: (1) ",STR(?value)," and (2) ",STR(?value2)) as ?error)
                            +}
                            +ORDER BY ?entity
                            +
                            +

                            This time, when running the query, we get:

                            +
                            FAIL Rule bad_labels.sparql: 2 violation(s)
                            +error
                            +Entity http://purl.obolibrary.org/obo/OBI_0002986 uses two different labels: (1) CT scan and (2) computed tomography imaging assay
                            +Entity http://purl.obolibrary.org/obo/OBI_0002986 uses two different labels: (1) computed tomography imaging assay and (2) CT scan
                            +
                            +

                            Which appears much more readable! You can tweak the output in whatever way you think is best. Two things about this:

                            +
                              +
                            • You cannot do this very well with ROBOT report: despite the ability to include custom queries, all queries must start with:
                            • +
                            +
                            SELECT DISTINCT ?entity ?property ?value WHERE
                            +
                            +

                            This is one of the reasons we still like using ROBOT verify, despite the fact that ROBOT report can also be extended with custom checks.

                            +
                              +
                            • Another cool thing about verify is that you can add the --output-dir results/ parameter to your query to get ROBOT to export the query results as TSV files. This can be useful if you have many QC queries and need to work with them independently of the checks.
                            • +
                            • Note that ROBOT notices two errors despite there being only 1, technically speaking. This is because the WHERE clause in SPARQL which twice (one where label 1 is first, one where label 2 is first). You can be smart about it and get around it by sorting your results before binding them, but for most use cases this hack is hardly worth the effort.
                            • +
                            +

                            ROBOT reason

                            +

                            This is not an exhaustive tutorial for ROBOT reason (for more, see here). We only want to get across two checks that we feel absolutely every ontology developer should know about.

                            +

                            The "distinct scope" assumption

                            +

                            In most cases, we do not want to define the exact same concept twice. There are some exceptions, for example when we align ontologies such as CHEBI and GO which may have overlapping scope, but in 99.9% of the cases, having the reasoner infer that two classes are the same points to a mistake in the axiomatisation. Let us check that we do not have any such unintended equivalencies in our ontology:

                            +
                            robot reason -i example.owl --equivalent-classes-allowed none
                            +
                            +

                            ROBOT will note that:

                            +
                            ERROR No equivalent class axioms are allowed
                            +ERROR Equivalence: <http://purl.obolibrary.org/obo/TEST_0600047> == <http://purl.obolibrary.org/obo/OBI_0600047>
                            +
                            +

                            Further investigation in Protege will reveal that TEST_0600047 and OBI_0600047 are subclasses of each other, which causes the reasoner to infer that they are equivalent.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/robot_report/Makefile b/tutorial/robot_report/Makefile new file mode 100644 index 000000000..dda9802fc --- /dev/null +++ b/tutorial/robot_report/Makefile @@ -0,0 +1,45 @@ +### Setup + +# We keep all our intermediate files in a build directory +# These never get committed to GitHub +build: + mkdir -p build + + +### Hints + +# $@ = target (output) +# $< = first dependency +# $^ = list of all dependencies (does not include order-only) +# % = wildcard +# $(VAR) = reference a variable named VAR +# | = separate order-only prereqs in dependency list +# These do not cause a target to get rebuilt if the timestamp changes, it basically only checks that it exists +# ... so using order-only prereqs is perfect when you have a directory as a dependency, for example 'build' + + +### Main Process + +all: my_ontology.owl +test: build/report.html + + +# 1. Create modules in the build/ directory from the templates in the templates/ directory +# We have two templates, 'templates/disease.tsv' and 'templates/assay.tsv' but we should try and use patterns so we don't repeat ourselves! +# The outputs should be build/disease_module.owl and build/assay_module.owl + + +# 2. Create one command by chaining together ROBOT commands to do the following: +# 1. Merge the modules together into one file (output: build/merged.owl) +# Hint: $(eval INPUTS := $(foreach I,$^,--input $(I))) +# 2. Reason over the file + + +# 3. Annotate the file with an ontology IRI, a version IRI, and the following annotations (final output: my_ontology.owl): +# - dc11:title +# - dc11:description +# - dc:license + + +# 4. Create 'build/report.html' by running ROBOT report over the finalized file +# This is our test to make sure everything looks good before we release \ No newline at end of file diff --git a/tutorial/robot_report/complete.make b/tutorial/robot_report/complete.make new file mode 100644 index 000000000..a9d704676 --- /dev/null +++ b/tutorial/robot_report/complete.make @@ -0,0 +1,51 @@ +### Setup + +# We keep all our intermediate files in a build directory +# These never get committed to GitHub +build: + mkdir -p build + + +### Main Process + +all: my_ontology.owl +test: build/report.html + +# 1. Create modules in the build/ directory from the templates in the templates/ directory +# We have two templates, 'templates/disease.tsv' and 'templates/assay.tsv' but we should try and use patterns so we don't repeat ourselves! +# The outputs should be build/disease_module.owl and build/assay_module.owl + +MODULES = build/disease_module.owl build/assay_module.owl + +build/%_module.owl: templates/%.tsv | build + robot template --template $< --output $@ + + +# 2. Create one command by chaining together ROBOT commands to do the following (output: build/my_ontology.owl): +# 1. Merge the modules together into one file +# 2. Reason over the file + +build/my_ontology.owl: $(MODULES) + $(eval INPUTS := $(foreach I,$^,--input $(I))) + robot merge $(INPUTS) reason --output $@ + + +# 3. Annotate the file with an ontology IRI, a version IRI, and the following annotations (final output: my_ontology.owl): +# - dc11:title +# - dc11:description +# - dc:license + +my_ontology.owl: build/my_ontology.owl + robot annotate --input $< \ + --ontology-iri http://example.com/my_ontology.owl \ + --version-iri http://example.com/my_ontology/2021-06-03/my_ontology.owl \ + --annotation dc11:title "My Ontology" \ + --annotation dc11:description "An example ontology generated using Make" \ + --link-annotation dc:license https://creativecommons.org/licenses/by/4.0/ \ + --output $@ + + +# 5. Create 'build/report.html' by running ROBOT report over the finalized file +# This is our test to make sure everything looks good before we release +build/report.html: my_ontology.owl + robot report --input $< --labels true --output $@ diff --git a/tutorial/robot_report/templates/assay.tsv b/tutorial/robot_report/templates/assay.tsv new file mode 100644 index 000000000..494601718 --- /dev/null +++ b/tutorial/robot_report/templates/assay.tsv @@ -0,0 +1,5 @@ +ID Label Parent Comment +ID LABEL C % A rdfs:comment +EX:0000006 assay +EX:0000007 electrocardiogram assay An assay that records electrical signals in the heart. +EX:0000008 CT scan assay A series of X-rays that create cross-sectional images of bones, blood vessels, and soft tissues. diff --git a/tutorial/robot_report/templates/disease.tsv b/tutorial/robot_report/templates/disease.tsv new file mode 100644 index 000000000..3d99e9bd7 --- /dev/null +++ b/tutorial/robot_report/templates/disease.tsv @@ -0,0 +1,7 @@ +ID Label Parent Comment +ID LABEL C % A rdfs:comment +EX:0000001 disease +EX:0000002 heart disease disease A type of disease that affects the heart. +EX:0000003 respiratory disease disease A type of disease that affects the respiratory system. +EX:0000004 coronary heart disease heart disease A type of heart disease where blood flow is restricted to the heart by plaque build-up in the arteries. +EX:0000005 emphysema respiratory disease A type of respiratory disease where the air sacs in the lungs are damaged. diff --git a/tutorial/robot_tutorial_1/animals.tsv b/tutorial/robot_tutorial_1/animals.tsv new file mode 100644 index 000000000..05475697e --- /dev/null +++ b/tutorial/robot_tutorial_1/animals.tsv @@ -0,0 +1,5 @@ +CURIE Label Parent Comment +ID LABEL SC % A rdfs:comment +obo:0000001 animal Any animal in the world. +obo:0000002 canine animal A member of the genus Canis. +obo:0000003 feline animal A member of the genus Felis. diff --git a/tutorial/robot_tutorial_1/animals2.tsv b/tutorial/robot_tutorial_1/animals2.tsv new file mode 100644 index 000000000..ba5fa65ac --- /dev/null +++ b/tutorial/robot_tutorial_1/animals2.tsv @@ -0,0 +1,4 @@ +CURIE Label Parent Comment +ID LABEL SC % A rdfs:comment +obo:0000004 dog canine A member of the subspecies Canis lupus familiaris. +obo:0000005 cat feline A member of the species Felis catus. diff --git a/tutorial/robot_tutorial_qc/example.owl b/tutorial/robot_tutorial_qc/example.owl new file mode 100644 index 000000000..ec9dcc76a --- /dev/null +++ b/tutorial/robot_tutorial_qc/example.owl @@ -0,0 +1,251 @@ + + + + C-Path ROBOT Report Example Ontology + https://creativecommons.org/licenses/by/4.0/ + + + + + + + + + + + + + A phrase describing how a term should be used and/or a citation to a work which uses it. May also include other kinds of examples that facilitate immediate understanding, such as widely know prototypes or instances of a class, or cases where a relation is said to hold. + GROUP:OBI:<http://purl.obolibrary.org/obo/obi> + + example of usage + + + + + + + + The official definition, explaining the meaning of a class or property. Shall be Aristotelian, formalized and normalized. Can be augmented with colloquial definitions. + GROUP:OBI:<http://purl.obolibrary.org/obo/obi> + + definition + + + + + + + + An alternative name for a class or property which means the same thing as the preferred name (semantically equivalent) + GROUP:OBI:<http://purl.obolibrary.org/obo/obi> + + alternative term + + + + + + + + Formal citation, e.g. identifier in external database to indicate / attribute source(s) for the definition. Free text indicate / attribute source(s) for the definition. EXAMPLE: Author Name, URI, MeSH Term C04, PUBMED ID, Wiki uri on 31.01.2007 + Discussion on obo-discuss mailing-list, see http://bit.ly/hgm99w + GROUP:OBI:<http://purl.obolibrary.org/obo/obi> + + definition source + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label + + + + + + + + + + + + + Assay the wavelength of light emitted by excited Neon atoms. Count of geese flying over a house. + A planned process with the objective to produce information about the material entity that is the evaluant, by physically examining it or its proxies. + measuring + scientific observation + OBI branch derived + assay + + + + + + + + + An assay that produces a picture of an entity. + OBI branch derived + imaging assay + + + + + + + + + Illumina (Solexa) sequencing is an example of DNA sequencing + A sequencing assay which determines information on the sequence of a DNA molecule. + nucleotide sequencing + url:https://en.wikipedia.org/wiki/DNA_sequencing + DNA sequencing assay + + + + + + + + obsolete MHC multimer staining assay + + + + + + + + + An assay that determines the sequence of an RNA molecule. + nucleotide sequencing + Bjoern Peters + RNA sequencing assay + + + + + + + + obsolete cell bound MHC direct binding assay + true + + + + + + + + + Lung, liver, and spleen tissue samples were collected from female BALB/c mice and fixed in 100% formalin solution, embedded in paraffin, sectioned, and stained with hematoxylin and eosin. The stained samples were examined for signs of pathological changes under light microscopy. + An imaging assay that utilizes a microscope to magnify features of the visualized material of interest that are not visible to naked eye. + PMID:21685355 + microscopy assay + + + + + + + + + An imaging assay in which nuclear magnetic resonance is used to produce information about the interior structure and composition of an input material entity. + MRI + url:https://en.wikipedia.org/wiki/Magnetic_resonance_imaging + magnetic resonance imaging assay + + + + + + + + + An imaging assay that uses a series of X-ray images to produce information about the interior structure and composition of an input material entity. + CAT scan + computed tomography scan + url:https://www.mayoclinic.org/tests-procedures/ct-scan/about/pac-20393675 + CT scan + computed tomography imaging assay + + + + + + + + + + The use of the Sanger method of DNA sequencing to determine the order of the nucleotides in a DNA template + An assay the uses chemical or biochemical means to infer the sequence of a biomaterial + OBI branch derived + sequencing assay + + + + + + + + sequencing assay test + + + + + + + diff --git a/tutorial/setting-up-project-odk/index.html b/tutorial/setting-up-project-odk/index.html new file mode 100644 index 000000000..f166c69fd --- /dev/null +++ b/tutorial/setting-up-project-odk/index.html @@ -0,0 +1,4006 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Getting started with your own repo - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Tutorial: How to get started with your own ODK-style repository

                            +
                              +
                            1. Preparation: Installing docker, installing ODK and setting memory. Follow the steps here.
                            2. +
                            3. Creating your first ontology repository
                            4. +
                            +

                            The tutorial uses example tailored for users of UNIX systems, like Mac and Linux. +Users of Windows generally have analogous steps - wherever we talk about an sh file in the following +there exists a corresponding bat file that can be run in the windows powershell, or CMD.

                            +

                            Prerequisites

                            +

                            You have:

                            +
                              +
                            • A Github account
                            • +
                            • Completed the "Preparation" steps above
                            • +
                            +

                            Video

                            +

                            A recording of a demo of creating a ODK-repo is available here

                            +

                            Your first repository

                            +
                              +
                            1. Create temporary directory to get started
                            2. +
                            +

                            On your machine, create a new folder somewhere:

                            +
                            cd ~
                            +mkdir odk_tutorial
                            +cd odk_tutorial
                            +
                            +
                              +
                            1. Download the seed-my-repo wrapper script
                            2. +
                            +

                            Now download the seed-my-repo wrapper script from the ODK GitHub repository. A detailed explanation of how to do that can be found here. For simplicity, we just use wget here to download the seed-my-repo file, but you can do it manually:

                            +
                            wget https://raw.githubusercontent.com/INCATools/ontology-development-kit/master/seed-via-docker.sh
                            +
                            +
                              +
                            1. Download a basic config to start from and start building your own
                            2. +
                            +

                            The last ingredient we need is an ODK config file. While you can, in theory, create an empty repo entirely without a config file (one will be generated for you), we recommend to just start right with one. You can find many examples of configs here. For the sake of this tutorial, we will start with a simple config:

                            +
                            id: cato
                            +title: "Cat Anatomy Ontology"
                            +github_org: obophenotype
                            +git_main_branch: main
                            +repo: cat_anatomy_ontology
                            +release_artefacts:
                            +  - base
                            +  - full
                            +  - simple
                            +primary_release: full
                            +export_formats:
                            +  - owl
                            +  - obo
                            +  - json
                            +import_group:
                            +  products:
                            +    - id: ro
                            +    - id: pato
                            +    - id: omo
                            +robot_java_args: "-Xmx8G"
                            +robot_report:
                            +  use_labels: TRUE
                            +  fail_on: ERROR
                            +  custom_profile: TRUE
                            +  report_on:
                            +    - edit
                            +
                            +

                            Safe this config file as in your temporary directory, e.g. ~/odk_tutorial/cato-odk.yaml.

                            +

                            Most of your work managing your ODK in the future will involve editing this file. There are dozens of cool options that do magical things in there. For now, lets focus on the most essential:

                            +

                            General config:

                            +
                            id: cato
                            +title: "Cat Anatomy Ontology"
                            +
                            +

                            The id is essential, as it will determine how files will be named, which default term IDs to assume, and many more. It should be a lowercase string which is, by convention at least 4 characters long - 5 is not unheard of. The title field is used to generate various default values in the repository, like the README and others. There are other fields, like description, but let's start minimal for now. A full list of elements can be found in this schema:

                            +

                            https://github.com/INCATools/ontology-development-kit/blob/master/schema/project-schema.json

                            +

                            Git config:

                            +
                            github_org: obophenotype
                            +git_main_branch: main
                            +repo: cat_anatomy_ontology
                            +
                            +

                            The github_org (the GitHub or GitLab organisation) and the repo (repository name) will be used for some basic config of the git repo. Enter your own github_org here rather than obophenotype. Your default github_org is your GitHub username. If you are not creating a new repo, but working on a repo that predates renaming the GitHub main branch from master to main, you may want to set the git_main_branch as well.

                            +

                            Pipeline configuration

                            +
                            release_artefacts:
                            +  - base
                            +  - full
                            +  - simple
                            +primary_release: full
                            +export_formats:
                            +  - owl
                            +  - obo
                            +  - json
                            +
                            +

                            With this configuration, we tell the ODK that we wish to automatically generate the base, full and simple release files for our ontology. We also say that we want the primary_release to be the full release (which is also the default). The primary release will be materialised as cato.owl, and is what most users of your ontology will interact with. More information and what these are can be found here. We always want to create a base, i.e. the release variant that contains all the axioms that belong to the ontology, and none of the imported ones, but we do not want to make it the primary_release, because it will be unclassified and missing a lot of the important inferences.

                            +

                            We also configure export products: we always want to export to OWL (owl), but we can also chose to export to OBO (obo) format and OBOGraphs JSON (json).

                            +

                            Imports config:

                            +
                            import_group:
                            +  products:
                            +    - id: ro
                            +    - id: pato
                            +    - id: omo
                            +
                            +

                            This is a central part of the ODK, and the section of the config file you will interact with the most. Please see here for details. What we are asking the ODK here, in essence, to set us up for dynamically importing from the Relation Ontology (RO), the Phenotype And Trait Ontology (PATO) and the OBO Metadata Ontology (OMO).

                            +

                            Memory management:

                            +
                            robot_java_args: '-Xmx8G'
                            +
                            +

                            Here we say that we allow ROBOT to consume up to 8GB of memory. Make sure that your docker is set up to permit at least ~20% more memory than that, i.e. 9GB or 10GB, otherwise, some cryptic Docker errors may come up.

                            +

                            ROBOT Report:

                            +
                            robot_report:
                            +  use_labels: TRUE
                            +  fail_on: ERROR
                            +  report_on:
                            +    - edit
                            +
                            +
                              +
                            • use_labels: allows switching labels on and off in the ROBOT report
                            • +
                            • fail_on: the report will fail if there is an ERROR-level violation
                            • +
                            • report_on: specify which files to run the report over.
                            • +
                            +

                            With this configuration, we tell ODK we want to run a report to check the quality of the ontology. Check here the complete list of report queries.

                            +

                            Generate the repo

                            +

                            Run the following:

                            +
                            cd ~/odk_tutorial
                            +sh seed-via-docker.sh -c -C cato-odk.yaml
                            +
                            +

                            This will create a basic layout of your repo under target/cato/*

                            +

                            Note: after this run, you wont need cato-odk.yaml anymore as it will have been added to your ontology repo, which we will see later.

                            +

                            Publish on GitHub

                            +

                            You can now move the target/cato directory to a more suitable location. For the sake of this tutorial we will move it to the Home directory.

                            +
                            mv target/cato ~/
                            +
                            +

                            Using GitHub Desktop

                            +

                            If you use GitHub Desktop, you can now simply add this repo by selecting File -> Add local repository and select the directory you moved the repo to (as an aside, you should really have a nice workspace directory like ~/git or ~/ws or some such to organise your projects).

                            +

                            Then click Publish the repository on

                            +

                            Using the Command Line

                            +

                            Follow the instructions you see on the Terminal (they are printed after your seed-my-repo run).

                            +

                            Finish!

                            +

                            Congratulations, you have successfully jump-started your very own ODK repository and can start developing.

                            +

                            Next steps:

                            +
                              +
                            1. Start editing ~/cato/src/ontology/cato-edit.owl using Protege.
                            2. +
                            3. Run a release
                            4. +
                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/sparql-report-odk/index.html b/tutorial/sparql-report-odk/index.html new file mode 100644 index 000000000..22512a25d --- /dev/null +++ b/tutorial/sparql-report-odk/index.html @@ -0,0 +1,3747 @@ + + + + + + + + + + + + + + + + + + + + + + + + ODK - Adding SPARQL table reports - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Generating SPARQL table reports with ODK

                            +

                            This tutorial will teach you how to create report tables using SPARQL and the ODK. Report tables are TSV files that can be viewed by programs such as Excel or Google Sheets.

                            +

                            For a tutorial on how to generate reports independent of ODK please see here.

                            +

                            Preparation

                            + +

                            Tutorial

                            +

                            Adding a configuration to the ODK YAML file:

                            +
                            robot_report:
                            +  custom_sparql_exports:
                            +    - basic-report
                            +    - my-cat-report
                            +
                            +

                            This will tell the ODK that you no longer wish to generate the ODK default reports (synonyms, xrefs, etc), but instead:

                            +
                              +
                            1. One of the custom reports (basic-report)
                            2. +
                            3. and a new custom report, called my-cat-report.
                            4. +
                            +

                            Now, we can apply these changes as usual:

                            +
                            sh run.sh make update_repo
                            +
                            +

                            Adding the actual table report

                            +

                            Similar to our ROBOT tutorial on queries, let us now add a simple table report for the terms and labels in our ontology. To do that, let us safe the following file in our src/sparql directory (standard ODK setup), i.e. src/sparql/my-cat-report.sparql (you must use the same name as the one you speciefied in your ODK yaml file above):

                            +
                            PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +PREFIX owl: <http://www.w3.org/2002/07/owl#>
                            +
                            +SELECT ?term ?property ?value
                            +WHERE {
                            +  ?term a owl:Class ;
                            +  rdfs:label ?value .
                            +}
                            +
                            +

                            Now, let's generate our report (you have to be, as always, in src/ontology/):

                            +
                            sh run.sh make custom_reports
                            +
                            +

                            This will generate all custom reports you have configured in one go and save them in the src/ontology/reports directory. reports/my-cat-report.tsv looks probably something like this for you:

                            +
                            ?term   ?property   ?value
                            +<http://purl.obolibrary.org/obo/CATO_0000000>       "root node"@en
                            +...
                            +
                            +

                            That is all there is. You can configure as many reports as you want, and they will all be generated with the custom_reports command above, or as part of your ontology releases.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/sparql-report-robot/index.html b/tutorial/sparql-report-robot/index.html new file mode 100644 index 000000000..3fea33ee6 --- /dev/null +++ b/tutorial/sparql-report-robot/index.html @@ -0,0 +1,3738 @@ + + + + + + + + + + + + + + + + + + + + + + + + ROBOT - Generating SPARQL table reports - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            + + + + + + + + + + + + + +

                            Generating SPARQL table reports with ROBOT

                            +

                            Preparation

                            +
                              +
                            • You should be able to run ROBOT.
                            • +
                            +

                            Overview:

                            +

                            Creating table outputs from your ontology helps with many issues, for example during ontology curation (it is often easier to look at tables of related ontology terms rather than a hierarchy), for data aggregation (you want to know how many synonyms there are, and which) and simply to share "a list of all terms with labels". There are two major tools to help here:

                            +
                              +
                            • ROBOT export: Exporting standardised tables for typical use cases, like labels, definitions and similar. For details, please look at the documentation which should provide all the information for producing table reports.
                            • +
                            • ROBOT query: Generating reports using SPARQL. This is the focus of the tutorial here.
                            • +
                            +

                            Download test ontology

                            +

                            Download example.owl, or get it via the command line:

                            +
                            curl https://raw.githubusercontent.com/OBOAcademy/obook/master/docs/tutorial/robot_tutorial_qc/example.owl > example.owl
                            +
                            +

                            Let us ensure we are using the same ROBOT version:

                            +
                            robot --version
                            +
                            +

                            We see:

                            +
                            ROBOT version 1.8.3
                            +
                            +

                            Generating a simple report

                            +

                            Very frequently, we wish need to create summary tables (for a more detailed motivation see here).

                            +

                            Here, lets generate a simple report table by specifying a query:

                            +
                            PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +
                            +SELECT ?term ?property ?value
                            +WHERE {
                            +  ?term rdfs:label ?value .
                            +}
                            +
                            +

                            Let us safe the query as labels.sparql in our working directory.

                            +

                            Let's now generate the report:

                            +
                            robot query -i example.owl --query labels.sparql labels.tsv
                            +
                            +

                            When looking at labels.tsv (in a text editor, or Excel, or whatever table editor you prefer), we notice that some properties are included in our list and decide to change that by restricting the results to classes:

                            +
                            PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +PREFIX owl: <http://www.w3.org/2002/07/owl#>
                            +
                            +SELECT ?term ?property ?value
                            +WHERE {
                            +  ?term a owl:Class ;
                            +  rdfs:label ?value .
                            +}
                            +
                            +

                            Now, when running the robot query command again, we see only the terms we want.

                            +

                            Note that you could have achieved all this with a simple ROBOT export command. However, there are many cool ways you can tweak your reports when you learn how to build them manually during SPARQL. Your only limit is essentially SPARQL itself, which gives you access too most things in your ontology, aside from perhaps complex logical axioms.

                            + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/sparql/index.html b/tutorial/sparql/index.html new file mode 100644 index 000000000..5f56238d3 --- /dev/null +++ b/tutorial/sparql/index.html @@ -0,0 +1,3885 @@ + + + + + + + + + + + + + + + + + + + + + + + + Basic SPARQL for OBO Engineers - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + + + + + +
                            +
                            + + + + + + + + + + + + + +

                            Basic SPARQL for OBO Engineers

                            +

                            In this tutorial we introduce SPARQL, with a particular spin on how we use it across OBO ontologies. Following this tutorial should give you a sense of how we use SPARQL across OBO, without going too much into technical details. You can find concrete tutorials on how to generate reports or QC checks with ROBOT and ODK towards the end of this page.

                            +

                            Preparation

                            + + + +

                            SPARQL tools for OBO Engineers

                            +
                              +
                            • RENCI Ubergraph Endpoint: Many key OBO ontologies are loaded here with lots of materialised inferences (docs).
                            • +
                            • Ontobee SPARQL endpoint: Useful to run queries across all OBO Foundry ontologies.
                            • +
                            • Yasgui: Yasgui is a simple and beautiful front-end for SPARQL endpoints which can be used not only to query, but also to share queries with others. For example this simple SPARQL query runs across the RENCI Ubergraph Endpoint.
                            • +
                            • GTF: A UI that allows one to run SPARQL queries on TTL files on the web, or upload them. Looks like its based on Yasgui, as it shares the same share functionality.
                            • +
                            • ROBOT query: ROBOT method to generate TSV reports from SPARQL queries, and applying data transformations (--update). ROBOT uses Jena internally to execute SPARQL queries.
                            • +
                            • ROBOT verify: ROBOT method to run SPARQL QC queries. If the query returns a result, the QC test fails.
                            • +
                            • ROBOT report: ROBOT report is a more powerful approach to running OBO QC queries. The default OBO report which ships with ROBOT can be customised by changing the error level, removing a test entirely and even extending the report to custom (SPARQL) checks. Robot report can generate beautiful HTML reports which are easy to read.
                            • +
                            +

                            SPARQL in the OBO-sphere

                            +

                            SPARQL has many uses in the OBO-sphere, but the following in particular:

                            +
                              +
                            1. Quality control checking
                            2. +
                            3. Creating summary tables for ontologies
                            4. +
                            5. Sophisticated data transformations in ontology pipelines
                            6. +
                            +

                            We will discuss each of these in the following and give examples. An informal discussion of SPARQL in OBO can be followed in video below.

                            + + +

                            Quality control checking

                            +

                            For us, ROBOT + SPARQL were a game changer for our quality control (QC) pipelines. This is how it works. First, we encode the error in the form of a SPARQL query (we sometimes call this "anti-pattern", i.e. an undesirable (anti-) representation). For example, the following check simply looks for entities that have more than one definition:

                            +
                            PREFIX obo: <http://purl.obolibrary.org/obo/>
                            +PREFIX owl: <http://www.w3.org/2002/07/owl#>
                            +
                            +SELECT DISTINCT ?entity ?property ?value WHERE {
                            +  VALUES ?property { obo:IAO_0000115
                            +                     obo:IAO_0000600 }
                            +  ?entity ?property ?value .
                            +  ?entity ?property ?value2 .
                            +  FILTER (?value != ?value2)
                            +  FILTER NOT EXISTS { ?entity owl:deprecated true }
                            +  FILTER (!isBlank(?entity))
                            +}
                            +ORDER BY ?entity
                            +
                            +

                            This is a typical workflow. Think of an ontology editor working on an ontology. Often, that curator notices that the same problem happens repeatedly and tell us, the Ontology Pipeline Developer, that they would like a check to prevent the error. We then capture the erroneous situation as a SPARQL query. Then, we add it to our ontology repository, and execute it with ROBOT report or ROBOT verify (see above) in our CI pipelines, usually based on GitHub actions or Travis. Note that the Ontology Development Kit provides a built-in framework for for such queries build on ROBOT verify and report.

                            +

                            Creating summary tables for ontologies

                            +

                            Many times, we need to create tabular reports of our ontologies to share with stakeholders or to help with internal reviews, e.g.:

                            +
                              +
                            • create lists of ontology terms with their definitions and labels
                            • +
                            • create summaries of ontologies, like aggregate statistics
                            • +
                            +

                            Sometimes using Yasgui, for example in conjunction with the RENCI Ubergraph Endpoint, is enough, but often, using ROBOT query is the better choice, especially if you want to make sure the right version of the ontology is used (Ubergraph occasionally is out of date).

                            +

                            Using ROBOT in conjunction with a Workflows Automation system like Github actions helps with generating up-to-date reports. Here is an example of a GitHub action that generates a few reports with ROBOT and pushes them back to the repository.

                            +

                            A note for Data Scientists

                            +

                            In many cases we are asked how to best "load an ontology" into a python notebook or similar. Very often the answer is that it is best to first extract the content of the ontology into a table form, and then load it using a CSV reader like pandas. In this scenario, the workflow for interacting with ontologies is:

                            +
                              +
                            1. Define the information you want in the form of a SPARQL query.
                            2. +
                            3. Extract the the information as a TSV table using ROBOT query.
                            4. +
                            5. Load the information into your notebook.
                            6. +
                            +

                            If combined with for example a Makefile, you can always ensure that the report generation process is fully reproducible as well.

                            +

                            Sophisticated data transformations in ontology pipelines

                            +

                            Lastly, we use ROBOT query to implement complex ontology transformation processes. For example the following complex query transforms related synonyms to exact synonyms if some complex condition is met:

                            +
                            prefix owl: <http://www.w3.org/2002/07/owl#>
                            +prefix oboInOwl: <http://www.geneontology.org/formats/oboInOwl#>
                            +prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
                            +
                            +DELETE {
                            +  ?term oboInOwl:hasRelatedSynonym ?related .
                            +  ?relax a owl:Axiom ;
                            +       owl:annotatedSource ?term ;
                            +       owl:annotatedProperty oboInOwl:hasRelatedSynonym ;
                            +       owl:annotatedTarget ?related ;
                            +       oboInOwl:hasDbXref ?xref2 .
                            +}
                            +
                            +INSERT {
                            +  ?relax a owl:Axiom ;
                            +       owl:annotatedSource ?term ;
                            +       owl:annotatedProperty oboInOwl:hasExactSynonym ;
                            +       owl:annotatedTarget ?related ;
                            +       oboInOwl:hasDbXref ?xref2 .
                            +}
                            +WHERE
                            +{
                            +  {
                            +    ?term oboInOwl:hasRelatedSynonym ?related ;
                            +      oboInOwl:hasExactSynonym ?exact ;
                            +      a owl:Class .
                            +      ?exax a owl:Axiom ;
                            +           owl:annotatedSource ?term ;
                            +           owl:annotatedProperty oboInOwl:hasExactSynonym ;
                            +           owl:annotatedTarget ?exact ;
                            +           oboInOwl:hasDbXref ?xref1 .
                            +      ?relax a owl:Axiom ;
                            +           owl:annotatedSource ?term ;
                            +           owl:annotatedProperty oboInOwl:hasRelatedSynonym ;
                            +           owl:annotatedTarget ?related ;
                            +           oboInOwl:hasDbXref ?xref2 .
                            +
                            +    FILTER (str(?related)=str(?exact))
                            +    FILTER (isIRI(?term) && regex(str(?term), "^http://purl.obolibrary.org/obo/MONDO_"))
                            +  }
                            +}
                            +
                            +

                            This can be a very useful tool for bulk editing the ontology, in particular where it is difficult or impossible to achieve the same using regular expressions or other forms of "replacement"-techniques. Here are some example queries we collected to do such mass operations in Mondo.

                            + + + + + + + + +
                            +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/sssom-toolkit/index.html b/tutorial/sssom-toolkit/index.html new file mode 100644 index 000000000..89d95de06 --- /dev/null +++ b/tutorial/sssom-toolkit/index.html @@ -0,0 +1,3608 @@ + + + + + + + + + + + + + + + + + + + + + + + + Introduction to the SSSOM Toolkit - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            + +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file diff --git a/tutorial/sssom-tutorial/index.html b/tutorial/sssom-tutorial/index.html new file mode 100644 index 000000000..19f489e69 --- /dev/null +++ b/tutorial/sssom-tutorial/index.html @@ -0,0 +1,3656 @@ + + + + + + + + + + + + + + + + + + + + + + + + Basic Tutorial - OBO Semantic Engineering Training + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                            + +
                            + + + + +
                            + + +
                            + +
                            + + + + + + +
                            +
                            + + + +
                            +
                            +
                            + + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            +
                            +
                            + + + +
                            + +
                            + + +
                            + +
                            + + + +
                            +
                            +
                            +
                            + + + + + + + + + + + \ No newline at end of file